次の方法で共有


User Entitlements - Add

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

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

URI パラメーター

名前 / 必須 説明
organization
path True

string

Azure DevOps 組織の名前です。

api-version
query True

string

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

要求本文

名前 説明
accessLevel

AccessLevel

ライセンスによって示されるメンバーのアクセス レベル。

dateCreated

string

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

groupAssignments

GroupEntitlement[]

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

id

string

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

lastAccessedDate

string

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

projectEntitlements

ProjectEntitlement[]

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

user

GraphUser

ユーザー参照。

応答

名前 説明
200 OK

UserEntitlementsPostResponse

成功した操作

セキュリティ

oauth2

Type: oauth2
Flow: accessCode
Authorization URL: https://app.vssps.visualstudio.com/oauth2/authorize&response_type=Assertion
Token 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

Scopes

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

Sample Request

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

{
  "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"
      }
    }
  ]
}

Sample Response

{
  "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

string

earlyAdopter

string

express

string

none

string

professional

string

stakeholder

string

AccountUserStatus

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

名前 説明
active

string

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

deleted

string

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

disabled

string

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

expired

string

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

none

string

pending

string

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

pendingDisabled

string

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

AssignmentSource

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

名前 説明
groupRule

string

none

string

unknown

string

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

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

lastExecuted

string

[読み取りのみ]グループ ライセンス規則が最後に実行された時刻 (変更が行われたかどうかに関係なく)。

licenseRule

AccessLevel

ライセンス規則。

members

UserEntitlement[]

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

projectEntitlements

ProjectEntitlement[]

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

status

GroupLicensingRuleStatus

グループ ルールの状態。

GroupLicensingRuleStatus

グループ ルールの状態。

名前 説明
applied

string

ルールが適用されます

applyPending

string

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

incompatible

string

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

unableToApply

string

ルールが予期せず適用できなかったので、再試行する必要がある

GroupType

グループの種類

名前 説明
custom

string

projectAdministrator

string

projectContributor

string

projectReader

string

projectStakeholder

string

LicensingSource

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

名前 説明
account

string

auto

string

msdn

string

none

string

profile

string

trial

string

MsdnLicenseType

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

名前 説明
eligible

string

enterprise

string

none

string

platforms

string

premium

string

professional

string

testProfessional

string

ultimate

string

ProjectEntitlement

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

名前 説明
assignmentSource

AssignmentSource

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

group

Group

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

projectPermissionInherited

ProjectPermissionInherited

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

projectRef

ProjectRef

Project Ref

teamRefs

TeamRef[]

Team Ref.

ProjectPermissionInherited

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

名前 説明
inherited

string

notInherited

string

notSet

string

ProjectRef

プロジェクトへの参照

名前 説明
id

string

プロジェクト ID。

name

string

プロジェクト名。

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

名前 説明
links

object

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

TeamRef

チームへの参照

名前 説明
id

string

チーム ID

name

string

チーム名

UserEntitlement

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

名前 説明
accessLevel

AccessLevel

ライセンスによって示されるメンバーのアクセス レベル。

dateCreated

string

[読み取りのみ]メンバーがコレクションに追加された日付。

groupAssignments

GroupEntitlement[]

[読み取りのみ]このメンバーが属している GroupEntitlements。

id

string

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

lastAccessedDate

string

[読み取りのみ]メンバーがコレクションに最後にアクセスした日付。

projectEntitlements

ProjectEntitlement[]

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

user

GraphUser

ユーザー参照。

UserEntitlementOperationResult

名前 説明
errors

object[]

対応するエラー メッセージとペアになったエラー コードの一覧。

isSuccess

boolean

操作の成功状態。

result

string

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

userId

string

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

UserEntitlementsPostResponse

名前 説明
isSuccess

boolean

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

operationResult

UserEntitlementOperationResult

操作の結果。

userEntitlement

UserEntitlement

操作が適用された後のユーザーエンタイトルメントの結果。