User - Create Or Update

Creates or Updates a user.

PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/users/{userId}?api-version=2021-08-01
PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ApiManagement/service/{serviceName}/users/{userId}?notify={notify}&api-version=2021-08-01

URI Parameters

Name In Required Type Description
resourceGroupName
path True

string

The name of the resource group.

serviceName
path True

string

The name of the API Management service.

Regex pattern: ^[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?$

subscriptionId
path True

string

Subscription credentials which uniquely identify Microsoft Azure subscription. The subscription ID forms part of the URI for every service call.

userId
path True

string

User identifier. Must be unique in the current API Management service instance.

api-version
query True

string

Version of the API to be used with the client request.

notify
query

boolean

Send an Email notification to the User.

Request Header

Name Required Type Description
If-Match

string

ETag of the Entity. Not required when creating an entity, but required when updating an entity.

Request Body

Name Required Type Description
properties.email True

string

Email address. Must not be empty and must be unique within the service instance.

properties.firstName True

string

First name.

properties.lastName True

string

Last name.

properties.appType

AppType

Determines the type of application which send the create user request. Default is legacy portal.

properties.confirmation

Confirmation

Determines the type of confirmation e-mail that will be sent to the newly created user.

properties.identities

UserIdentityContract[]

Collection of user identities.

properties.note

string

Optional note about a user set by the administrator.

properties.password

string

User Password. If no value is provided, a default password is generated.

properties.state

UserState

Account state. Specifies whether the user is active or not. Blocked users are unable to sign into the developer portal or call any APIs of subscribed products. Default state is Active.

Responses

Name Type Description
200 OK

UserContract

User was successfully updated.

Headers

ETag: string

201 Created

UserContract

User was successfully created.

Headers

ETag: string

Other Status Codes

ErrorResponse

Error response describing why the operation failed.

Security

azure_auth

Azure Active Directory OAuth2 Flow.

Type: oauth2
Flow: implicit
Authorization URL: https://login.microsoftonline.com/common/oauth2/authorize

Scopes

Name Description
user_impersonation impersonate your user account

Examples

ApiManagementCreateUser

Sample request

PUT https://management.azure.com/subscriptions/subid/resourceGroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/5931a75ae4bbd512288c680b?api-version=2021-08-01

{
  "properties": {
    "firstName": "foo",
    "lastName": "bar",
    "email": "foobar@outlook.com",
    "confirmation": "signup"
  }
}

Sample response

{
  "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/5931a75ae4bbd512288c680b",
  "type": "Microsoft.ApiManagement/service/users",
  "name": "5931a75ae4bbd512288c680b",
  "properties": {
    "firstName": "foo",
    "lastName": "bar",
    "email": "foobar@outlook.com",
    "state": "active",
    "registrationDate": "2018-01-07T21:21:29.16Z",
    "groups": [],
    "identities": [
      {
        "provider": "Basic",
        "id": "foobar@outlook.com"
      }
    ]
  }
}
{
  "id": "/subscriptions/subid/resourcegroups/rg1/providers/Microsoft.ApiManagement/service/apimService1/users/5931a75ae4bbd512288c680b",
  "type": "Microsoft.ApiManagement/service/users",
  "name": "5931a75ae4bbd512288c680b",
  "properties": {
    "firstName": "foo",
    "lastName": "bar",
    "email": "foobar@outlook.com",
    "state": "active",
    "registrationDate": "2018-01-07T21:21:29.16Z",
    "groups": [],
    "identities": [
      {
        "provider": "Basic",
        "id": "foobar@outlook.com"
      }
    ]
  }
}

Definitions

Name Description
AppType

Determines the type of application which send the create user request. Default is legacy portal.

Confirmation

Determines the type of confirmation e-mail that will be sent to the newly created user.

ErrorFieldContract

Error Field contract.

ErrorResponse

Error Response.

GroupContractProperties

Group contract Properties.

GroupType

Group type.

UserContract

User details.

UserCreateParameters

User create details.

UserIdentityContract

User identity details.

UserState

Account state. Specifies whether the user is active or not. Blocked users are unable to sign into the developer portal or call any APIs of subscribed products. Default state is Active.

AppType

Determines the type of application which send the create user request. Default is legacy portal.

Name Type Description
developerPortal

string

User create request was sent by new developer portal.

portal

string

User create request was sent by legacy developer portal.

Confirmation

Determines the type of confirmation e-mail that will be sent to the newly created user.

Name Type Description
invite

string

Send an e-mail inviting the user to sign-up and complete registration.

signup

string

Send an e-mail to the user confirming they have successfully signed up.

ErrorFieldContract

Error Field contract.

Name Type Description
code

string

Property level error code.

message

string

Human-readable representation of property-level error.

target

string

Property name.

ErrorResponse

Error Response.

Name Type Description
error.code

string

Service-defined error code. This code serves as a sub-status for the HTTP error code specified in the response.

error.details

ErrorFieldContract[]

The list of invalid fields send in request, in case of validation error.

error.message

string

Human-readable representation of the error.

GroupContractProperties

Group contract Properties.

Name Type Description
builtIn

boolean

true if the group is one of the three system groups (Administrators, Developers, or Guests); otherwise false.

description

string

Group description. Can contain HTML formatting tags.

displayName

string

Group name.

externalId

string

For external groups, this property contains the id of the group from the external identity provider, e.g. for Azure Active Directory aad://<tenant>.onmicrosoft.com/groups/<group object id>; otherwise the value is null.

type

GroupType

Group type.

GroupType

Group type.

Name Type Description
custom

string

external

string

system

string

UserContract

User details.

Name Type Default value Description
id

string

Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}

name

string

The name of the resource

properties.email

string

Email address.

properties.firstName

string

First name.

properties.groups

GroupContractProperties[]

Collection of groups user is part of.

properties.identities

UserIdentityContract[]

Collection of user identities.

properties.lastName

string

Last name.

properties.note

string

Optional note about a user set by the administrator.

properties.registrationDate

string

Date of user registration. The date conforms to the following format: yyyy-MM-ddTHH:mm:ssZ as specified by the ISO 8601 standard.

properties.state

UserState

active

Account state. Specifies whether the user is active or not. Blocked users are unable to sign into the developer portal or call any APIs of subscribed products. Default state is Active.

type

string

The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"

UserCreateParameters

User create details.

Name Type Default value Description
properties.appType

AppType

Determines the type of application which send the create user request. Default is legacy portal.

properties.confirmation

Confirmation

Determines the type of confirmation e-mail that will be sent to the newly created user.

properties.email

string

Email address. Must not be empty and must be unique within the service instance.

properties.firstName

string

First name.

properties.identities

UserIdentityContract[]

Collection of user identities.

properties.lastName

string

Last name.

properties.note

string

Optional note about a user set by the administrator.

properties.password

string

User Password. If no value is provided, a default password is generated.

properties.state

UserState

active

Account state. Specifies whether the user is active or not. Blocked users are unable to sign into the developer portal or call any APIs of subscribed products. Default state is Active.

UserIdentityContract

User identity details.

Name Type Description
id

string

Identifier value within provider.

provider

string

Identity provider name.

UserState

Account state. Specifies whether the user is active or not. Blocked users are unable to sign into the developer portal or call any APIs of subscribed products. Default state is Active.

Name Type Description
active

string

User state is active.

blocked

string

User is blocked. Blocked users cannot authenticate at developer portal or call API.

deleted

string

User account is closed. All identities and related entities are removed.

pending

string

User account is pending. Requires identity confirmation before it can be made active.