次の方法で共有


user の作成

名前空間: microsoft.graph

重要

Microsoft Graph の /beta バージョンの API は変更される可能性があります。 実稼働アプリケーションでこれらの API を使用することは、サポートされていません。 v1.0 で API を使用できるかどうかを確認するには、Version セレクターを使用します。

新しいユーザーを作成 します。 必要なプロパティで #microsoft.graph.agentUser の値を持つ @odata.type プロパティを指定すると、この API によって agentUser オブジェクトが作成されます。

少なくとも、必要なプロパティを指定する必要があります。 必要に応じて、その他の書き込み可能なプロパティを指定することもできます。

この操作では、既定では、 各ユーザーagentUser のプロパティのサブセットのみが返されます。 これらの既定のプロパティは、「プロパティ」セクションに記載されています。 既定で返されないプロパティを取得するには、GET 操作を実行し、$select OData クエリ オプションでプロパティを指定します。

注:

organizationとの B2B コラボレーションの一環として外部ユーザーを作成するには、招待 API を使用します。 外部テナントのMicrosoft Entra 外部 IDで顧客、市民、またはビジネス パートナーを作成するには、「例 4: 顧客アカウントを作成する」を参照してください。

この API は、次の国内クラウド展開で使用できます。

グローバル サービス 米国政府機関 L4 米国政府機関 L5 (DOD) 21Vianet が運営する中国

アクセス許可

この API の最小特権としてマークされているアクセス許可またはアクセス許可を選択します。 アプリで必要な場合にのみ、より高い特権のアクセス許可またはアクセス許可を使用します。 委任されたアクセス許可とアプリケーションのアクセス許可の詳細については、「アクセス許可の種類」を参照してください。 これらのアクセス許可の詳細については、「アクセス許可のリファレンス」を参照してください。

アクセス許可の種類 最小特権アクセス許可 より高い特権のアクセス許可
委任 (職場または学校のアカウント) User.ReadWrite.All Directory.ReadWrite.All
委任 (個人用 Microsoft アカウント) サポートされていません。
アプリケーション User.ReadWrite.All Directory.ReadWrite.All

HTTP 要求

POST /users

要求ヘッダー

ヘッダー
Authorization ベアラー {token}。 必須です。 認証と認可についての詳細をご覧ください。
Content-Type application/json

要求本文

要求本文で、ユーザー オブジェクトの JSON 表記を指定します。

次の表に、ユーザーまたは agentUser を作成するときに必要なプロパティを示します。

  • agentUser を作成するには、@odata.type プロパティを #microsoft.graph.agentUser の値で指定する必要があります。それ以外の場合は、ユーザーが作成され、
  • 作成しているユーザーの ID プロパティが含まれている場合は、一覧に表示されているすべてのプロパティが必須ではありません。 ソーシャル ID の場合、プロパティは必要ありません。
パラメーター 説明
accountEnabled ブール値 アカウントが有効になっている場合は True。それ以外の場合は false。
displayName 文字列 ユーザーのアドレス帳に表示される名前。
onPremisesImmutableId String ユーザーの userPrincipalName (UPN) プロパティにフェデレーション ドメインを使用している場合は、新しいユーザー アカウントを作成する場合にのみ必要です。
mailNickname String ユーザーの電子メール エイリアス。
passwordProfile passwordProfile ユーザーのパスワード プロファイル。 ユーザーにのみ適用され、agentUser には適用されません。
userPrincipalName String ユーザー プリンシパル名 (someuser@contoso.com)。 インターネット標準 RFC 822 に基づいた、インターネット スタイルのユーザーのログイン名です。 規則では、これはユーザーの電子メール名にマップされる必要があります。 一般的な形式は alias@domain です。このドメインは、検証済みドメインのテナントのコレクション内に存在している必要があります。 テナントの検証済みドメインには、organizationverifiedDomains プロパティからアクセスできます。
注: このプロパティにアクセント文字を含めることはできません。 次の文字のみ使用することができます A - Za - z0 - 9 ' . - _ ! # ^ ~。 使用できる文字の完全なリストについてはユーザー名 ポリシーを参照してください。
identityParentId 文字列 関連付けられている エージェント ID のオブジェクト ID。 通常のユーザーに対して@odata.type#microsoft.graph.agentUserを設定して無視する必要がある agentUser に必要です。 設定されていない場合は、通常のユーザーが作成されます。

