1 つのプロジェクトに対する 1 つの組織 API キーのロールを変更
- Cloud Managerへのプログラムによるアクセスのための OAuth 2.0認証はプレビュー機能として利用できます。
- 機能および関連するドキュメントは、プレビュー期間中にいつでも変更される可能性があります。 OAuth2.0 認証を使用するには、 Cloud Manager Public APIへのリクエストで使用する サービス アカウント を作成します。
ベース URL: https://cloud.mongodb.com/api/public/v 1.0
Resource
PATCH /groups/{PROJECT-ID}/apiKeys/{API-KEY-ID}
リクエスト パス パラメーター
名前 | タイプ | 説明 |
---|---|---|
| string | APIキーを更新するプロジェクトの一意の識別子。 認証済みユーザーがアクセスできるすべての組織を取得するには、 /groupsエンドポイントを使用します。 |
| string | 更新するAPIキーの一意の識別子。 /groups/{PROJECT-ID}/apiKeysエンドポイントをリクエストして、指定された組織の認証済みユーザーがアクセスできるすべてのAPIキーを取得します。 |
リクエスト クエリ パラメータ
次のクエリ パラメータは 任意です。
名前 | タイプ | 説明 | default | ||||||
---|---|---|---|---|---|---|---|---|---|
pageNum | integer | ページ番号(1 インデックス ベース)。 |
| ||||||
itemsPerPage | integer | 1 ページあたりに返す項目の数は最大 500 です。 |
| ||||||
pretty | ブール値 | レスポンス本体を pretty-print にするかどうかを示します 形式。 |
| ||||||
envelope | ブール値 | 応答をエンベロープでラップするかどうかを示します。 一部のAPIクライアントは、 HTTPレスポンス ヘッダーまたはステータス コードにアクセスできません。 これを修正するには、クエリで 1 つの結果を返すエンドポイントの場合、レスポンス本体には次のものが含まれます。
結果のリストを返すエンドポイントの場合、 | なし |
リクエスト ボディ パラメータ
body パラメーターは必須です。
名前 | タイプ | 必要性 | 説明 | ||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| string 配列 | 必須 | APIキーが付与するロールのリスト。 少なくとも 1 つのロールを指定する必要があります。 提供されたロールは、割り当てられたプロジェクトに対して有効である必要があります。
この API キーが持つすべてのロールを含めます。 この配列にないロールは削除されます。 |
応答
名前 | タイプ | 説明 | ||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| string | このプロジェクトに割り当てられた組織APIキーの説明。 | ||||||||||||||||||||||||||||||||||||
| string | このプロジェクトに割り当てられた組織APIキーの一意の識別子。 | ||||||||||||||||||||||||||||||||||||
| string | このプロジェクトに割り当てられた組織APIキーの編集済み秘密キー。 このキーは、最初に作成したときは編集されずに表示されます。 | ||||||||||||||||||||||||||||||||||||
| string | このプロジェクトに割り当てられた組織APIキーの公開キー。 | ||||||||||||||||||||||||||||||||||||
| オブジェクト配列 | このプロジェクトに割り当てられたこの組織APIキーが持つロール。 この配列は、Cloud Manager でユーザーが持っているすべての組織ロールとプロジェクト ロールを返します。 | ||||||||||||||||||||||||||||||||||||
| string | このロールが属するプロジェクトの一意の識別子。 | ||||||||||||||||||||||||||||||||||||
| string | このロールが属する組織の一意の識別子。 | ||||||||||||||||||||||||||||||||||||
| string | ロールの名前。 このリソースは、Cloud Managerでユーザーが持っているすべてのロールを返します。 可能な値は次のとおりです。 組織ロール これが
プロジェクト ロール これが
|
リクエストの例
注意
リクエストを行うユーザーは、 {PUBLIC-KEY}:{PRIVATE-KEY}
としてフォーマットできます。
1 curl --user "{PUBLIC-KEY}:{PRIVATE-KEY}" --digest \ 2 --header "Accept: application/json" \ 3 --header "Content-Type: application/json" \ 4 --include \ 5 --request PATCH "https://cloud.mongodb.com/api/public/v1.0/groups/{PROJECT-ID}/apiKeys/5d1d143c87d9d63e6d694746?pretty=true" \ 6 --data '{ 7 "roles": [ "GROUP_READ_ONLY", "GROUP_DATA_ACCESS_READ_WRITE" ] 8 }'
応答例
応答ヘッダー
401 Unauthorized Content-Type: application/json;charset=ISO-8859-1 Date: {dateInUnixFormat} WWW-Authenticate: Digest realm="MMS Public API", domain="", nonce="{nonce}", algorithm=MD5, op="auth", stale=false Content-Length: {requestLengthInBytes} Connection: keep-alive
200 OK Vary: Accept-Encoding Content-Type: application/json Strict-Transport-Security: max-age=300 Date: {dateInUnixFormat} Connection: keep-alive Content-Length: {requestLengthInBytes} X-MongoDB-Service-Version: gitHash={gitHash}; versionString={ApplicationVersion}
レスポンス本体
1 { 2 "desc" : "New API key for test purposes", 3 "id" : "5d1d143c87d9d63e6d694746", 4 "links" : [ { 5 "href" : "https://cloud.mongodb.com/api/public/v1.0/orgs/5980cfe20b6d97029d82fa63/apiKeys/5d1d143c87d9d63e6d694746", 6 "rel" : "self" 7 } ], 8 "privateKey" : "********-****-****-eac4256753ba", 9 "publicKey" : "{PUBLIC-KEY}", 10 "roles" : [ { 11 "orgId" : "5980cfe20b6d97029d82fa63", 12 "roleName" : "ORG_BILLING_ADMIN" 13 }, { 14 "groupId" : "{PROJECT-ID}", 15 "roleName" : "GROUP_DATA_ACCESS_READ_WRITE" 16 }, { 17 "orgId" : "5980cfe20b6d97029d82fa63", 18 "roleName" : "ORG_MEMBER" 19 }, { 20 "groupId" : "{PROJECT-ID}", 21 "roleName" : "GROUP_READ_ONLY" 22 } ] 23 }