次の方法で共有


User Entitlements - Add

ユーザーを追加し、ライセンスと拡張機能を割り当てて、アカウント内のプロジェクト グループのメンバーにします。

POST https://vsaex.dev.azure.com/{organization}/_apis/userentitlements?api-version=7.1

URI パラメーター

名前 / 必須 説明
organization
path True

string

Azure DevOps 組織の名前。

api-version
query True

string

使用する API のバージョン。 このバージョンの API を使用するには、これを '7.1' に設定する必要があります。

要求本文

名前 説明
accessLevel

AccessLevel

ライセンスで示されるメンバーのアクセス レベル。

dateCreated

string (date-time)

[Readonly]メンバーがコレクションに追加された日付。

groupAssignments

GroupEntitlement[]

[Readonly]このメンバーが属している GroupEntitlements。

id

string (uuid)

GraphMember に関連付けられている ID の ID と一致する一意識別子。

lastAccessedDate

string (date-time)

[Readonly]メンバーがコレクションに最後にアクセスした日付。

projectEntitlements

ProjectEntitlement[]

プロジェクトと、そのプロジェクトにおけるメンバーの有効なアクセス許可との関係。

user

GraphUser

ユーザー参照。

応答

名前 説明
200 OK

UserEntitlementsPostResponse

成功した操作

セキュリティ

oauth2

型: oauth2
フロー: accessCode
Authorization URL (承認 URL): https://app.vssps.visualstudio.com/oauth2/authorize&response_type=Assertion
Token URL (トークン URL): https://app.vssps.visualstudio.com/oauth2/token?client_assertion_type=urn:ietf:params:oauth:client-assertion-type:jwt-bearer&grant_type=urn:ietf:params:oauth:grant-type:jwt-bearer

スコープ

名前 説明
vso.memberentitlementmanagement_write ユーザー、ライセンス、およびアクセスできるプロジェクトと拡張機能を管理する権限を付与します。

要求のサンプル

POST https://vsaex.dev.azure.com/{organization}/_apis/userentitlements?api-version=7.1

{
  "accessLevel": {
    "licensingSource": "account",
    "accountLicenseType": "express"
  },
  "extensions": [
    {
      "id": "ms.feed"
    }
  ],
  "user": {
    "principalName": "newuser@fabrikam.com",
    "subjectKind": "user"
  },
  "projectEntitlements": [
    {
      "group": {
        "groupType": "projectContributor"
      },
      "projectRef": {
        "id": "e5943a98-a842-4001-bd3b-06e756a7dfac"
      }
    }
  ]
}

応答のサンプル