このリソースは 拡張機能をサポートしているため、 POST 操作を使用し、作成中に独自のデータを含むカスタム プロパティをユーザー インスタンスに追加できます。

この API を介して作成されたフェデレーション ユーザーは、既定で 12 時間ごとにサインインする必要があります。 これを変更する方法については、「 トークンの有効期間の例外」を参照してください。

注:

既存のユーザー オブジェクトへの B2C ローカル アカウントの追加は、ユーザー オブジェクトに既にローカル アカウント ID が含まれていない限り許可されません。

応答

成功した場合、このメソッドは 201 Created 応答コードと、応答本文で ユーザー または agentUser オブジェクトを返します。

#microsoft.graph.agentUser@odata.type プロパティを省略すると、identityParentId が指定されていても、ユーザー オブジェクトが作成されます。 既に別の agentUser にリンクされている identityParentId を使用して agentUser を作成しようとすると、400 Bad Request エラーが返されます。

例 1: ユーザーを作成する

要求

次の例は、必要なプロパティのみを指定する要求を示しています。

POST https://graph.microsoft.com/beta/users
Content-type: application/json

{
  "accountEnabled": true,
  "displayName": "Adele Vance",
  "mailNickname": "AdeleV",
  "userPrincipalName": "AdeleV@contoso.com",
  "passwordProfile" : {
    "forceChangePasswordNextSignIn": true,
    "password": "xWwvJ]6NMw+bWH-d"
  }
}
応答

次の例は応答を示しています。

注:

ここに示す応答オブジェクトは、読みやすさのために短縮されている可能性があります。

HTTP/1.1 201 Created
Content-type: application/json

{
    "@odata.context": "https://graph.microsoft.com/beta/$metadata#users/$entity",
    "id": "87d349ed-44d7-43e1-9a83-5f2406dee5bd",
    "businessPhones": [],
    "displayName": "Adele Vance",
    "givenName": "Adele",
    "jobTitle": "Product Marketing Manager",
    "mail": "AdeleV@contoso.com",
    "mobilePhone": "+1 425 555 0109",
    "officeLocation": "18/2111",
    "preferredLanguage": "en-US",
    "surname": "Vance",
    "userPrincipalName": "AdeleV@contoso.com"
}

例 2: エージェント ユーザーを作成する

要求

次の例は、必要なプロパティのみを指定する要求を示しています。

POST https://graph.microsoft.com/beta/users
Content-type: application/json

{
  "@odata.type": "#microsoft.graph.agentUser",
  "accountEnabled": true,
  "displayName": "Adele Vance",
  "mailNickname": "AdeleV",
  "userPrincipalName": "AdeleV@contoso.com",
  "identityParentId": ""
}
応答

次の例は応答を示しています。

注:

ここに示す応答オブジェクトは、読みやすさのために短縮されている可能性があります。

HTTP/1.1 201 Created
Content-type: application/json

{
    "@odata.context": "https://graph.microsoft.com/beta/$metadata#users/$entity",
    "@odata.type": "#microsoft.graph.agentUser",
    "id": "87d349ed-44d7-43e1-9a83-5f2406dee5bd",
    "businessPhones": [],
    "displayName": "Adele Vance",
    "givenName": "Adele",
    "jobTitle": "Product Marketing Manager",
    "mail": "AdeleV@contoso.com",
    "mobilePhone": "+1 425 555 0109",
    "officeLocation": "18/2111",
    "preferredLanguage": "en-US",
    "surname": "Vance",
    "userPrincipalName": "AdeleV@contoso.com"
}

