Identity Delegation Requests
Identity delegation requests represent approval workflows for creating delegations that require consent.
Identity Delegation Requests object
Attributes
object
StringString representing the object's type
id
StringUnique delegation request identifier.
status
EnumCurrent status of the delegation request.
denied_reason
EnumNullableReason the request ultimately resulted in a denied delegation.
requester
Objectidentity_id
StringIdentity targeted by the delegation request.
delegation
Objectexpires_at
DateTimestamp when the delegation request expires.
created_at
DateTimestamp when the delegation request was created.
{"object": "identity.delegation_request","id": "idr_2mNpQrStUvWxYzAb","status": "pending","denied_reason": "request_denied","requester": {"object": "identity.actor","id": "iac_6wQpLk2mZa8nYx4b","type": "person","status": "active","name": "Build Bot","description": "CI agent used for release automation","metadata": {},"agent_id": "agt_4mNoPq8rSt2uVx6y","created_at": "2026-02-03T10:15:00.000Z","updated_at": "2026-02-10T14:30:00.000Z"},"identity_id": "idn_5gHjKlMnPqRsTuVw","delegation": {"object": "identity.delegation","id": "idd_7gHjKlMnPqRsTuVw","status": "waiting_for_consent","denied_reason": "request_denied","delegation_level": 0,"permissions": ["provider:call","provider:call"],"attestation": {"object": "identity.delegation_attestation","id": "ida_3xYzAbCdEfGhIjKl","type": "api","created_at": "2026-02-03T10:15:00.000Z"},"note": "Temporary support access for incident triage","metadata": {},"identity": {"object": "identity#preview","id": "idn_5gHjKlMnPqRsTuVw","name": "Jane Doe","description": "Customer support engineer","metadata": {}},"delegation_config_id": "idc_2mNpQrStUvWxYzAb","parties": [{"object": "identity.delegation_party","id": "idp_4dEfGhJkLmNpQrSt","roles": ["owner","owner"],"actor": {"object": "identity.actor","id": "iac_6wQpLk2mZa8nYx4b","type": "person","status": "active","name": "Build Bot","description": "CI agent used for release automation","metadata": {},"agent_id": "agt_4mNoPq8rSt2uVx6y","created_at": "2026-02-03T10:15:00.000Z","updated_at": "2026-02-10T14:30:00.000Z"},"created_at": "2026-02-03T10:15:00.000Z"},{"object": "identity.delegation_party","id": "idp_4dEfGhJkLmNpQrSt","roles": ["owner","owner"],"actor": {"object": "identity.actor","id": "iac_6wQpLk2mZa8nYx4b","type": "person","status": "active","name": "Build Bot","description": "CI agent used for release automation","metadata": {},"agent_id": "agt_4mNoPq8rSt2uVx6y","created_at": "2026-02-03T10:15:00.000Z","updated_at": "2026-02-10T14:30:00.000Z"},"created_at": "2026-02-03T10:15:00.000Z"}],"request": {"object": "identity.delegation_request","id": "idr_2mNpQrStUvWxYzAb","status": "pending","denied_reason": "request_denied","requester": {"object": "identity.actor","id": "iac_6wQpLk2mZa8nYx4b","type": "person","status": "active","name": "Build Bot","description": "CI agent used for release automation","metadata": {},"agent_id": "agt_4mNoPq8rSt2uVx6y","created_at": "2026-02-03T10:15:00.000Z","updated_at": "2026-02-10T14:30:00.000Z"},"identity_id": "idn_5gHjKlMnPqRsTuVw","expires_at": "2026-03-03T10:15:00.000Z","created_at": "2026-02-03T10:15:00.000Z"},"credential_overrides": [{"object": "identity.delegation_credential_override","id": "idco_9pQrStUvWxYzAbCd","status": "active","permissions": ["provider:call","provider:call"],"credential_id": "icr_8vBnM4xZa2cDf7gH","created_at": "2026-02-03T10:15:00.000Z","expires_at": "2026-03-03T10:15:00.000Z"},{"object": "identity.delegation_credential_override","id": "idco_9pQrStUvWxYzAbCd","status": "active","permissions": ["provider:call","provider:call"],"credential_id": "icr_8vBnM4xZa2cDf7gH","created_at": "2026-02-03T10:15:00.000Z","expires_at": "2026-03-03T10:15:00.000Z"}],"created_at": "2026-02-03T10:15:00.000Z","expires_at": "2026-03-03T10:15:00.000Z","revoked_at": "2026-02-12T17:45:00.000Z"},"expires_at": "2026-03-03T10:15:00.000Z","created_at": "2026-02-03T10:15:00.000Z"}
List identity delegation requests
Returns a paginated list of identity delegation requests.
Query Parameters
limit
NumberOptionalafter
StringOptionalbefore
StringOptionalcursor
StringOptionalorder
EnumOptionalstatus
UnionOptionalFilter by one or more delegation request statuses.
id
UnionOptionalFilter by delegation request ID or IDs.
actor_id
UnionOptionalFilter by requester actor ID or IDs.
identity_id
UnionOptionalFilter by identity ID or IDs.
created_at
ObjectOptionalFilter identity delegation request creation time by date range
updated_at
ObjectOptionalFilter identity delegation request last update time by date range
curl -X GET "https://api.metorial.com/identity-delegation-requests" \-H "Authorization: Bearer metorial_sk_..."
Get identity delegation request
Retrieves a specific identity delegation request by ID.
URL Parameters
identity_delegation_request_id
StringThe unique identifier for the identity_delegation_request
Query Parameters
allow_deleted
BooleanOptionalReturn the request even if it has been deleted.
curl -X GET "https://api.metorial.com/identity-delegation-requests/ide_Rm4Mnheq2bfEPhBhP7SY" \-H "Authorization: Bearer metorial_sk_..."
Create identity delegation request
Creates a new identity delegation request.
Request Body
identity_id
StringIdentity to request delegation for.
requester_actor_id
StringActor requesting the delegation.
delegator_actor_id
StringOptionalActor submitting the request on behalf of the requester.
permissions
ArrayOptionalPermissions being requested.
expires_at
DateTimestamp when the request should expire.
delegation_config_id
StringOptionalDelegation config to use for the resulting delegation.
credential_overrides
ObjectOptionalOptional per-credential permission overrides.
note
StringOptionalOptional human-readable note for the request.
metadata
ObjectOptionalAdditional metadata to store on the request.
curl -X POST "https://api.metorial.com/identity-delegation-requests" \-H "Content-Type: application/json" \-H "Authorization: Bearer metorial_sk_..." \-d '{"identity_id": "example_identity_id","requester_actor_id": "example_requester_actor_id","delegator_actor_id": "example_delegator_actor_id","permissions": ["provider:call"],"expires_at": "2026-04-04T19:03:23.811Z","delegation_config_id": "example_delegation_config_id","credential_overrides": {"credential_id": "example_credential_id","permissions": ["provider:call"],"expires_at": "2026-04-04T19:03:23.811Z"},"note": "example_note","metadata": {}}'
Approve identity delegation request
Approves an existing identity delegation request.
URL Parameters
identity_delegation_request_id
StringThe unique identifier for the identity_delegation_request
Query Parameters
allow_deleted
BooleanOptionalAllow approving a request that is already deleted.
curl -X POST "https://api.metorial.com/identity-delegation-requests/ide_Rm4Mnheq2bfEPhBhP7SY/approve" \-H "Authorization: Bearer metorial_sk_..."
Deny identity delegation request
Denies an existing identity delegation request.
URL Parameters
identity_delegation_request_id
StringThe unique identifier for the identity_delegation_request
Query Parameters
allow_deleted
BooleanOptionalAllow denying a request that is already deleted.
curl -X POST "https://api.metorial.com/identity-delegation-requests/ide_Rm4Mnheq2bfEPhBhP7SY/deny" \-H "Authorization: Bearer metorial_sk_..."