ユーザー再割当API
ユーザーの責任を新しいユーザーに再割り当てしたり、指定された再割り当てアクションの再割り当ての詳細にアクセスできます。
ユーザー再割当APIは、ユーザー再割当UIオプションと同じように機能します。 ユーザーの責任を再割り当てする場合、APIは無効な責任、または再割り当てされるユーザーが所有していない責任を無視します。
ユーザーの再割り当てにアクセスするための基本URLは次のとおりです。 https ://{your_instance_name}/api/user_reassignments
詳細は次のリソースをご参照ください。
アクション
ユーザー再割当APIでは以下の操作が可能です。
動詞 | パス | アクション | 説明 |
|---|---|---|---|
GET |
| Show | 指定されたユーザー再割当リクエストのステータスと再割当の概要にアクセスします。 このメソッドを使用して、前のPOSTコールからの再割当ステータスと再割当されたドキュメントの概要を理解できます。 |
POST |
| Create | ユーザー再割当リクエストを送信します。 |
GET |
| Index | ユーザー再割当リクエストの詳細を取得します。 |
Elements
ユーザー再割当APIでは、次の要素を使用できます。
要素 | Description | 必須フィールド? | 一意? | 許容値 | Api_Inフィールド? | Api_Outフィールド? | データタイプ |
|---|---|---|---|---|---|---|---|
from-user | 以前の責任ユーザー。 | はい | はい | はい | |||
to-user | 責任が割り当てられるユーザー。 | はい | はい | はい | |||
deactivate-from-user-after-reassignment | Trueの場合、責任が再割り当てされた後、 | なし | はい | はい | boolean | ||
notes | このユーザーの再割当に関連するメモと詳細。 | なし | はい | はい | 文字列 | ||
requested-reassignments: | 完了するためにリクエストされた再割り当て. 定義については、以下のセクションを参照してください。 | なし | はい | はい | JSON配列。 形式と説明については、以下を参照してください | ||
object-type | 再割り当てされるオブジェクトタイプ | なし | はい | ||||
object-id | 再割り当てされるオブジェクトID | なし | はい | ||||
change-type | 変更タイプ | なし | はい | ||||
status | 再割り当てが変更されたか、失敗したかどうか | なし | 変更済み、失敗 | はい | 文字列 | ||
message | 再割り当てに失敗した場合のエラーメッセージ | なし | はい | 文字列 | |||
| summary | 処理が完了した場合の再割り当て結果の要約 | なし | はい | JSON配列。 形式と説明については、以下を参照してください |
Requested Reassignments
このフィールドは、次の形式でJSON配列を取ります。
"requested-reassignments": { "memberships-and-roles": { "add-user-groups": true, "replace-as-user-group-owner": true, "add-projects": true, "replace-as-project-owner": false, "add-categories": false, "replace-as-category-owner": false, "add-content-groups": false, "add-roles": true }, "documents": { "replace-as-requisition-requester": false, "replace-as-invoice-requester": false, "replace-as-contract-owner": false }, "approvals": { "replace-in-approvals": true, "replace-as-delegate": false, "replace-as-ultimate-approver": false, "replace-as-watcher": true }, "platform": { "replace-as-manager": false, "replace-as-integration-contact": false, "replace-as-budget-owner": false, "replace-as-report-recipient": false } }これらのフィールドは次のように定義されます。 deactivate - from - user - after - reassignment 要素がfalseに設定されている場合、POST要求を送信するときにこれらの要素の少なくとも1つをtrueに設定する必要があります。
インスタンスの設定に応じて、 承認 要素には 承認-受信-インボイス-要求者-アクセス-契約-レビューという名前が付けられます。
要素 | Description | 必須フィールド? | データタイプ |
add-user-groups | 宛先ユーザーが持っていないユーザーグループ(承認グループを含む)を追加 | boolean | |
replace-as-user-group-owner | ユーザーグループオーナーとして置き換え | boolean | |
add-projects | 宛先ユーザーが持っていないプロジェクトにメンバーとして追加 | boolean | |
replace-as-project-owner | プロジェクト所有者として置き換え | boolean | |
add-categories | 宛先ユーザーが持っていないカテゴリーにメンバーとして追加 | boolean | |
replace-as-category-owner | カテゴリー所有者として置き換え | boolean | |
add-content-groups | 宛先ユーザーが持っていないコンテンツグループを追加 | boolean | |
| add-roles | 宛先ユーザーが持っていない役割を追加 | boolean | |
replace-as-requisition-requester | 発注がキャンセルされていない、または完了していない発注済み申請書を含む申請書の申請者として置き換えます。 | boolean | |
replace-as-invoice-requester | 請求書の申請者として置き換え | boolean | |
replace-as-contract-owner | 契約所有者として置き換え | boolean | |
replace-in-approvals | 設定済みの承認チェーンで「元」ユーザーを現在の承認者として置き換え、「元」ユーザーが手動で追加された承認一覧で置き換えます | boolean | |
replace-as-delegate | 代理として置き換え | boolean | |
replace-as-ultimate-approver | 最終承認者として置き換え | boolean | |
replace-as-watcher | 監視者として置き換え | boolean | |
replace-as-manager | マネージャーとして置き換え | boolean | |
replace-as-integration-contact | 連携の連絡先として置き換え | boolean | |
replace-as-budget-owner | 予算所有者として置き換え | boolean | |
replace-as-report-recipient | スケジュール済みレポートの受信者として置き換え | boolean |
サマリー
このフィールドは、次の形式でJSON配列を取ります。
"summary": { "selected": 5, "changed": 4, "failed": 1 }これらのフィールドは次のように定義されます。
要素 | Description | データタイプ |
| selected | 再割り当ての合計数 | 文字列 |
| Changed | 再割り当ての成功数 | 文字列 |
| failed | 再割り当ての失敗数 | 文字列 |
新規ユーザー再割当リクエストを追加
- エンドポイント
POST
/api/user_reassignments- cURLリクエスト例
curl --location 'https://<your-instance>.com/api/user_reassignments' \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --header 'Authorization: ••••••' \ --header 'Cookie: _mkra_ctxt=9bf0fc146dee34067ce9df6a3b071159c58a1eef257da14d26bc05312e54d6d5--201' \ --data '{ "from-user":{ "login":"c79d511f-c0fc-43f1-a849-ec59bbac18da" }, "to-user":{ "login":"6970e846-a197-44c9-8909-67b8b8809ec3" }, "deactivate-from-user-after-reassignment":false, "notes":"Note Example", "requested-reassignments": { "memberships-and-roles": { "add-user-groups": true, "replace-as-user-group-owner": true, "add-projects": true, "replace-as-project-owner": false, "add-categories": false, "replace-as-category-owner": false, "add-content-groups": false, "add-roles": true }, "documents": { "replace-as-requisition-requester": false, "replace-as-invoice-requester": false, "replace-as-contract-owner": false }, "approvals_receiving_invoice_requester_access_contract_reviews": { "replace-in-approvals": true, "replace-as-delegate": false, "replace-as-ultimate-approver": false, "replace-as-watcher": true }, "platform": { "replace-as-manager": false, "replace-as-integration-contact": false, "replace-as-budget-owner": false, "replace-as-report-recipient": false } } }'- レスポンス例
{ "id": 37, "created-at": "2025-03-26T15:12:58-04:00", "updated-at": "2025-03-26T15:12:58-04:00", "status": "new", "notes": "Note Example", "deactivate-from-user-after-reassignment": false, "requested-reassignments": { "memberships-and-roles": { "add-user-groups": true, "replace-as-user-group-owner": true, "add-projects": true, "replace-as-project-owner": false, "add-categories": false, "replace-as-category-owner": false, "add-content-groups": false, "add-roles": true }, "documents": { "replace-as-requisition-requester": false, "replace-as-invoice-requester": false, "replace-as-contract-owner": false }, "approvals-receiving-invoice-requester-access-contract-reviews": { "replace-in-approvals": true, "replace-as-delegate": false, "replace-as-ultimate-approver": false, "replace-as-watcher": true }, "platform": { "replace-as-manager": false, "replace-as-integration-contact": false, "replace-as-budget-owner": false, "replace-as-report-recipient": false } }, "summary": null, "from-user": { "id": 76, "login": "c79d511f-c0fc-43f1-a849-ec59bbac18da", "employee-number": null, "firstname": "User", "lastname": "test", "fullname": "User test", "email": "user@coupa.com", "salesforce-id": null, "avatar-thumb-url": null, "custom-fields": { "mp-html": "", "userbusinessunit": null, "ap-custom-field-": null } }, "to-user": { "id": 93, "login": "6970e846-a197-44c9-8909-67b8b8809ec3", "employee-number": null, "firstname": "First", "lastname": "Last", "fullname": "First Last", "email": "name@coupa.com", "salesforce-id": null, "avatar-thumb-url": null, "custom-fields": { "mp-html": "", "userbusinessunit": null, "ap-custom-field-": null } }, "created-by": { "id": 24200, "login": "mytest2", "employee-number": null, "firstname": "My2", "lastname": "Test2", "fullname": "My2 Test2", "email": "mytest2@gmail.com", "salesforce-id": null, "avatar-thumb-url": null, "custom-fields": { "mp-html": "", "userbusinessunit": null, "ap-custom-field-": null } }, "updated-by": { "id": 24200, "login": "mytest2", "employee-number": null, "firstname": "My2", "lastname": "Test2", "fullname": "My2 Test2", "email": "mytest2@gmail.com", "salesforce-id": null, "avatar-thumb-url": null, "custom-fields": { "mp-html": "", "userbusinessunit": null, "ap-custom-field-": null } } }
ユーザー再割当リクエストのステータスを取得
- メソッド
GET
/api/user_reassignments/:id- cURLリクエスト例
curl --location 'https://<your-instance>/api/user_reassignments/37' \ --header 'Accept: application/json' \ --header 'Content-Type: application/json' \ --header 'Authorization: ••••••' \ --header 'Cookie: _mkra_ctxt=56eb58de795a3e542b92bcd4617dc3db9d7f415cfb3b290171098380ad10e2dc--200' \ --data ''- レスポンス例
{ "id": 37, "created-at": "2025-03-26T15:12:58-04:00", "updated-at": "2025-03-26T15:12:58-04:00", "status": "done", "notes": "Note Example", "deactivate-from-user-after-reassignment": false, "requested-reassignments": { "memberships-and-roles": { "add-user-groups": true, "replace-as-user-group-owner": true, "add-projects": true, "replace-as-project-owner": false, "add-categories": false, "replace-as-category-owner": false, "add-content-groups": false, "add-roles": true }, "documents": { "replace-as-requisition-requester": false, "replace-as-invoice-requester": false, "replace-as-contract-owner": false }, "approvals-receiving-invoice-requester-access-contract-reviews": { "replace-in-approvals": true, "replace-as-delegate": false, "replace-as-ultimate-approver": false, "replace-as-watcher": true }, "platform": { "replace-as-manager": false, "replace-as-integration-contact": false, "replace-as-budget-owner": false, "replace-as-report-recipient": false } }, "summary": null, "from-user": { "id": 76, "login": "c79d511f-c0fc-43f1-a849-ec59bbac18da", "employee-number": null, "firstname": "Name", "lastname": "test", "fullname": "Rohan test", "email": "name@coupa.com", "salesforce-id": null, "avatar-thumb-url": null, "custom-fields": { "mp-html": "", "userbusinessunit": null, "ap-custom-field-": null } }, "to-user": { "id": 93, "login": "6970e846-a197-44c9-8909-67b8b8809ec3", "employee-number": null, "firstname": "First", "lastname": "Last", "fullname": "First Last", "email": "name@coupa.com", "salesforce-id": null, "avatar-thumb-url": null, "custom-fields": { "mp-html": "", "userbusinessunit": null, "ap-custom-field-": null } }, "created-by": { "id": 24200, "login": "mytest2", "employee-number": null, "firstname": "My2", "lastname": "Test2", "fullname": "My2 Test2", "email": "mytest2@gmail.com", "salesforce-id": null, "avatar-thumb-url": null, "custom-fields": { "mp-html": "", "userbusinessunit": null, "ap-custom-field-": null } }, "updated-by": { "id": 24200, "login": "mytest2", "employee-number": null, "firstname": "My2", "lastname": "Test2", "fullname": "My2 Test2", "email": "mytest2@gmail.com", "salesforce-id": null, "avatar-thumb-url": null, "custom-fields": { "mp-html": "", "userbusinessunit": null, "ap-custom-field-": null } } }