{
  "operationResult": {
    "isSuccess": true,
    "errors": [],
    "userId": "08bbffa9-4944-4a98-b0c0-1fa718d5de3d",
    "result": {
      "id": "08bbffa9-4944-4a98-b0c0-1fa718d5de3d",
      "user": {
        "subjectKind": "user",
        "domain": "14c5367e-ee12-4c94-98b8-b52c1fe3cfb1",
        "principalName": "newuser@fabrikam.com",
        "mailAddress": "newuser@fabrikam.com",
        "origin": "aad",
        "originId": "00000000-0000-0000-0000-000000000000",
        "displayName": "newuser@fabrikam.com",
        "_links": {
          "self": {
            "href": "https://vssps.dev.azure.com/fabrikam/_apis/graph/users/bnd.dXBuOldpbmRvd3MgTGl2ZSBJRFxicmFuZG9uQGRldmJsYWNrb3BzLmlv"
          },
          "memberships": {
            "href": "https://vssps.dev.azure.com/fabrikam/_apis/graph/memberships/bnd.dXBuOldpbmRvd3MgTGl2ZSBJRFxicmFuZG9uQGRldmJsYWNrb3BzLmlv"
          },
          "membershipState": {
            "href": "https://vssps.dev.azure.com/fabrikam/_apis/graph/membershipstates/bnd.dXBuOldpbmRvd3MgTGl2ZSBJRFxicmFuZG9uQGRldmJsYWNrb3BzLmlv"
          },
          "storageKey": {
            "href": "https://vssps.dev.azure.com/fabrikam/_apis/graph/storagekeys/bnd.dXBuOldpbmRvd3MgTGl2ZSBJRFxicmFuZG9uQGRldmJsYWNrb3BzLmlv"
          }
        },
        "url": "https://vssps.dev.azure.com/fabrikam/_apis/graph/users/bnd.dXBuOldpbmRvd3MgTGl2ZSBJRFxicmFuZG9uQGRldmJsYWNrb3BzLmlv",
        "descriptor": "aad.dXBuOldpbmRvd3MgTGl2ZSBJRFxicmFuZG9uQGRldmJsYWNrb3BzLmlv"
      },
      "accessLevel": {
        "licensingSource": "account",
        "accountLicenseType": "express",
        "msdnLicenseType": "none",
        "licenseDisplayName": "Basic",
        "status": "pending",
        "statusMessage": "",
        "assignmentSource": "unknown"
      },
      "lastAccessedDate": "0001-01-01T08:00:00Z",
      "projectEntitlements": [],
      "extensions": [],
      "groupAssignments": []
    }
  },
  "isSuccess": true,
  "userEntitlement": {
    "id": "08bbffa9-4944-4a98-b0c0-1fa718d5de3d",
    "user": {
      "subjectKind": "user",
      "domain": "14c5367e-ee12-4c94-98b8-b52c1fe3cfb1",
      "principalName": "newuser@fabrikam.com",
      "mailAddress": "newuser@fabrikam.com",
      "origin": "aad",
      "originId": "00000000-0000-0000-0000-000000000000",
      "displayName": "newuser@fabrikam.com",
      "_links": {
        "self": {
          "href": "https://vssps.dev.azure.com/fabrikam/_apis/graph/users/bnd.dXBuOldpbmRvd3MgTGl2ZSBJRFxicmFuZG9uQGRldmJsYWNrb3BzLmlv"
        },
        "memberships": {
          "href": "https://vssps.dev.azure.com/fabrikam/_apis/graph/memberships/bnd.dXBuOldpbmRvd3MgTGl2ZSBJRFxicmFuZG9uQGRldmJsYWNrb3BzLmlv"
        },
        "membershipState": {
          "href": "https://vssps.dev.azure.com/fabrikam/_apis/graph/membershipstates/bnd.dXBuOldpbmRvd3MgTGl2ZSBJRFxicmFuZG9uQGRldmJsYWNrb3BzLmlv"
        },
        "storageKey": {
          "href": "https://vssps.dev.azure.com/fabrikam/_apis/graph/storagekeys/bnd.dXBuOldpbmRvd3MgTGl2ZSBJRFxicmFuZG9uQGRldmJsYWNrb3BzLmlv"
        }
      },
      "url": "https://vssps.dev.azure.com/fabrikam/_apis/graph/users/bnd.dXBuOldpbmRvd3MgTGl2ZSBJRFxicmFuZG9uQGRldmJsYWNrb3BzLmlv",
      "descriptor": "aad.dXBuOldpbmRvd3MgTGl2ZSBJRFxicmFuZG9uQGRldmJsYWNrb3BzLmlv"
    },
    "accessLevel": {
      "licensingSource": "account",
      "accountLicenseType": "express",
      "msdnLicenseType": "none",
      "licenseDisplayName": "Basic",
      "status": "pending",
      "statusMessage": "",
      "assignmentSource": "unknown"
    },
    "lastAccessedDate": "0001-01-01T08:00:00Z",
    "projectEntitlements": [],
    "extensions": [],
    "groupAssignments": []
  }
}

定義

名前 説明
AccessLevel

ユーザーに割り当てられたライセンス

AccountLicenseType

アカウント ライセンスの種類 (Express、利害関係者など)。 AccountLicenseType を使用するには、LicensingSource を要求本文で 'account' として定義する必要があります。

AccountUserStatus

アカウントのユーザーの状態

AssignmentSource

ライセンスの割り当て元 (グループ、不明など)

GraphGroup

グラフ グループ エンティティ

GraphUser
Group

プロジェクト グループ (共同作成者、閲覧者など)

GroupEntitlement

ライセンス、拡張機能、プロジェクト メンバーシップなど、追加のプロパティを持つグループ エンティティ

