> ## Documentation Index
> Fetch the complete documentation index at: https://docs.ulm.m1amdocs.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Update a user's status

> Changes the status of the Connect user specified by the userId number.
The updated user, including its properties and attributes, is returned in the response.



## OpenAPI

````yaml /portal/Amdocs_Media-ULM-Released-resolved.yaml put /user/{userId}/status
openapi: 3.0.1
info:
  title: Connect APIs
  description: >-
    The Connect/ULM APIs enables clients to manage all aspects against Connect's
    data entities that they are permitted to manage. The data entities supported
    include: (1) USER - a unique individual, (2) RUNTIME - endpoint to which
    services are delivered (e.g. mobile tablet, browser), (3) GROUP - a
    collection of user entities, (4) ACCOUNT - relationship between a USER and
    service provider, (5) SUBSCRIPTION - package of entitlements to a specific
    service, and (6) FEATURE - fine-grained entitlement that defines what a user
    can do for a particular service.


    The APIs offer endpoints for users to onboard, authenticate and manage their
    profile. Please review our OIDC APIs that can be accessed through an active
    web session within the application (i.e. any JavaScript running on the
    server itself) or through authorizing a client application through OIDC or
    OAuth 2.0.


    The majority of these APIs require a user context (session cookie or access
    token) to access their functionality.


    All of the APIs can be accessed via a organization specific domain that was
    provided to you during onboarding.
  version: Draft-GO
servers:
  - url: https://nxt-ulm-pdt.m1amdocs.io/platform/rest/v85
security:
  - cookieAuth: []
  - OIDC: []
tags:
  - name: Account
    description: ULM Account APIs enable standard CRUD operations on ULM account entities.
  - name: Authentication
    description: >-
      Connect authentication APIs open and close user sessions (user login and
      logout).
  - name: Group and Soft Profile
    description: >-
      Connect Group and Soft Profile APIs enable clients to perform group
      management and soft profile functions. A group is a collection of one or
      more Connect entities, typically a user entity. For example, a group can
      be a household that contains 4 users all within the same family. A Soft
      Profile User is a user that can be a minor user or guest user, and they
      are not required to sign up or subscribe to a service. For example, a Soft
      Profile User can be a minor that does not have an email and therefore can
      only access the services if the parent is first authenticated.
  - name: Process
    description: >-
      Connect Process APIs initiate process steps. Connect's library of
      processes include for example Onboarding with Email and Password. These
      processes are intended to provided an preset user journey that your UI can
      follow in steps. 


      A step can be an inital step, one of many subsequent steps, or a final
      step. Some processes may only require one step from start to end.
  - name: Runtime
    description: >-
      Connect Runtimes APIs enables retrieval of Devices that are used by Users
      to interact with ULM.
  - name: Subscription
    description: >-
      Connect Subscription APIs enable standard CRUD operations on a
      subscription entity.
  - name: User
    description: Connect User APIs enable standard CRUD operations on a user entity.
paths:
  /user/{userId}/status:
    put:
      tags:
        - User
      summary: Update a user's status
      description: >-
        Changes the status of the Connect user specified by the userId number.

        The updated user, including its properties and attributes, is returned
        in the response.
      operationId: updateUserStatusById
      parameters:
        - name: userId
          in: path
          description: The unique ID number of the user
          required: true
          style: simple
          explode: false
          schema:
            type: integer
            format: int64
          example: 808
      requestBody:
        description: The desired status of the ULM runtime
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/EntityStatusRequestDto'
        required: false
      responses:
        '200':
          description: OK - updated user's status
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UserResponseDto'
        '400':
          description: Invalid Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UserUpdateStatusResponse400'
        '401':
          description: Authorization Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Generic401Dto'
        '403':
          description: Authorization Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Generic403Dto'
        '404':
          description: Resource not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/User404OperationErrors'