例 3: AZURE AD B2C でソーシャル アカウント ID とローカル アカウント ID を持つユーザーを作成する

サインイン名 (サインイン用のメール アドレス)、およびソーシャル ID を持つローカル アカウント ID を使用して、新しいユーザーを作成します。 この例は、通常、Azure AD B2C テナントの移行シナリオに使用されます。

注:

ローカル アカウント ID の場合、パスワードの有効期限を無効にし、次回のサインイン時にパスワードを強制的に変更することも無効にする必要があります。

要求

POST https://graph.microsoft.com/beta/users
Content-type: application/json

{
  "displayName": "John Smith",
  "identities": [
    {
      "signInType": "userName",
      "issuer": "contoso.com",
      "issuerAssignedId": "johnsmith"
    },
    {
      "signInType": "emailAddress",
      "issuer": "contoso.com",
      "issuerAssignedId": "jsmith@yahoo.com"
    },
    {
      "signInType": "federated",
      "issuer": "facebook.com",
      "issuerAssignedId": "5eecb0cd"
    }
  ],
  "passwordProfile" : {
    "password": "password-value",
    "forceChangePasswordNextSignIn": false
  },
  "passwordPolicies": "DisablePasswordExpiration"
}

応答

次の例は応答を示しています。

注: ここに示す応答オブジェクトは、読みやすさのために短縮されている場合があります。

HTTP/1.1 201 Created
Content-type: application/json

{
  "@odata.context": "https://graph.microsoft.com/beta/$metadata#users/$entity",
  "displayName": "John Smith",
  "id": "4c7be08b-361f-41a8-b1ef-1712f7a3dfb2",
  "identities": [
    {
      "signInType": "userName",
      "issuer": "contoso.com",
      "issuerAssignedId": "johnsmith"
    },
    {
      "signInType": "emailAddress",
      "issuer": "contoso.com",
      "issuerAssignedId": "jsmith@yahoo.com"
    },
    {
      "signInType": "federated",
      "issuer": "facebook.com",
      "issuerAssignedId": "5eecb0cd"
    }
  ],
  "passwordPolicies": "DisablePasswordExpiration"
}

例 4: 外部テナントに顧客アカウントを作成する

この例では、外部テナントのMicrosoft Entra 外部 IDで顧客アカウントを作成する方法を示します。

注:

ローカル アカウント ID の場合、パスワードの有効期限を無効にする必要があります。

要求

POST https://graph.microsoft.com/beta/users
Content-type: application/json

{
    "displayName": "Test User",
    "identities": [
        {
            "signInType": "emailAddress",
            "issuer": "contoso.onmicrosoft.com",
            "issuerAssignedId": "adelev@adatum.com"
        }
    ],
    "mail": "adelev@adatum.com",
    "passwordProfile": {
        "password": "passwordValue",
        "forceChangePasswordNextSignIn": true
    },
    "passwordPolicies": "DisablePasswordExpiration"
}

応答

次の例は応答を示しています。

注: ここに示す応答オブジェクトは、読みやすさのために短縮されている場合があります。

HTTP/1.1 201 Created
Content-type: application/json

{
    "@odata.context": "https://graph.microsoft.com/beta/$metadata#users/$entity",
    "id": "daabd280-3978-4d29-acce-d677b9cf2e4d",
    "businessPhones": [],
    "displayName": "Test User",
    "givenName": null,
    "jobTitle": null,
    "mail": "adelev@adatum.com",
    "mobilePhone": null,
    "officeLocation": null,
    "preferredLanguage": null,
    "surname": null,
    "userPrincipalName": "daabd280-3978-4d29-acce-d677b9cf2e4d@contoso.onmicrosoft.com"
}