GroupLicensingRuleStatus

グループ ルールの状態。

GroupType

グループの種類

LicensingSource

ライセンス ソース (アカウントなど)。MSDN など)

MsdnLicenseType

MSDN ライセンスの種類 (Visual Studio Professional、Visual Studio Enterprise など)。 MsdnLicenseType を使用するには、LicensingSource を要求本文で 'msdn' として定義する必要があります。

ProjectEntitlement

プロジェクトと、そのプロジェクトにおけるユーザーの有効なアクセス許可の関係。

ProjectPermissionInherited

ユーザーが Azure DevOps または AAD グループ メンバーシップを使用してプロジェクトに対するアクセス許可を継承しているかどうか。

ProjectRef

プロジェクトへの参照

ReferenceLinks

REST 参照リンクのコレクションを表すクラス。

TeamRef

チームへの参照

UserEntitlement

ライセンス、拡張機能、プロジェクト メンバーシップなど、追加のプロパティを持つユーザー エンティティ

UserEntitlementOperationResult
UserEntitlementsPostResponse

AccessLevel

ユーザーに割り当てられたライセンス

名前 説明
accountLicenseType

AccountLicenseType

アカウント ライセンスの種類 (Express、利害関係者など)。 AccountLicenseType を使用するには、LicensingSource を要求本文で 'account' として定義する必要があります。

assignmentSource

AssignmentSource

ライセンスの割り当て元 (グループ、不明など)

licenseDisplayName

string

ライセンスの表示名

licensingSource

LicensingSource

ライセンス ソース (アカウントなど)。MSDN など)

msdnLicenseType

MsdnLicenseType

MSDN ライセンスの種類 (Visual Studio Professional、Visual Studio Enterprise など)。 MsdnLicenseType を使用するには、LicensingSource を要求本文で 'msdn' として定義する必要があります。

status

AccountUserStatus

アカウントのユーザーの状態

statusMessage

string

状態メッセージ。

AccountLicenseType

アカウント ライセンスの種類 (Express、利害関係者など)。 AccountLicenseType を使用するには、LicensingSource を要求本文で 'account' として定義する必要があります。

説明
advanced
earlyAdopter
express
none
professional
stakeholder

AccountUserStatus

アカウントのユーザーの状態

説明
active

ユーザーが VSTS アカウントに少なくとも 1 回サインインしている

deleted

VSTS アカウント管理者によって VSTS アカウントからユーザーが削除される

disabled

ユーザーはサインインできません。主に管理者が、不在またはライセンスの再割り当てのためにユーザーを一時的に削除するために使用されます

expired

ユーザーはサインインできます。ライセンスが期限切れの状態にあり、猶予期間が設けられたときに主に使用されます

none
pending

ユーザーは VSTS アカウント管理者によって VSTS アカウントに参加するように招待されていますが、まだサインアップまたはサインインしていません

pendingDisabled

ユーザーが無効になっています。再び実行可能にした場合、それらは引き続き保留中の状態になります

AssignmentSource

ライセンスの割り当て元 (グループ、不明など)

説明
groupRule
none
unknown

GraphGroup

グラフ グループ エンティティ

名前 説明
_links

ReferenceLinks

このフィールドには、グラフの件名に関する興味深いリンクが 0 個以上含まれています。 これらのリンクを呼び出して、このグラフの件名に関する追加のリレーションシップや詳細情報を取得できます。

description

string

人間の読者が似た名前のグループをあいまいに区別するのに役立つ短い語句

descriptor

string

記述子は、システムの実行中にグラフの件名を参照する主な方法です。 このフィールドは、アカウントと組織の両方で同じグラフの件名を一意に識別します。

displayName

string

これは、グラフの件名の一意でない表示名です。 このフィールドを変更するには、ソース プロバイダーでその値を変更する必要があります。

domain

string

これは、グラフ メンバーの元のコンテナーの名前を表します。 (MSA の場合、これは "Windows Live ID" です。AD の場合はドメインの名前、AAD の場合はディレクトリの tenantID、VSTS グループの場合は ScopeId など)。

legacyDescriptor

string