components:
  schemas:
    EntityStatusRequestDto:
      title: EntityStatusDto
      required:
        - status
      type: object
      properties:
        status:
          $ref: '#/components/schemas/EntityStatus'
    UserResponseDto:
      type: object
      properties:
        id:
          type: integer
          description: The unique ID number of the Connect entity.
          format: int64
          example: 1
        avatarUrl:
          type: string
          description: The URL of the user’s avatar
          example: http://myavatar/johnsmith
        displayName:
          type: string
          description: The display name of the entity
          example: Entity display name
        status:
          $ref: '#/components/schemas/EntityStatus'
        type:
          $ref: '#/components/schemas/EntityType'
        credentialSet:
          type: boolean
          description: >-
            Whether or not the user currently has a password set. This field
            exists because the 'credential' field is not returned once set; this
            field allows to provide some information about the password
          example: true
        passcodeSet:
          type: boolean
          description: >-
            Whether or not the user currently has a passcode set. This field
            exists because the 'passcode' field is not returned once set; this
            field allows to provide some information about the passcode
          example: false
        pinSet:
          type: boolean
          description: >-
            Whether or not the user currently has a PIN set. This field exists
            because the 'pin' field is not returned once set; this field allows
            to provide some information about the passcode
          example: false
        locked:
          type: boolean
          description: >-
            Whether or not the user currently is locked user due to multiple
            invalid login attemptes
          example: false
        lockedUntil:
          type: number
          description: >-
            The time untill the user is locked due to multiple invalid login
            attemptes
          format: int64
          example: 1651180416000
        createdDate:
          type: number
          description: The entity’s creation date and time in UNIX Epoch time
          format: int64
          example: 1651180416000
        activatedDate:
          type: number
          description: The entity’s activation date and time, expressed in UNIX Epoch time
          format: int64
          example: 1651180416000
        deactivatedDate:
          type: number
          description: >-
            The entity’s deactivation date and time, expressed in UNIX Epoch
            time
          format: int64
          example: 1651180416000
        suspendedDate:
          type: number
          description: The entity’s suspension date and time, expressed in UNIX Epoch time
          format: int64
          example: 1651180416000
        updatedDate:
          type: number
          description: >-
            The most recent date and time that the entity was updated, expressed
            in UNIX Epoch time
          format: int64
          example: 1651180416000
        attributes:
          $ref: '#/components/schemas/UserAttributesResponseDto'
      description: The object that contains user properties and attributes.
    UserUpdateStatusResponse400:
      type: object
      properties:
        fieldErrors:
          type: array
          items:
            $ref: '#/components/schemas/UserUpdateStatus400FieldErrors'
        operationErrors:
          type: array
          items:
            $ref: '#/components/schemas/Generic400OperationErrorDto'
    Generic401Dto:
      type: object
      properties:
        operationError:
          deprecated: true
          allOf:
            - $ref: '#/components/schemas/OperationErrorDto'
        stackTrace:
          type: string
          description: Optional, returned only in debug mode.
        operationErrors:
          type: array
          items:
            $ref: '#/components/schemas/Generic401DtoOperationErrors'
      description: General Payload for Authentication Error.
    Generic403Dto:
      type: object
      properties:
        operationError:
          deprecated: true
          allOf:
            - $ref: '#/components/schemas/OperationErrorDto'
        stackTrace:
          type: string
          description: Optional, returned only in debug mode.
        operationErrors:
          type: array
          items:
            $ref: '#/components/schemas/Generic403DtoOperationErrors'
      description: General Payload for Authorization Error.
    User404OperationErrors:
      type: object
      properties:
        code:
          type: string
          enum:
            - user-not-found
        message:
          type: string
          example: >-
            The following resource was not found:
            com.uxpsystems.mint.framework.user.model.GenericUser[id:808]
    EntityStatus:
      type: string
      description: >-
        The status of the entity. Possible values include:

        * activating - The entity has been provisioned, but is not yet ready to
        be used or consumed.

        * activated - The entity is active, and the functionality to which it is
        tied is enabled.

        * suspended - The entity is temporarily deactivated, but can be
        reactivated in the future.

        * deactivated - The entity is permanently deactivated, and may be
        deleted from the system in the near future.

        * pending - The entity has been added but is not yet verified for use. 
        It may be linked to an existing entity in order to eventually replace
        the original entity.

        * unknown - This is a generic, catch all state for specific entities.


        Note: This  field is the current status in GET calls, and the desired
        status in PUT and POST calls.
      example: activated
      enum:
        - activating
        - activated
        - suspended
        - deactivated
        - pending
        - unknown
    EntityType:
      type: string
      description: A particular type of a given entity.
      example: com.uxpsystems.ulm.entity.RegularEntityType
    UserAttributesResponseDto:
      type: object
      properties:
        com.uxpsystems.mint.user.FamilyName:
          type: string
          description: User's last name.
        com.uxpsystems.mint.user.GivenName:
          type: string
          description: User's given name(s).
        com.uxpsystems.mint.user.Language:
          type: string
          description: User's locale preference.
          example: fr_CA, en
        domain:
          type: string
          description: >-
            It contains the domain used during onboarding, usually fetched from
            the HTTP "X-Forwarded-Host" header.
        preferredNotificationChannel:
          type: string
          description: >-
            References another attribute that contains the preferred
            notification channel.
        branding:
          type: string
          description: >-
            it contains an optional brand name that can be added to the user
            during onboarding.
        secret2FATotp:
          type: string
          description: Read-only obfuscated secret for 2FA TOTP.
        aliases:
          type: array
          description: Read-only non-verified authentication identifiers.
          items:
            $ref: '#/components/schemas/UserAliasDto'
        mobiles:
          type: array
          description: >-
            Read-only list of verified mobile phones numbers that can be used as
            authentication identifiers.
          items:
            $ref: '#/components/schemas/UserMobileDto'
        emails:
          type: array
          description: >-
            Read-only list of emails verified rmail addresses that can be used
            as  authentication identifiers.
          items:
            $ref: '#/components/schemas/UserEmailDto'
        socialConnections:
          type: array
          description: Read-only list of social service provider connections.
          items:
            $ref: '#/components/schemas/UserSocialConnectionDto'
      description: User Attributes
    UserUpdateStatus400FieldErrors:
      type: object
      properties:
        field:
          type: string
        code:
          type: string
          deprecated: true
        code_v2:
          type: string
          enum:
            - valid-status
        message:
          type: string
          example: Invalid entity status in request
        rejectedValue:
          type: string
          description: only available in test environment
          example: bad_status
    Generic400OperationErrorDto:
      title: Generic400OperationErrorDto
      required:
        - code
      type: object
      properties:
        code:
          type: string
          description: The business error code
          enum:
            - HTTP_MESSAGE_NOT_READABLE
            - HTTP_MEDIA_TYPE_NOT_SUPPORTED
            - TYPE_MISMATCH
        message:
          type: string
          description: The message that describes the error
          example: Bad user input
        type:
          type: string
          description: >-
            The exception class that caused the error, returned only in debug
            mode.
          deprecated: true
        authorities:
          type: array
          description: Returned only in debug mode.
          items:
            type: string
      description: The data model that contains the Operation Error response details.
    OperationErrorDto:
      title: OperationErrorDto
      required:
        - code
      type: object
      properties:
        code:
          type: string
          description: The business error code
        message:
          type: string
          description: The message that describes the error
          example: Bad user input
        type:
          type: string
          description: >-
            The exception class that caused the error, returned only in debug
            mode.
          deprecated: true
        authorities:
          type: array
          description: Returned only in debug mode.
          items:
            type: string
      description: The data model that contains the Operation Error response details.
    Generic401DtoOperationErrors:
      type: object
      properties:
        code:
          type: string
          enum:
            - authentication-required
        message:
          type: string
          example: Full Authentication Required
    Generic403DtoOperationErrors:
      type: object
      properties:
        code:
          type: string
          enum:
            - ACCESS_FORBIDDEN
            - security-challenge-failed
        message:
          type: string
          example: Access Denied
    UserAliasDto:
      type: object
      properties:
        id:
          type: string
          description: internal unique id
        alias:
          type: string
          description: alias value
      description: Alias Dto
    UserMobileDto:
      type: object
      properties:
        id:
          type: string
          description: internal unique id
        number:
          type: string
          description: phone number
        mfaoption:
          type: boolean
          description: flag that indicates that number is registered for MFA
      description: Mobile phone Dto
    UserEmailDto:
      type: object
      properties:
        id:
          type: string
          description: internal unique id
        email:
          type: string
          description: email address value
        mfaoption:
          type: boolean
          description: flag that indicates that email is registered for MFA
      description: Email Dto
    UserSocialConnectionDto:
      type: object
      properties:
        id:
          type: string
          description: internal unique id
        providerId:
          type: string
          description: id of the provider
          example: facebook, google
        socialId:
          type: boolean
          description: Provider specific unique id.
      description: Social Connection Dto
  securitySchemes:
    cookieAuth:
      type: apiKey
      name: JSESSIONID
      in: cookie
    OIDC:
      type: oauth2
      description: OAuth 2.0 Authentication
      flows:
        implicit:
          authorizationUrl: /oidc/authorize
          scopes:
            openid: >-
              Enables OIDC by requesting the ID Token. Without this scope, the
              request is merely OAuth 2.0
            profile: Requests the claims name, family_name, given_name, and picture
            email: Requests the claims email and email_verified
            phone: Requests the claims phone_number and phone_number_verified
            offline_access: Requests that a refresh token be issued.
            entitlements: Enables the "entitlements" claim.
        password:
          tokenUrl: /oidc/token
          scopes:
            openid: >-
              Enables OIDC by requesting the ID Token. Without this scope, the
              request is merely OAuth 2.0
            profile: Requests the claims name, family_name, given_name, and picture
            email: Requests the claims email and email_verified
            phone: Requests the claims phone_number and phone_number_verified
            entitlements: Enables the "entitlements" claim.
        clientCredentials:
          tokenUrl: /oidc/token
          scopes:
            openid: >-
              Enables OIDC by requesting the ID Token. Without this scope, the
              request is merely OAuth 2.0
            profile: Requests the claims name, family_name, given_name, and picture
            email: Requests the claims email and email_verified
            phone: Requests the claims phone_number and phone_number_verified
            entitlements: Enables the "entitlements" claim.
        authorizationCode:
          authorizationUrl: /oidc/authorize
          tokenUrl: /oidc/token
          scopes:
            openid: >-
              Enables OIDC by requesting the ID Token. Without this scope, the
              request is merely OAuth 2.0
            profile: Requests the claims name, family_name, given_name, and picture
            email: Requests the claims email and email_verified
            phone: Requests the claims phone_number and phone_number_verified
            offline_access: Requests that a refresh token be issued.
            entitlements: Enables the "entitlements" claim.

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.