[内部使用のみ]レガシ記述子は、ID 記述子を使用して古いバージョンの IMS にアクセスする必要がある場合に備えています。

mailAddress

string

特定のグラフ メンバーのレコードの電子メール アドレス。 これはプリンシパル名とは異なる場合があります。

origin

string

配信元識別子のソース プロバイダーの種類 (例: AD、AAD、MSA)

originId

string

配信元システムからの一意の識別子。 通常は、sid、オブジェクト ID、または Guid です。 リンク操作とリンク解除操作では、ユーザーが別のプロバイダーによってサポートされておらず、新しいプロバイダーで異なる一意の ID を持っているため、ユーザーに対してこの値が変更される可能性があります。

principalName

string

これは、ソース プロバイダーのこのグラフ メンバーの PrincipalName です。 ソース プロバイダーは、時間の経過と同時にこのフィールドを変更する可能性があり、VSTS によるグラフ メンバーの有効期間中は不変であるとは限りません。

subjectKind

string

このフィールドは、グラフの件名の種類 (グループ、スコープ、ユーザーなど) を識別します。

url

string

この URL は、このグラフの件名のソース リソースへの完全なルートです。

GraphUser

名前 説明
_links

ReferenceLinks

このフィールドには、グラフの件名に関する興味深いリンクが 0 個以上含まれています。 これらのリンクを呼び出して、このグラフの件名に関する追加のリレーションシップや詳細情報を取得できます。

descriptor

string

記述子は、システムの実行中にグラフの件名を参照する主な方法です。 このフィールドは、アカウントと組織の両方で同じグラフの件名を一意に識別します。

directoryAlias

string

バッキング ディレクトリ内のユーザーの短い一般的な一意の名前。 AAD ユーザーの場合、これはメールのニックネームに対応します。これは、多くの場合、@記号の前のユーザーのメール アドレスの部分に似ていますが、必ずしも似ているとは限りません。 GitHub ユーザーの場合、これは GitHub ユーザー ハンドルに対応します。

displayName

string

これは、グラフの件名の一意でない表示名です。 このフィールドを変更するには、ソース プロバイダーでその値を変更する必要があります。

domain

string

これは、グラフ メンバーの元のコンテナーの名前を表します。 (MSA の場合、これは "Windows Live ID" です。AD の場合はドメインの名前、AAD の場合はディレクトリの tenantID、VSTS グループの場合は ScopeId など)。

isDeletedInOrigin

boolean

true の場合、グループは ID プロバイダーで削除されています

legacyDescriptor

string

[内部使用のみ]レガシ記述子は、ID 記述子を使用して古いバージョンの IMS にアクセスする必要がある場合に備えています。

mailAddress

string

特定のグラフ メンバーのレコードの電子メール アドレス。 これはプリンシパル名とは異なる場合があります。

metaType

string

"member"、"guest" など、配信元のユーザーのメタ型。使用可能な値のセットについては、UserMetaType を参照してください。

origin

string

配信元識別子のソース プロバイダーの種類 (例: AD、AAD、MSA)

originId

string

配信元システムからの一意の識別子。 通常は、sid、オブジェクト ID、または Guid です。 リンク操作とリンク解除操作では、ユーザーが別のプロバイダーによってサポートされておらず、新しいプロバイダーで異なる一意の ID を持っているため、ユーザーに対してこの値が変更される可能性があります。

principalName

string

これは、ソース プロバイダーのこのグラフ メンバーの PrincipalName です。 ソース プロバイダーは、時間の経過と同時にこのフィールドを変更する可能性があり、VSTS によるグラフ メンバーの有効期間中は不変であるとは限りません。

subjectKind

string

このフィールドは、グラフの件名の種類 (グループ、スコープ、ユーザーなど) を識別します。

url

string

この URL は、このグラフの件名のソース リソースへの完全なルートです。

Group

プロジェクト グループ (共同作成者、閲覧者など)

名前 説明
displayName

string

グループの表示名

groupType

GroupType

グループの種類

GroupEntitlement

ライセンス、拡張機能、プロジェクト メンバーシップなど、追加のプロパティを持つグループ エンティティ

名前 説明
group

GraphGroup

メンバー参照。

id

string (uuid)

GraphMember の ID と一致する一意の識別子。

lastExecuted

string (date-time)

[Readonly]グループ ライセンス規則が最後に実行された時刻 (変更が加えられたかどうかに関係なく)。

licenseRule

AccessLevel

ライセンス 規則。

members

UserEntitlement[]

グループ メンバー。 新しいグループを作成する場合にのみ使用されます。

projectEntitlements

ProjectEntitlement[]

プロジェクトと、そのプロジェクトにおけるメンバーの有効なアクセス許可との関係。

status

GroupLicensingRuleStatus

グループ ルールの状態。

GroupLicensingRuleStatus

グループ ルールの状態。

説明
applied

ルールが適用されます

applyPending

ルールは作成または更新されますが、適用は保留中です

incompatible

グループ ルールに互換性がありません

unableToApply

ルールが予期せず適用され、再試行する必要がある

GroupType

グループの種類

説明
custom
projectAdministrator
projectContributor
projectReader
projectStakeholder

LicensingSource

ライセンス ソース (アカウントなど)。MSDN など)

説明
account
auto
msdn
none
profile
trial

MsdnLicenseType

MSDN ライセンスの種類 (Visual Studio Professional、Visual Studio Enterprise など)。 MsdnLicenseType を使用するには、LicensingSource を要求本文で 'msdn' として定義する必要があります。

説明
eligible
enterprise
none
platforms
premium
professional
testProfessional
ultimate

ProjectEntitlement

プロジェクトと、そのプロジェクトにおけるユーザーの有効なアクセス許可の関係。

名前 説明
assignmentSource

AssignmentSource

割り当て元 (グループや不明など)。

group

Group

プロジェクト グループ (共同作成者、閲覧者など)

projectPermissionInherited

ProjectPermissionInherited

ユーザーが Azure DevOps または AAD グループ メンバーシップを使用してプロジェクトに対するアクセス許可を継承しているかどうか。

projectRef

ProjectRef

Project Ref

teamRefs

TeamRef[]

Team Ref.

ProjectPermissionInherited

ユーザーが Azure DevOps または AAD グループ メンバーシップを使用してプロジェクトに対するアクセス許可を継承しているかどうか。

説明
inherited
notInherited
notSet

ProjectRef

プロジェクトへの参照

名前 説明
id

string (uuid)

プロジェクト ID。

name

string

プロジェクト名。

REST 参照リンクのコレクションを表すクラス。

名前 説明
links

object

リンクの読み取りビュー。 参照リンクは読み取り専用であるため、読み取り専用として公開する必要があります。

TeamRef

チームへの参照

名前 説明
id

string (uuid)

チーム ID

name

string

チーム名

UserEntitlement

ライセンス、拡張機能、プロジェクト メンバーシップなど、追加のプロパティを持つユーザー エンティティ

名前 説明
accessLevel

AccessLevel

ライセンスで示されるメンバーのアクセス レベル。

dateCreated

string (date-time)

[Readonly]メンバーがコレクションに追加された日付。

groupAssignments

GroupEntitlement[]

[Readonly]このメンバーが属している GroupEntitlements。

id

string (uuid)

GraphMember に関連付けられている ID の ID と一致する一意識別子。

lastAccessedDate

string (date-time)

[Readonly]メンバーがコレクションに最後にアクセスした日付。

projectEntitlements

ProjectEntitlement[]

プロジェクトと、そのプロジェクトにおけるメンバーの有効なアクセス許可との関係。

user

GraphUser

ユーザー参照。

UserEntitlementOperationResult

名前 説明
errors

object[]

対応するエラー メッセージと組み合わせたエラー コードの一覧。

isSuccess

boolean

操作の成功状態。

result

string (T)

結果のエンタイトルメント プロパティ。 特定の実装については、次も参照してください。

userId

string (uuid)

操作対象のメンバーの識別子。

UserEntitlementsPostResponse

名前 説明
isSuccess

boolean

すべての操作が成功した場合は True。

operationResult

UserEntitlementOperationResult

操作の結果。

userEntitlement

UserEntitlement

操作が適用された後のユーザー権利の結果。