Open source / Rust / MIT Field guide / indexed
Field guide / Identity APIReviewable source / main

Identity API

Identity governance: access-review campaigns, reviewer verdicts and recertification, AD computer lifecycle, gMSA lifecycle, file-share/NTFS recertification, and RBAC approval-model contracts.

51 routes

Response metadata: x-api-version, x-request-id, and traceresponse apply to normal routed responses and are omitted from the per-operation header tables below.

GET/api/identity/access-review-contract

request access

Access review contract.

Permissions

Access classCredentialScoping
requestAn authenticated session or API bearer token is required.The access class is enforced first; site and environment scopes narrow resources on scoped operations.

HTTP request

GET https://<your-host>/api/identity/access-review-contract

Path parameters

This operation has no path parameters.

Query parameters

This operation has no query parameters.

Request headers

NameTypeRequirementDescription
AuthorizationstringOptionalHuman credential alternative: supply one Bearer rys_... session token, ryk_... API token, or validated identity-provider JWT here. Do not combine it with X-Ryuki-Session-Id or the session cookie; conflicting carriers fail closed.
X-Ryuki-Session-IdstringOptionalOpaque rys_... session-token carrier used by the portal for mutations. Administrative session UUIDs cannot authenticate. Supply exactly one credential carrier per request.
traceparentstringOptionalOptional correlation input. When the second dash-separated segment has 32 characters, Ryuki reuses it as the request correlation identifier; this is not full W3C validation.

Request body

This operation does not accept a request body.

Response

StatusDescriptionBody
200OKValue

200 response body

Structure: Value.

NameTypeRequirementDescription
sourcestringRequiredOrigin or authority of the returned data.
providerCallsEnabledbooleanRequiredValue of providerCallsEnabled returned in the response body.
liveExecutionEnabledbooleanRequiredValue of liveExecutionEnabled returned in the response body.
endpointsarray<JSON value>RequiredValue of endpoints returned in the response body.

Errors

JSON failures use one of the platform error envelopes and include the request correlation metadata when routing reaches the API middleware. See Errors for the exact shapes, authentication failures, retry guidance, and transport-level exceptions.

Examples

Request

curl --silent --show-error --globoff \
  --request GET \
  --header 'Authorization: Bearer <token>' \
  'https://<your-host>/api/identity/access-review-contract'

Schematic response body

Illustrative shape generated from the extracted field types, not a recorded live response. Values are placeholders; null marks a field whose type could not be resolved.

Success status: 200

{
  "source": "<string>",
  "providerCallsEnabled": false,
  "liveExecutionEnabled": false,
  "endpoints": []
}

GET/api/identity/access-review-recertification-contract

request access

Identity access review.

Permissions

Access classCredentialScoping
requestAn authenticated session or API bearer token is required.The access class is enforced first; site and environment scopes narrow resources on scoped operations.

HTTP request

GET https://<your-host>/api/identity/access-review-recertification-contract

Path parameters

This operation has no path parameters.

Query parameters

This operation has no query parameters.

Request headers

NameTypeRequirementDescription
AuthorizationstringOptionalHuman credential alternative: supply one Bearer rys_... session token, ryk_... API token, or validated identity-provider JWT here. Do not combine it with X-Ryuki-Session-Id or the session cookie; conflicting carriers fail closed.
X-Ryuki-Session-IdstringOptionalOpaque rys_... session-token carrier used by the portal for mutations. Administrative session UUIDs cannot authenticate. Supply exactly one credential carrier per request.
traceparentstringOptionalOptional correlation input. When the second dash-separated segment has 32 characters, Ryuki reuses it as the request correlation identifier; this is not full W3C validation.

Request body

This operation does not accept a request body.

Response

StatusDescriptionBody
200OKValue

200 response body

Structure: Value.

NameTypeRequirementDescription
sourcestringRequiredOrigin or authority of the returned data.
reviewModestringRequiredValue of reviewMode returned in the response body.
providerCallsEnabledbooleanRequiredValue of providerCallsEnabled returned in the response body.
liveDirectoryChangesAllowedbooleanRequiredValue of liveDirectoryChangesAllowed returned in the response body.
liveServiceNowChangesAllowedbooleanRequiredValue of liveServiceNowChangesAllowed returned in the response body.
rawUserDataAllowedbooleanRequiredValue of rawUserDataAllowed returned in the response body.
rawGroupDataAllowedbooleanRequiredValue of rawGroupDataAllowed returned in the response body.
principalIdentifiersAllowedbooleanRequiredValue of principalIdentifiersAllowed returned in the response body.
tenantIdentifiersAllowedbooleanRequiredValue of tenantIdentifiersAllowed returned in the response body.
objectIdentifiersAllowedbooleanRequiredValue of objectIdentifiersAllowed returned in the response body.
rawProviderPayloadsAllowedbooleanRequiredValue of rawProviderPayloadsAllowed returned in the response body.
reviewScopesarray<JSON value>RequiredValue of reviewScopes returned in the response body.
reviewSignalsarray<JSON value>RequiredValue of reviewSignals returned in the response body.
requiredInputsarray<JSON value>RequiredValue of requiredInputs returned in the response body.
requiredGuardsarray<JSON value>RequiredValue of requiredGuards returned in the response body.
planSectionsarray<JSON value>RequiredValue of planSections returned in the response body.
blockedReasonsarray<JSON value>RequiredValue of blockedReasons returned in the response body.
requiredEvidencearray<JSON value>RequiredValue of requiredEvidence returned in the response body.
rulesarray<JSON value>RequiredValue of rules returned in the response body.

Errors

JSON failures use one of the platform error envelopes and include the request correlation metadata when routing reaches the API middleware. See Errors for the exact shapes, authentication failures, retry guidance, and transport-level exceptions.

Examples

Request

curl --silent --show-error --globoff \
  --request GET \
  --header 'Authorization: Bearer <token>' \
  'https://<your-host>/api/identity/access-review-recertification-contract'

Schematic response body

Illustrative shape generated from the extracted field types, not a recorded live response. Values are placeholders; null marks a field whose type could not be resolved.

Success status: 200

{
  "source": "<string>",
  "reviewMode": "<string>",
  "providerCallsEnabled": false,
  "liveDirectoryChangesAllowed": false,
  "liveServiceNowChangesAllowed": false,
  "rawUserDataAllowed": false,
  "rawGroupDataAllowed": false,
  "principalIdentifiersAllowed": false,
  "tenantIdentifiersAllowed": false,
  "objectIdentifiersAllowed": false,
  "rawProviderPayloadsAllowed": false,
  "reviewScopes": [],
  "reviewSignals": [],
  "requiredInputs": [],
  "requiredGuards": [],
  "planSections": [],
  "blockedReasons": [],
  "requiredEvidence": [],
  "rules": []
}

POST/api/identity/access-review/campaign

execute access

Create access campaign.

Permissions

Access classCredentialScoping
executeAn authenticated session or API bearer token is required.The access class is enforced first; site and environment scopes narrow resources on scoped operations.

HTTP request

POST https://<your-host>/api/identity/access-review/campaign

Path parameters

This operation has no path parameters.

Query parameters

This operation has no query parameters.

Request headers

NameTypeRequirementDescription
AuthorizationstringOptionalHuman credential alternative: supply one Bearer rys_... session token, ryk_... API token, or validated identity-provider JWT here. Do not combine it with X-Ryuki-Session-Id or the session cookie; conflicting carriers fail closed.
Content-TypestringRequiredRequired by the resolved Axum Json<T> request extractor; send application/json.
X-Ryuki-Session-IdstringOptionalOpaque rys_... session-token carrier used by the portal for mutations. Administrative session UUIDs cannot authenticate. Supply exactly one credential carrier per request.
Idempotency-KeystringOptionalOptional at-most-once retry key for human mutations. When omitted, the idempotency middleware passes the request through without deduplication.
traceparentstringOptionalOptional correlation input. When the second dash-separated segment has 32 characters, Ryuki reuses it as the request correlation identifier; this is not full W3C validation.

Request body

JSON structure: AccessCampaignCreateRequest.

NameTypeRequirementDescription
namestringRequiredClient-supplied name for the resource or operation.
reviewTypestringRequiredValue of reviewType in the JSON request body.
reviewerGroupstringRequiredValue of reviewerGroup in the JSON request body.
daysintegerRequiredValue of days in the JSON request body.

Response

StatusDescriptionBody
200OKValue

For 200, the known response body type is Value. Its field schema is unavailable, so no JSON shape is inferred.

Errors

JSON failures use one of the platform error envelopes and include the request correlation metadata when routing reaches the API middleware. See Errors for the exact shapes, authentication failures, retry guidance, and transport-level exceptions.

Examples

Request

curl --silent --show-error --globoff \
  --request POST \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --header 'Idempotency-Key: <idempotency-key>' \
  --data '{"name":"<string>","reviewType":"<string>","reviewerGroup":"<string>","days":0}' \
  'https://<your-host>/api/identity/access-review/campaign'

GET/api/identity/access-review/campaign/{id}

audit access

Get access campaign.

Permissions

Access classCredentialScoping
auditAn authenticated session or API bearer token is required.The access class is enforced first; site and environment scopes narrow resources on scoped operations.

HTTP request

GET https://<your-host>/api/identity/access-review/campaign/{id}

Path parameters

NameTypeRequirementDescription
idstringRequiredIdentifier of the target resource in the request path.

Query parameters

This operation has no query parameters.

Request headers

NameTypeRequirementDescription
AuthorizationstringOptionalHuman credential alternative: supply one Bearer rys_... session token, ryk_... API token, or validated identity-provider JWT here. Do not combine it with X-Ryuki-Session-Id or the session cookie; conflicting carriers fail closed.
X-Ryuki-Session-IdstringOptionalOpaque rys_... session-token carrier used by the portal for mutations. Administrative session UUIDs cannot authenticate. Supply exactly one credential carrier per request.
traceparentstringOptionalOptional correlation input. When the second dash-separated segment has 32 characters, Ryuki reuses it as the request correlation identifier; this is not full W3C validation.

Request body

This operation does not accept a request body.

Response

StatusDescriptionBody
200OKValue

For 200, the known response body type is Value. Its field schema is unavailable, so no JSON shape is inferred.

Errors

JSON failures use one of the platform error envelopes and include the request correlation metadata when routing reaches the API middleware. See Errors for the exact shapes, authentication failures, retry guidance, and transport-level exceptions.

Examples

Request

curl --silent --show-error --globoff \
  --request GET \
  --header 'Authorization: Bearer <token>' \
  'https://<your-host>/api/identity/access-review/campaign/<id>'

GET/api/identity/access-review/campaigns

audit access

List access campaigns.

Permissions

Access classCredentialScoping
auditAn authenticated session or API bearer token is required.The access class is enforced first; site and environment scopes narrow resources on scoped operations.

HTTP request

GET https://<your-host>/api/identity/access-review/campaigns

Path parameters

This operation has no path parameters.

Query parameters

NameTypeRequirementDescription
limitintegerOptionalMaximum number of results requested.
offsetintegerOptionalNumber of results to skip before returning the page.

Request headers

NameTypeRequirementDescription
AuthorizationstringOptionalHuman credential alternative: supply one Bearer rys_... session token, ryk_... API token, or validated identity-provider JWT here. Do not combine it with X-Ryuki-Session-Id or the session cookie; conflicting carriers fail closed.
X-Ryuki-Session-IdstringOptionalOpaque rys_... session-token carrier used by the portal for mutations. Administrative session UUIDs cannot authenticate. Supply exactly one credential carrier per request.
traceparentstringOptionalOptional correlation input. When the second dash-separated segment has 32 characters, Ryuki reuses it as the request correlation identifier; this is not full W3C validation.

Request body

This operation does not accept a request body.

Response

StatusDescriptionBody
200OKValue

200 response body

Structure: Value.

NameTypeRequirementDescription
sourcestringRequiredOrigin or authority of the returned data.
countJSON valueRequiredNumber of items represented in this response.
totalJSON valueRequiredTotal number of matching items before the returned page is applied.
limitJSON valueRequiredPage-size limit applied to this response.
offsetJSON valueRequiredNumber of matching items skipped before this response page.
campaignsJSON valueRequiredValue of campaigns returned in the response body.

Returns a paginated JSON object with total/limit/offset keys.

Errors

JSON failures use one of the platform error envelopes and include the request correlation metadata when routing reaches the API middleware. See Errors for the exact shapes, authentication failures, retry guidance, and transport-level exceptions.

Examples

Request

curl --silent --show-error --globoff \
  --request GET \
  --header 'Authorization: Bearer <token>' \
  'https://<your-host>/api/identity/access-review/campaigns'

Schematic response body

Illustrative shape generated from the extracted field types, not a recorded live response. Values are placeholders; null marks a field whose type could not be resolved.

Success status: 200

{
  "source": "<string>",
  "count": null,
  "total": null,
  "limit": null,
  "offset": null,
  "campaigns": null
}

GET/api/identity/access-review/due

audit access

Access reviews due.

Permissions

Access classCredentialScoping
auditAn authenticated session or API bearer token is required.The access class is enforced first; site and environment scopes narrow resources on scoped operations.

HTTP request

GET https://<your-host>/api/identity/access-review/due

Path parameters

This operation has no path parameters.

Query parameters

This operation has no query parameters.

Request headers

NameTypeRequirementDescription
AuthorizationstringOptionalHuman credential alternative: supply one Bearer rys_... session token, ryk_... API token, or validated identity-provider JWT here. Do not combine it with X-Ryuki-Session-Id or the session cookie; conflicting carriers fail closed.
X-Ryuki-Session-IdstringOptionalOpaque rys_... session-token carrier used by the portal for mutations. Administrative session UUIDs cannot authenticate. Supply exactly one credential carrier per request.
traceparentstringOptionalOptional correlation input. When the second dash-separated segment has 32 characters, Ryuki reuses it as the request correlation identifier; this is not full W3C validation.

Request body

This operation does not accept a request body.

Response

StatusDescriptionBody
200OKValue

For 200, the known response body type is Value. Its field schema is unavailable, so no JSON shape is inferred.

Errors

JSON failures use one of the platform error envelopes and include the request correlation metadata when routing reaches the API middleware. See Errors for the exact shapes, authentication failures, retry guidance, and transport-level exceptions.

Examples

Request

curl --silent --show-error --globoff \
  --request GET \
  --header 'Authorization: Bearer <token>' \
  'https://<your-host>/api/identity/access-review/due'

GET/api/identity/access-review/expiring

audit access

Access reviews expiring.

Permissions

Access classCredentialScoping
auditAn authenticated session or API bearer token is required.The access class is enforced first; site and environment scopes narrow resources on scoped operations.

HTTP request

GET https://<your-host>/api/identity/access-review/expiring

Path parameters

This operation has no path parameters.

Query parameters

NameTypeRequirementDescription
daysintegerOptionalValue supplied for the days query parameter.

Request headers

NameTypeRequirementDescription
AuthorizationstringOptionalHuman credential alternative: supply one Bearer rys_... session token, ryk_... API token, or validated identity-provider JWT here. Do not combine it with X-Ryuki-Session-Id or the session cookie; conflicting carriers fail closed.
X-Ryuki-Session-IdstringOptionalOpaque rys_... session-token carrier used by the portal for mutations. Administrative session UUIDs cannot authenticate. Supply exactly one credential carrier per request.
traceparentstringOptionalOptional correlation input. When the second dash-separated segment has 32 characters, Ryuki reuses it as the request correlation identifier; this is not full W3C validation.

Request body

This operation does not accept a request body.

Response

StatusDescriptionBody
200OKValue

For 200, the known response body type is Value. Its field schema is unavailable, so no JSON shape is inferred.

Errors

JSON failures use one of the platform error envelopes and include the request correlation metadata when routing reaches the API middleware. See Errors for the exact shapes, authentication failures, retry guidance, and transport-level exceptions.

Examples

Request

curl --silent --show-error --globoff \
  --request GET \
  --header 'Authorization: Bearer <token>' \
  'https://<your-host>/api/identity/access-review/expiring'

GET/api/identity/access-review/review/{id}

audit access

Get access review.

Permissions

Access classCredentialScoping
auditAn authenticated session or API bearer token is required.The access class is enforced first; site and environment scopes narrow resources on scoped operations.

HTTP request

GET https://<your-host>/api/identity/access-review/review/{id}

Path parameters

NameTypeRequirementDescription
idstringRequiredIdentifier of the target resource in the request path.

Query parameters

This operation has no query parameters.

Request headers

NameTypeRequirementDescription
AuthorizationstringOptionalHuman credential alternative: supply one Bearer rys_... session token, ryk_... API token, or validated identity-provider JWT here. Do not combine it with X-Ryuki-Session-Id or the session cookie; conflicting carriers fail closed.
X-Ryuki-Session-IdstringOptionalOpaque rys_... session-token carrier used by the portal for mutations. Administrative session UUIDs cannot authenticate. Supply exactly one credential carrier per request.
traceparentstringOptionalOptional correlation input. When the second dash-separated segment has 32 characters, Ryuki reuses it as the request correlation identifier; this is not full W3C validation.

Request body

This operation does not accept a request body.

Response

StatusDescriptionBody
200OKValue

For 200, the known response body type is Value. Its field schema is unavailable, so no JSON shape is inferred.

Errors

JSON failures use one of the platform error envelopes and include the request correlation metadata when routing reaches the API middleware. See Errors for the exact shapes, authentication failures, retry guidance, and transport-level exceptions.

Examples

Request

curl --silent --show-error --globoff \
  --request GET \
  --header 'Authorization: Bearer <token>' \
  'https://<your-host>/api/identity/access-review/review/<id>'

GET/api/identity/access-review/reviews

audit access

List access reviews.

Permissions

Access classCredentialScoping
auditAn authenticated session or API bearer token is required.The access class is enforced first; site and environment scopes narrow resources on scoped operations.

HTTP request

GET https://<your-host>/api/identity/access-review/reviews

Path parameters

This operation has no path parameters.

Query parameters

NameTypeRequirementDescription
sitestringOptionalSite identifier used to scope or filter the operation.
reviewTypestringOptionalValue supplied for the reviewType query parameter.
limitintegerOptionalMaximum number of results requested.
offsetintegerOptionalNumber of results to skip before returning the page.

Request headers

NameTypeRequirementDescription
AuthorizationstringOptionalHuman credential alternative: supply one Bearer rys_... session token, ryk_... API token, or validated identity-provider JWT here. Do not combine it with X-Ryuki-Session-Id or the session cookie; conflicting carriers fail closed.
X-Ryuki-Session-IdstringOptionalOpaque rys_... session-token carrier used by the portal for mutations. Administrative session UUIDs cannot authenticate. Supply exactly one credential carrier per request.
traceparentstringOptionalOptional correlation input. When the second dash-separated segment has 32 characters, Ryuki reuses it as the request correlation identifier; this is not full W3C validation.

Request body

This operation does not accept a request body.

Response

StatusDescriptionBody
200OKValue

For 200, the known response body type is Value. Its field schema is unavailable, so no JSON shape is inferred.

Returns a paginated JSON object with total/limit/offset keys.

Errors

JSON failures use one of the platform error envelopes and include the request correlation metadata when routing reaches the API middleware. See Errors for the exact shapes, authentication failures, retry guidance, and transport-level exceptions.

Examples

Request

curl --silent --show-error --globoff \
  --request GET \
  --header 'Authorization: Bearer <token>' \
  'https://<your-host>/api/identity/access-review/reviews'

GET/api/identity/access-review/summary

audit access

Access review summary.

Permissions

Access classCredentialScoping
auditAn authenticated session or API bearer token is required.The access class is enforced first; site and environment scopes narrow resources on scoped operations.

HTTP request

GET https://<your-host>/api/identity/access-review/summary

Path parameters

This operation has no path parameters.

Query parameters

This operation has no query parameters.

Request headers

NameTypeRequirementDescription
AuthorizationstringOptionalHuman credential alternative: supply one Bearer rys_... session token, ryk_... API token, or validated identity-provider JWT here. Do not combine it with X-Ryuki-Session-Id or the session cookie; conflicting carriers fail closed.
X-Ryuki-Session-IdstringOptionalOpaque rys_... session-token carrier used by the portal for mutations. Administrative session UUIDs cannot authenticate. Supply exactly one credential carrier per request.
traceparentstringOptionalOptional correlation input. When the second dash-separated segment has 32 characters, Ryuki reuses it as the request correlation identifier; this is not full W3C validation.

Request body

This operation does not accept a request body.

Response

StatusDescriptionBody
200OKValue

For 200, the known response body type is Value. Its field schema is unavailable, so no JSON shape is inferred.

Errors

JSON failures use one of the platform error envelopes and include the request correlation metadata when routing reaches the API middleware. See Errors for the exact shapes, authentication failures, retry guidance, and transport-level exceptions.

Examples

Request

curl --silent --show-error --globoff \
  --request GET \
  --header 'Authorization: Bearer <token>' \
  'https://<your-host>/api/identity/access-review/summary'

POST/api/identity/access-review/{id}/approve

approve access

Approve access review.

Permissions

Access classCredentialScoping
approveAn authenticated session or API bearer token is required.The access class is enforced first; site and environment scopes narrow resources on scoped operations.

HTTP request

POST https://<your-host>/api/identity/access-review/{id}/approve

Path parameters

NameTypeRequirementDescription
idstringRequiredIdentifier of the target resource in the request path.

Query parameters

This operation has no query parameters.

Request headers

NameTypeRequirementDescription
AuthorizationstringOptionalHuman credential alternative: supply one Bearer rys_... session token, ryk_... API token, or validated identity-provider JWT here. Do not combine it with X-Ryuki-Session-Id or the session cookie; conflicting carriers fail closed.
Content-TypestringRequiredRequired by the resolved Axum Json<T> request extractor; send application/json.
X-Ryuki-Session-IdstringOptionalOpaque rys_... session-token carrier used by the portal for mutations. Administrative session UUIDs cannot authenticate. Supply exactly one credential carrier per request.
Idempotency-KeystringOptionalOptional at-most-once retry key for human mutations. When omitted, the idempotency middleware passes the request through without deduplication.
traceparentstringOptionalOptional correlation input. When the second dash-separated segment has 32 characters, Ryuki reuses it as the request correlation identifier; this is not full W3C validation.

Request body

JSON structure: AccessReviewActionRequest.

NameTypeRequirementDescription
justificationstringOptionalValue of justification in the JSON request body.
reasonstringOptionalHuman-readable reason recorded with the operation and its audit trail.

Response

StatusDescriptionBody
200OKValue

For 200, the known response body type is Value. Its field schema is unavailable, so no JSON shape is inferred.

Errors

JSON failures use one of the platform error envelopes and include the request correlation metadata when routing reaches the API middleware. See Errors for the exact shapes, authentication failures, retry guidance, and transport-level exceptions.

Examples

Request

curl --silent --show-error --globoff \
  --request POST \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --header 'Idempotency-Key: <idempotency-key>' \
  --data '{}' \
  'https://<your-host>/api/identity/access-review/<id>/approve'

POST/api/identity/access-review/{id}/exempt

approve access

Access review exempt.

Permissions

Access classCredentialScoping
approveAn authenticated session or API bearer token is required.The access class is enforced first; site and environment scopes narrow resources on scoped operations.

HTTP request

POST https://<your-host>/api/identity/access-review/{id}/exempt

Path parameters

NameTypeRequirementDescription
idstringRequiredIdentifier of the target resource in the request path.

Query parameters

This operation has no query parameters.

Request headers

NameTypeRequirementDescription
AuthorizationstringOptionalHuman credential alternative: supply one Bearer rys_... session token, ryk_... API token, or validated identity-provider JWT here. Do not combine it with X-Ryuki-Session-Id or the session cookie; conflicting carriers fail closed.
Content-TypestringRequiredRequired by the resolved Axum Json<T> request extractor; send application/json.
X-Ryuki-Session-IdstringOptionalOpaque rys_... session-token carrier used by the portal for mutations. Administrative session UUIDs cannot authenticate. Supply exactly one credential carrier per request.
Idempotency-KeystringOptionalOptional at-most-once retry key for human mutations. When omitted, the idempotency middleware passes the request through without deduplication.
traceparentstringOptionalOptional correlation input. When the second dash-separated segment has 32 characters, Ryuki reuses it as the request correlation identifier; this is not full W3C validation.

Request body

JSON structure: AccessReviewExemptRequest.

NameTypeRequirementDescription
justificationstringRequiredValue of justification in the JSON request body.
exemptionExpirystringRequiredValue of exemptionExpiry in the JSON request body.

Response

StatusDescriptionBody
200OKValue

For 200, the known response body type is Value. Its field schema is unavailable, so no JSON shape is inferred.

Errors

JSON failures use one of the platform error envelopes and include the request correlation metadata when routing reaches the API middleware. See Errors for the exact shapes, authentication failures, retry guidance, and transport-level exceptions.

Examples

Request

curl --silent --show-error --globoff \
  --request POST \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --header 'Idempotency-Key: <idempotency-key>' \
  --data '{"justification":"<string>","exemptionExpiry":"<string>"}' \
  'https://<your-host>/api/identity/access-review/<id>/exempt'

POST/api/identity/access-review/{id}/revoke

approve access

Revoke access review.

Permissions

Access classCredentialScoping
approveAn authenticated session or API bearer token is required.The access class is enforced first; site and environment scopes narrow resources on scoped operations.

HTTP request

POST https://<your-host>/api/identity/access-review/{id}/revoke

Path parameters

NameTypeRequirementDescription
idstringRequiredIdentifier of the target resource in the request path.

Query parameters

This operation has no query parameters.

Request headers

NameTypeRequirementDescription
AuthorizationstringOptionalHuman credential alternative: supply one Bearer rys_... session token, ryk_... API token, or validated identity-provider JWT here. Do not combine it with X-Ryuki-Session-Id or the session cookie; conflicting carriers fail closed.
Content-TypestringRequiredRequired by the resolved Axum Json<T> request extractor; send application/json.
X-Ryuki-Session-IdstringOptionalOpaque rys_... session-token carrier used by the portal for mutations. Administrative session UUIDs cannot authenticate. Supply exactly one credential carrier per request.
Idempotency-KeystringOptionalOptional at-most-once retry key for human mutations. When omitted, the idempotency middleware passes the request through without deduplication.
traceparentstringOptionalOptional correlation input. When the second dash-separated segment has 32 characters, Ryuki reuses it as the request correlation identifier; this is not full W3C validation.

Request body

JSON structure: AccessReviewActionRequest.

NameTypeRequirementDescription
justificationstringOptionalValue of justification in the JSON request body.
reasonstringOptionalHuman-readable reason recorded with the operation and its audit trail.

Response

StatusDescriptionBody
200OKValue

For 200, the known response body type is Value. Its field schema is unavailable, so no JSON shape is inferred.

Errors

JSON failures use one of the platform error envelopes and include the request correlation metadata when routing reaches the API middleware. See Errors for the exact shapes, authentication failures, retry guidance, and transport-level exceptions.

Examples

Request

curl --silent --show-error --globoff \
  --request POST \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --header 'Idempotency-Key: <idempotency-key>' \
  --data '{}' \
  'https://<your-host>/api/identity/access-review/<id>/revoke'

POST/api/identity/access-review/{id}/start

approve access

Start access review.

Permissions

Access classCredentialScoping
approveAn authenticated session or API bearer token is required.The access class is enforced first; site and environment scopes narrow resources on scoped operations.

HTTP request

POST https://<your-host>/api/identity/access-review/{id}/start

Path parameters

NameTypeRequirementDescription
idstringRequiredIdentifier of the target resource in the request path.

Query parameters

This operation has no query parameters.

Request headers

NameTypeRequirementDescription
AuthorizationstringOptionalHuman credential alternative: supply one Bearer rys_... session token, ryk_... API token, or validated identity-provider JWT here. Do not combine it with X-Ryuki-Session-Id or the session cookie; conflicting carriers fail closed.
X-Ryuki-Session-IdstringOptionalOpaque rys_... session-token carrier used by the portal for mutations. Administrative session UUIDs cannot authenticate. Supply exactly one credential carrier per request.
Idempotency-KeystringOptionalOptional at-most-once retry key for human mutations. When omitted, the idempotency middleware passes the request through without deduplication.
traceparentstringOptionalOptional correlation input. When the second dash-separated segment has 32 characters, Ryuki reuses it as the request correlation identifier; this is not full W3C validation.

Request body

This operation does not accept a request body.

Response

StatusDescriptionBody
200OKValue

For 200, the known response body type is Value. Its field schema is unavailable, so no JSON shape is inferred.

Errors

JSON failures use one of the platform error envelopes and include the request correlation metadata when routing reaches the API middleware. See Errors for the exact shapes, authentication failures, retry guidance, and transport-level exceptions.

Examples

Request

curl --silent --show-error --globoff \
  --request POST \
  --header 'Authorization: Bearer <token>' \
  --header 'Idempotency-Key: <idempotency-key>' \
  'https://<your-host>/api/identity/access-review/<id>/start'

GET/api/identity/ad-computer-contract

request access

Ad computer contract.

Permissions

Access classCredentialScoping
requestAn authenticated session or API bearer token is required.The access class is enforced first; site and environment scopes narrow resources on scoped operations.

HTTP request

GET https://<your-host>/api/identity/ad-computer-contract

Path parameters

This operation has no path parameters.

Query parameters

This operation has no query parameters.

Request headers

NameTypeRequirementDescription
AuthorizationstringOptionalHuman credential alternative: supply one Bearer rys_... session token, ryk_... API token, or validated identity-provider JWT here. Do not combine it with X-Ryuki-Session-Id or the session cookie; conflicting carriers fail closed.
X-Ryuki-Session-IdstringOptionalOpaque rys_... session-token carrier used by the portal for mutations. Administrative session UUIDs cannot authenticate. Supply exactly one credential carrier per request.
traceparentstringOptionalOptional correlation input. When the second dash-separated segment has 32 characters, Ryuki reuses it as the request correlation identifier; this is not full W3C validation.

Request body

This operation does not accept a request body.

Response

StatusDescriptionBody
200OKValue

200 response body

Structure: Value.

NameTypeRequirementDescription
sourcestringRequiredOrigin or authority of the returned data.
providerCallsEnabledbooleanRequiredValue of providerCallsEnabled returned in the response body.
liveExecutionAllowedbooleanRequiredValue of liveExecutionAllowed returned in the response body.
dryRunRequiredbooleanRequiredValue of dryRunRequired returned in the response body.
lifecycleModesarray<JSON value>RequiredValue of lifecycleModes returned in the response body.
computerStatusesarray<JSON value>RequiredValue of computerStatuses returned in the response body.
supportedOsarray<JSON value>RequiredValue of supportedOs returned in the response body.
validSitesJSON valueRequiredValue of validSites returned in the response body.
namingPatternstringRequiredValue of namingPattern returned in the response body.
validRolesarray<JSON value>RequiredValue of validRoles returned in the response body.
namespacePolicyVersionJSON valueRequiredValue of namespacePolicyVersion returned in the response body.
ouAuthoritystringRequiredValue of ouAuthority returned in the response body.
siteScopedOuClassesarray<JSON value>RequiredValue of siteScopedOuClasses returned in the response body.
quarantineRecoveryGuardsarray<JSON value>RequiredValue of quarantineRecoveryGuards returned in the response body.
requiredInputsarray<JSON value>RequiredValue of requiredInputs returned in the response body.
blockedReasonsarray<JSON value>RequiredValue of blockedReasons returned in the response body.
examplesJSON valueRequiredValue of examples returned in the response body.

Errors

JSON failures use one of the platform error envelopes and include the request correlation metadata when routing reaches the API middleware. See Errors for the exact shapes, authentication failures, retry guidance, and transport-level exceptions.

Examples

Request

curl --silent --show-error --globoff \
  --request GET \
  --header 'Authorization: Bearer <token>' \
  'https://<your-host>/api/identity/ad-computer-contract'

Schematic response body

Illustrative shape generated from the extracted field types, not a recorded live response. Values are placeholders; null marks a field whose type could not be resolved.

Success status: 200

{
  "source": "<string>",
  "providerCallsEnabled": false,
  "liveExecutionAllowed": false,
  "dryRunRequired": false,
  "lifecycleModes": [],
  "computerStatuses": [],
  "supportedOs": [],
  "validSites": null,
  "namingPattern": "<string>",
  "validRoles": [],
  "namespacePolicyVersion": null,
  "ouAuthority": "<string>",
  "siteScopedOuClasses": [],
  "quarantineRecoveryGuards": [],
  "requiredInputs": [],
  "blockedReasons": [],
  "examples": null
}

GET/api/identity/ad-computer-lifecycle-contract

request access

Identity ad computer.

Permissions

Access classCredentialScoping
requestAn authenticated session or API bearer token is required.The access class is enforced first; site and environment scopes narrow resources on scoped operations.

HTTP request

GET https://<your-host>/api/identity/ad-computer-lifecycle-contract

Path parameters

This operation has no path parameters.

Query parameters

This operation has no query parameters.

Request headers

NameTypeRequirementDescription
AuthorizationstringOptionalHuman credential alternative: supply one Bearer rys_... session token, ryk_... API token, or validated identity-provider JWT here. Do not combine it with X-Ryuki-Session-Id or the session cookie; conflicting carriers fail closed.
X-Ryuki-Session-IdstringOptionalOpaque rys_... session-token carrier used by the portal for mutations. Administrative session UUIDs cannot authenticate. Supply exactly one credential carrier per request.
traceparentstringOptionalOptional correlation input. When the second dash-separated segment has 32 characters, Ryuki reuses it as the request correlation identifier; this is not full W3C validation.

Request body

This operation does not accept a request body.

Response

StatusDescriptionBody
200OKValue

200 response body

Structure: Value.

NameTypeRequirementDescription
sourcestringRequiredOrigin or authority of the returned data.
lifecycleModestringRequiredValue of lifecycleMode returned in the response body.
providerCallsEnabledbooleanRequiredValue of providerCallsEnabled returned in the response body.
workerExecutionAllowedbooleanRequiredValue of workerExecutionAllowed returned in the response body.
liveDirectoryChangesAllowedbooleanRequiredValue of liveDirectoryChangesAllowed returned in the response body.
computerPrestageAllowedbooleanRequiredValue of computerPrestageAllowed returned in the response body.
computerMoveAllowedbooleanRequiredValue of computerMoveAllowed returned in the response body.
computerDisableAllowedbooleanRequiredValue of computerDisableAllowed returned in the response body.
computerDeleteAllowedbooleanRequiredValue of computerDeleteAllowed returned in the response body.
computerRecoverAllowedbooleanRequiredValue of computerRecoverAllowed returned in the response body.
rawComputerDataAllowedbooleanRequiredValue of rawComputerDataAllowed returned in the response body.
principalIdentifiersAllowedbooleanRequiredValue of principalIdentifiersAllowed returned in the response body.
platformStateQuarantineRecoveryReviewAllowedbooleanRequiredValue of platformStateQuarantineRecoveryReviewAllowed returned in the response body.
quarantineRecoveryRequiresMakerCheckerbooleanRequiredValue of quarantineRecoveryRequiresMakerChecker returned in the response body.
distinguishedNamesAllowedbooleanRequiredValue of distinguishedNamesAllowed returned in the response body.
domainIdentifiersAllowedbooleanRequiredValue of domainIdentifiersAllowed returned in the response body.
objectIdentifiersAllowedbooleanRequiredValue of objectIdentifiersAllowed returned in the response body.
securityIdentifiersAllowedbooleanRequiredValue of securityIdentifiersAllowed returned in the response body.
computerIdentifiersAllowedbooleanRequiredValue of computerIdentifiersAllowed returned in the response body.
rawProviderPayloadsAllowedbooleanRequiredValue of rawProviderPayloadsAllowed returned in the response body.
lifecycleActionsarray<JSON value>RequiredValue of lifecycleActions returned in the response body.
lifecycleSignalsarray<JSON value>RequiredValue of lifecycleSignals returned in the response body.
requiredInputsarray<JSON value>RequiredValue of requiredInputs returned in the response body.
requiredGuardsarray<JSON value>RequiredValue of requiredGuards returned in the response body.
planSectionsarray<JSON value>RequiredValue of planSections returned in the response body.
blockedReasonsarray<JSON value>RequiredValue of blockedReasons returned in the response body.
requiredEvidencearray<JSON value>RequiredValue of requiredEvidence returned in the response body.

Errors

JSON failures use one of the platform error envelopes and include the request correlation metadata when routing reaches the API middleware. See Errors for the exact shapes, authentication failures, retry guidance, and transport-level exceptions.

Examples

Request

curl --silent --show-error --globoff \
  --request GET \
  --header 'Authorization: Bearer <token>' \
  'https://<your-host>/api/identity/ad-computer-lifecycle-contract'

Schematic response body

Illustrative shape generated from the extracted field types, not a recorded live response. Values are placeholders; null marks a field whose type could not be resolved.

Success status: 200

{
  "source": "<string>",
  "lifecycleMode": "<string>",
  "providerCallsEnabled": false,
  "workerExecutionAllowed": false,
  "liveDirectoryChangesAllowed": false,
  "computerPrestageAllowed": false,
  "computerMoveAllowed": false,
  "computerDisableAllowed": false,
  "computerDeleteAllowed": false,
  "computerRecoverAllowed": false,
  "rawComputerDataAllowed": false,
  "principalIdentifiersAllowed": false,
  "platformStateQuarantineRecoveryReviewAllowed": false,
  "quarantineRecoveryRequiresMakerChecker": false,
  "distinguishedNamesAllowed": false,
  "domainIdentifiersAllowed": false,
  "objectIdentifiersAllowed": false,
  "securityIdentifiersAllowed": false,
  "computerIdentifiersAllowed": false,
  "rawProviderPayloadsAllowed": false,
  "lifecycleActions": [],
  "lifecycleSignals": [],
  "requiredInputs": [],
  "requiredGuards": [],
  "planSections": [],
  "blockedReasons": [],
  "requiredEvidence": []
}

GET/api/identity/ad/computer/{name}

audit access

Fetch a single AD computer by its unique name (#39).

The write-by-name handlers (move/disable/enable/delete) all read the same row first; this exposes that lookup as a first-class read so an operator can inspect one computer without a bulk reconcile scan. 404 when unknown, 503 when no DB. Authn-gated and site-scoped (#2): a principal scoped to another site gets a 404 (no existence oracle), consistent with the AD write-by-name handlers (move/disable/enable/delete).

Permissions

Access classCredentialScoping
auditAn authenticated session or API bearer token is required.The access class is enforced first; site and environment scopes narrow resources on scoped operations.

HTTP request

GET https://<your-host>/api/identity/ad/computer/{name}

Path parameters

NameTypeRequirementDescription
namestringRequiredValue of the name request-path segment.

Query parameters

This operation has no query parameters.

Request headers

NameTypeRequirementDescription
AuthorizationstringOptionalHuman credential alternative: supply one Bearer rys_... session token, ryk_... API token, or validated identity-provider JWT here. Do not combine it with X-Ryuki-Session-Id or the session cookie; conflicting carriers fail closed.
X-Ryuki-Session-IdstringOptionalOpaque rys_... session-token carrier used by the portal for mutations. Administrative session UUIDs cannot authenticate. Supply exactly one credential carrier per request.
traceparentstringOptionalOptional correlation input. When the second dash-separated segment has 32 characters, Ryuki reuses it as the request correlation identifier; this is not full W3C validation.

Request body

This operation does not accept a request body.

Response

StatusDescriptionBody
200OKValue

For 200, the known response body type is Value. Its field schema is unavailable, so no JSON shape is inferred.

Errors

JSON failures use one of the platform error envelopes and include the request correlation metadata when routing reaches the API middleware. See Errors for the exact shapes, authentication failures, retry guidance, and transport-level exceptions.

Examples

Request

curl --silent --show-error --globoff \
  --request GET \
  --header 'Authorization: Bearer <token>' \
  'https://<your-host>/api/identity/ad/computer/<name>'

POST/api/identity/ad/delete/{name}

identity.ad-computer.delete access

Delete ad.

Permissions

Access classCredentialScoping
identity.ad-computer.deleteAn authenticated session or API bearer token is required.The access class is enforced first; site and environment scopes narrow resources on scoped operations.

HTTP request

POST https://<your-host>/api/identity/ad/delete/{name}

Path parameters

NameTypeRequirementDescription
namestringRequiredValue of the name request-path segment.

Query parameters

This operation has no query parameters.

Request headers

NameTypeRequirementDescription
AuthorizationstringOptionalHuman credential alternative: supply one Bearer rys_... session token, ryk_... API token, or validated identity-provider JWT here. Do not combine it with X-Ryuki-Session-Id or the session cookie; conflicting carriers fail closed.
X-Ryuki-Session-IdstringOptionalOpaque rys_... session-token carrier used by the portal for mutations. Administrative session UUIDs cannot authenticate. Supply exactly one credential carrier per request.
Idempotency-KeystringOptionalOptional at-most-once retry key for human mutations. When omitted, the idempotency middleware passes the request through without deduplication.
traceparentstringOptionalOptional correlation input. When the second dash-separated segment has 32 characters, Ryuki reuses it as the request correlation identifier; this is not full W3C validation.

Request body

This operation does not accept a request body.

Response

StatusDescriptionBody
200OKValue

For 200, the known response body type is Value. Its field schema is unavailable, so no JSON shape is inferred.

Errors

JSON failures use one of the platform error envelopes and include the request correlation metadata when routing reaches the API middleware. See Errors for the exact shapes, authentication failures, retry guidance, and transport-level exceptions.

Examples

Request

curl --silent --show-error --globoff \
  --request POST \
  --header 'Authorization: Bearer <token>' \
  --header 'Idempotency-Key: <idempotency-key>' \
  'https://<your-host>/api/identity/ad/delete/<name>'

POST/api/identity/ad/disable/{name}

execute access

Disable ad.

Permissions

Access classCredentialScoping
executeAn authenticated session or API bearer token is required.The access class is enforced first; site and environment scopes narrow resources on scoped operations.

HTTP request

POST https://<your-host>/api/identity/ad/disable/{name}

Path parameters

NameTypeRequirementDescription
namestringRequiredValue of the name request-path segment.

Query parameters

This operation has no query parameters.

Request headers

NameTypeRequirementDescription
AuthorizationstringOptionalHuman credential alternative: supply one Bearer rys_... session token, ryk_... API token, or validated identity-provider JWT here. Do not combine it with X-Ryuki-Session-Id or the session cookie; conflicting carriers fail closed.
Content-TypestringRequiredRequired by the resolved Axum Json<T> request extractor; send application/json.
X-Ryuki-Session-IdstringOptionalOpaque rys_... session-token carrier used by the portal for mutations. Administrative session UUIDs cannot authenticate. Supply exactly one credential carrier per request.
Idempotency-KeystringOptionalOptional at-most-once retry key for human mutations. When omitted, the idempotency middleware passes the request through without deduplication.
traceparentstringOptionalOptional correlation input. When the second dash-separated segment has 32 characters, Ryuki reuses it as the request correlation identifier; this is not full W3C validation.

Request body

JSON structure: AdDisableRequest.

NameTypeRequirementDescription
reasonstringRequiredHuman-readable reason recorded with the operation and its audit trail.

Response

StatusDescriptionBody
200OKValue

For 200, the known response body type is Value. Its field schema is unavailable, so no JSON shape is inferred.

Errors

JSON failures use one of the platform error envelopes and include the request correlation metadata when routing reaches the API middleware. See Errors for the exact shapes, authentication failures, retry guidance, and transport-level exceptions.

Examples

Request

curl --silent --show-error --globoff \
  --request POST \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --header 'Idempotency-Key: <idempotency-key>' \
  --data '{"reason":"<string>"}' \
  'https://<your-host>/api/identity/ad/disable/<name>'

POST/api/identity/ad/enable/{name}

execute access

Enable ad.

Permissions

Access classCredentialScoping
executeAn authenticated session or API bearer token is required.The access class is enforced first; site and environment scopes narrow resources on scoped operations.

HTTP request

POST https://<your-host>/api/identity/ad/enable/{name}

Path parameters

NameTypeRequirementDescription
namestringRequiredValue of the name request-path segment.

Query parameters

This operation has no query parameters.

Request headers

NameTypeRequirementDescription
AuthorizationstringOptionalHuman credential alternative: supply one Bearer rys_... session token, ryk_... API token, or validated identity-provider JWT here. Do not combine it with X-Ryuki-Session-Id or the session cookie; conflicting carriers fail closed.
X-Ryuki-Session-IdstringOptionalOpaque rys_... session-token carrier used by the portal for mutations. Administrative session UUIDs cannot authenticate. Supply exactly one credential carrier per request.
Idempotency-KeystringOptionalOptional at-most-once retry key for human mutations. When omitted, the idempotency middleware passes the request through without deduplication.
traceparentstringOptionalOptional correlation input. When the second dash-separated segment has 32 characters, Ryuki reuses it as the request correlation identifier; this is not full W3C validation.

Request body

This operation does not accept a request body.

Response

StatusDescriptionBody
200OKValue

For 200, the known response body type is Value. Its field schema is unavailable, so no JSON shape is inferred.

Errors

JSON failures use one of the platform error envelopes and include the request correlation metadata when routing reaches the API middleware. See Errors for the exact shapes, authentication failures, retry guidance, and transport-level exceptions.

Examples

Request

curl --silent --show-error --globoff \
  --request POST \
  --header 'Authorization: Bearer <token>' \
  --header 'Idempotency-Key: <idempotency-key>' \
  'https://<your-host>/api/identity/ad/enable/<name>'

POST/api/identity/ad/move/{name}

execute access

Ad move.

Permissions

Access classCredentialScoping
executeAn authenticated session or API bearer token is required.The access class is enforced first; site and environment scopes narrow resources on scoped operations.

HTTP request

POST https://<your-host>/api/identity/ad/move/{name}

Path parameters

NameTypeRequirementDescription
namestringRequiredValue of the name request-path segment.

Query parameters

This operation has no query parameters.

Request headers

NameTypeRequirementDescription
AuthorizationstringOptionalHuman credential alternative: supply one Bearer rys_... session token, ryk_... API token, or validated identity-provider JWT here. Do not combine it with X-Ryuki-Session-Id or the session cookie; conflicting carriers fail closed.
Content-TypestringRequiredRequired by the resolved Axum Json<T> request extractor; send application/json.
X-Ryuki-Session-IdstringOptionalOpaque rys_... session-token carrier used by the portal for mutations. Administrative session UUIDs cannot authenticate. Supply exactly one credential carrier per request.
Idempotency-KeystringOptionalOptional at-most-once retry key for human mutations. When omitted, the idempotency middleware passes the request through without deduplication.
traceparentstringOptionalOptional correlation input. When the second dash-separated segment has 32 characters, Ryuki reuses it as the request correlation identifier; this is not full W3C validation.

Request body

JSON structure: AdMoveRequest.

NameTypeRequirementDescription
targetOustringRequiredValue of targetOu in the JSON request body.

Response

StatusDescriptionBody
200OKValue

For 200, the known response body type is Value. Its field schema is unavailable, so no JSON shape is inferred.

Errors

JSON failures use one of the platform error envelopes and include the request correlation metadata when routing reaches the API middleware. See Errors for the exact shapes, authentication failures, retry guidance, and transport-level exceptions.

Examples

Request

curl --silent --show-error --globoff \
  --request POST \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --header 'Idempotency-Key: <idempotency-key>' \
  --data '{"targetOu":"<string>"}' \
  'https://<your-host>/api/identity/ad/move/<name>'

GET/api/identity/ad/orphaned

audit access

Ad orphaned.

Permissions

Access classCredentialScoping
auditAn authenticated session or API bearer token is required.The access class is enforced first; site and environment scopes narrow resources on scoped operations.

HTTP request

GET https://<your-host>/api/identity/ad/orphaned

Path parameters

This operation has no path parameters.

Query parameters

NameTypeRequirementDescription
sitestringOptionalSite identifier used to scope or filter the operation.

Request headers

NameTypeRequirementDescription
AuthorizationstringOptionalHuman credential alternative: supply one Bearer rys_... session token, ryk_... API token, or validated identity-provider JWT here. Do not combine it with X-Ryuki-Session-Id or the session cookie; conflicting carriers fail closed.
X-Ryuki-Session-IdstringOptionalOpaque rys_... session-token carrier used by the portal for mutations. Administrative session UUIDs cannot authenticate. Supply exactly one credential carrier per request.
traceparentstringOptionalOptional correlation input. When the second dash-separated segment has 32 characters, Ryuki reuses it as the request correlation identifier; this is not full W3C validation.

Request body

This operation does not accept a request body.

Response

StatusDescriptionBody
200OKValue

For 200, the known response body type is Value. Its field schema is unavailable, so no JSON shape is inferred.

Errors

JSON failures use one of the platform error envelopes and include the request correlation metadata when routing reaches the API middleware. See Errors for the exact shapes, authentication failures, retry guidance, and transport-level exceptions.

Examples

Request

curl --silent --show-error --globoff \
  --request GET \
  --header 'Authorization: Bearer <token>' \
  'https://<your-host>/api/identity/ad/orphaned'

POST/api/identity/ad/prestage

execute access

Ad prestage.

Permissions

Access classCredentialScoping
executeAn authenticated session or API bearer token is required.The access class is enforced first; site and environment scopes narrow resources on scoped operations.

HTTP request

POST https://<your-host>/api/identity/ad/prestage

Path parameters

This operation has no path parameters.

Query parameters

This operation has no query parameters.

Request headers

NameTypeRequirementDescription
AuthorizationstringOptionalHuman credential alternative: supply one Bearer rys_... session token, ryk_... API token, or validated identity-provider JWT here. Do not combine it with X-Ryuki-Session-Id or the session cookie; conflicting carriers fail closed.
Content-TypestringRequiredRequired by the resolved Axum Json<T> request extractor; send application/json.
X-Ryuki-Session-IdstringOptionalOpaque rys_... session-token carrier used by the portal for mutations. Administrative session UUIDs cannot authenticate. Supply exactly one credential carrier per request.
Idempotency-KeystringOptionalOptional at-most-once retry key for human mutations. When omitted, the idempotency middleware passes the request through without deduplication.
traceparentstringOptionalOptional correlation input. When the second dash-separated segment has 32 characters, Ryuki reuses it as the request correlation identifier; this is not full W3C validation.

Request body

JSON structure: AdPrestageRequest.

NameTypeRequirementDescription
namestringRequiredClient-supplied name for the resource or operation.
sitestringRequiredSite code targeted by the request.
ouPathstringRequiredValue of ouPath in the JSON request body.

Response

StatusDescriptionBody
200OKValue

For 200, the known response body type is Value. Its field schema is unavailable, so no JSON shape is inferred.

Errors

JSON failures use one of the platform error envelopes and include the request correlation metadata when routing reaches the API middleware. See Errors for the exact shapes, authentication failures, retry guidance, and transport-level exceptions.

Examples

Request

curl --silent --show-error --globoff \
  --request POST \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --header 'Idempotency-Key: <idempotency-key>' \
  --data '{"name":"<string>","site":"<string>","ouPath":"<string>"}' \
  'https://<your-host>/api/identity/ad/prestage'

POST/api/identity/ad/quarantine-recovery/apply/{review_id}

execute access

Apply a separately approved review.

The computer CAS, review state change, and security audit append share one transaction; the DB trigger independently rejects every other Quarantined -> non-Quarantined transition.

Permissions

Access classCredentialScoping
executeAn authenticated session or API bearer token is required.The access class is enforced first; site and environment scopes narrow resources on scoped operations.

HTTP request

POST https://<your-host>/api/identity/ad/quarantine-recovery/apply/{review_id}

Path parameters

NameTypeRequirementDescription
review_idstringRequiredIdentifier of the target resource in the request path.

Query parameters

This operation has no query parameters.

Request headers

NameTypeRequirementDescription
AuthorizationstringOptionalHuman credential alternative: supply one Bearer rys_... session token, ryk_... API token, or validated identity-provider JWT here. Do not combine it with X-Ryuki-Session-Id or the session cookie; conflicting carriers fail closed.
X-Ryuki-Session-IdstringOptionalOpaque rys_... session-token carrier used by the portal for mutations. Administrative session UUIDs cannot authenticate. Supply exactly one credential carrier per request.
Idempotency-KeystringOptionalOptional at-most-once retry key for human mutations. When omitted, the idempotency middleware passes the request through without deduplication.
traceparentstringOptionalOptional correlation input. When the second dash-separated segment has 32 characters, Ryuki reuses it as the request correlation identifier; this is not full W3C validation.

Request body

This operation does not accept a request body.

Response

StatusDescriptionBody
200OKValue

For 200, the known response body type is Value. Its field schema is unavailable, so no JSON shape is inferred.

Errors

JSON failures use one of the platform error envelopes and include the request correlation metadata when routing reaches the API middleware. See Errors for the exact shapes, authentication failures, retry guidance, and transport-level exceptions.

Examples

Request

curl --silent --show-error --globoff \
  --request POST \
  --header 'Authorization: Bearer <token>' \
  --header 'Idempotency-Key: <idempotency-key>' \
  'https://<your-host>/api/identity/ad/quarantine-recovery/apply/<review_id>'

POST/api/identity/ad/quarantine-recovery/approve/{review_id}

execute access

Approve a fresh recovery review.

Admin authority is checked before any lookup, and maker-checker separation is repeated in SQL.

Permissions

Access classCredentialScoping
executeAn authenticated session or API bearer token is required.The access class is enforced first; site and environment scopes narrow resources on scoped operations.

HTTP request

POST https://<your-host>/api/identity/ad/quarantine-recovery/approve/{review_id}

Path parameters

NameTypeRequirementDescription
review_idstringRequiredIdentifier of the target resource in the request path.

Query parameters

This operation has no query parameters.

Request headers

NameTypeRequirementDescription
AuthorizationstringOptionalHuman credential alternative: supply one Bearer rys_... session token, ryk_... API token, or validated identity-provider JWT here. Do not combine it with X-Ryuki-Session-Id or the session cookie; conflicting carriers fail closed.
X-Ryuki-Session-IdstringOptionalOpaque rys_... session-token carrier used by the portal for mutations. Administrative session UUIDs cannot authenticate. Supply exactly one credential carrier per request.
Idempotency-KeystringOptionalOptional at-most-once retry key for human mutations. When omitted, the idempotency middleware passes the request through without deduplication.
traceparentstringOptionalOptional correlation input. When the second dash-separated segment has 32 characters, Ryuki reuses it as the request correlation identifier; this is not full W3C validation.

Request body

This operation does not accept a request body.

Response

StatusDescriptionBody
200OKValue

200 response body

Structure: Value.

NameTypeRequirementDescription
reviewIdJSON valueRequiredValue of reviewId returned in the response body.
stateJSON valueRequiredValue of state returned in the response body.
approvedAtJSON valueRequiredValue of approvedAt returned in the response body.
dryRunbooleanRequiredValue of dryRun returned in the response body.

Errors

JSON failures use one of the platform error envelopes and include the request correlation metadata when routing reaches the API middleware. See Errors for the exact shapes, authentication failures, retry guidance, and transport-level exceptions.

Examples

Request

curl --silent --show-error --globoff \
  --request POST \
  --header 'Authorization: Bearer <token>' \
  --header 'Idempotency-Key: <idempotency-key>' \
  'https://<your-host>/api/identity/ad/quarantine-recovery/approve/<review_id>'

Schematic response body

Illustrative shape generated from the extracted field types, not a recorded live response. Values are placeholders; null marks a field whose type could not be resolved.

Success status: 200

{
  "reviewId": null,
  "state": null,
  "approvedAt": null,
  "dryRun": false
}

POST/api/identity/ad/quarantine-recovery/review/{name}

execute access

Create the maker side of an AD quarantine recovery review.

The ordinary execute-capable operator may request recovery, but cannot approve or apply it. Actor provenance is always taken from the verified session.

Permissions

Access classCredentialScoping
executeAn authenticated session or API bearer token is required.The access class is enforced first; site and environment scopes narrow resources on scoped operations.

HTTP request

POST https://<your-host>/api/identity/ad/quarantine-recovery/review/{name}

Path parameters

NameTypeRequirementDescription
namestringRequiredValue of the name request-path segment.

Query parameters

This operation has no query parameters.

Request headers

NameTypeRequirementDescription
AuthorizationstringOptionalHuman credential alternative: supply one Bearer rys_... session token, ryk_... API token, or validated identity-provider JWT here. Do not combine it with X-Ryuki-Session-Id or the session cookie; conflicting carriers fail closed.
Content-TypestringRequiredRequired by the resolved Axum Json<T> request extractor; send application/json.
X-Ryuki-Session-IdstringOptionalOpaque rys_... session-token carrier used by the portal for mutations. Administrative session UUIDs cannot authenticate. Supply exactly one credential carrier per request.
Idempotency-KeystringOptionalOptional at-most-once retry key for human mutations. When omitted, the idempotency middleware passes the request through without deduplication.
traceparentstringOptionalOptional correlation input. When the second dash-separated segment has 32 characters, Ryuki reuses it as the request correlation identifier; this is not full W3C validation.

Request body

JSON structure: AdQuarantineRecoveryRequest.

NameTypeRequirementDescription
reasonstringRequiredHuman-readable reason recorded with the operation and its audit trail.

Response

StatusDescriptionBody
200OKValue

200 response body

Structure: Value.

NameTypeRequirementDescription
reviewIdJSON valueRequiredValue of reviewId returned in the response body.
stateJSON valueRequiredValue of state returned in the response body.
expiresAtJSON valueRequiredRFC 3339 expiry timestamp when one applies.
dryRunbooleanRequiredValue of dryRun returned in the response body.

Errors

JSON failures use one of the platform error envelopes and include the request correlation metadata when routing reaches the API middleware. See Errors for the exact shapes, authentication failures, retry guidance, and transport-level exceptions.

Examples

Request

curl --silent --show-error --globoff \
  --request POST \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --header 'Idempotency-Key: <idempotency-key>' \
  --data '{"reason":"<string>"}' \
  'https://<your-host>/api/identity/ad/quarantine-recovery/review/<name>'

Schematic response body

Illustrative shape generated from the extracted field types, not a recorded live response. Values are placeholders; null marks a field whose type could not be resolved.

Success status: 200

{
  "reviewId": null,
  "state": null,
  "expiresAt": null,
  "dryRun": false
}

GET/api/identity/ad/reconcile

audit access

Ad reconcile.

Permissions

Access classCredentialScoping
auditAn authenticated session or API bearer token is required.The access class is enforced first; site and environment scopes narrow resources on scoped operations.

HTTP request

GET https://<your-host>/api/identity/ad/reconcile

Path parameters

This operation has no path parameters.

Query parameters

NameTypeRequirementDescription
sitestringOptionalSite identifier used to scope or filter the operation.

Request headers

NameTypeRequirementDescription
AuthorizationstringOptionalHuman credential alternative: supply one Bearer rys_... session token, ryk_... API token, or validated identity-provider JWT here. Do not combine it with X-Ryuki-Session-Id or the session cookie; conflicting carriers fail closed.
X-Ryuki-Session-IdstringOptionalOpaque rys_... session-token carrier used by the portal for mutations. Administrative session UUIDs cannot authenticate. Supply exactly one credential carrier per request.
traceparentstringOptionalOptional correlation input. When the second dash-separated segment has 32 characters, Ryuki reuses it as the request correlation identifier; this is not full W3C validation.

Request body

This operation does not accept a request body.

Response

StatusDescriptionBody
200OKValue

For 200, the known response body type is Value. Its field schema is unavailable, so no JSON shape is inferred.

Errors

JSON failures use one of the platform error envelopes and include the request correlation metadata when routing reaches the API middleware. See Errors for the exact shapes, authentication failures, retry guidance, and transport-level exceptions.

Examples

Request

curl --silent --show-error --globoff \
  --request GET \
  --header 'Authorization: Bearer <token>' \
  'https://<your-host>/api/identity/ad/reconcile'

POST/api/identity/ad/validate

execute access

Validate ad.

Permissions

Access classCredentialScoping
executeAn authenticated session or API bearer token is required.The access class is enforced first; site and environment scopes narrow resources on scoped operations.

HTTP request

POST https://<your-host>/api/identity/ad/validate

Path parameters

This operation has no path parameters.

Query parameters

This operation has no query parameters.

Request headers

NameTypeRequirementDescription
AuthorizationstringOptionalHuman credential alternative: supply one Bearer rys_... session token, ryk_... API token, or validated identity-provider JWT here. Do not combine it with X-Ryuki-Session-Id or the session cookie; conflicting carriers fail closed.
Content-TypestringRequiredRequired by the resolved Axum Json<T> request extractor; send application/json.
X-Ryuki-Session-IdstringOptionalOpaque rys_... session-token carrier used by the portal for mutations. Administrative session UUIDs cannot authenticate. Supply exactly one credential carrier per request.
Idempotency-KeystringOptionalOptional at-most-once retry key for human mutations. When omitted, the idempotency middleware passes the request through without deduplication.
traceparentstringOptionalOptional correlation input. When the second dash-separated segment has 32 characters, Ryuki reuses it as the request correlation identifier; this is not full W3C validation.

Request body

JSON structure: AdValidateRequest.

NameTypeRequirementDescription
namestringRequiredClient-supplied name for the resource or operation.

Response

StatusDescriptionBody
200OKValue

For 200, the known response body type is Value. Its field schema is unavailable, so no JSON shape is inferred.

Errors

JSON failures use one of the platform error envelopes and include the request correlation metadata when routing reaches the API middleware. See Errors for the exact shapes, authentication failures, retry guidance, and transport-level exceptions.

Examples

Request

curl --silent --show-error --globoff \
  --request POST \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --header 'Idempotency-Key: <idempotency-key>' \
  --data '{"name":"<string>"}' \
  'https://<your-host>/api/identity/ad/validate'

GET/api/identity/entra-rbac-approval-readiness-contract

request access

Identity entra rbac.

Permissions

Access classCredentialScoping
requestAn authenticated session or API bearer token is required.The access class is enforced first; site and environment scopes narrow resources on scoped operations.

HTTP request

GET https://<your-host>/api/identity/entra-rbac-approval-readiness-contract

Path parameters

This operation has no path parameters.

Query parameters

This operation has no query parameters.

Request headers

NameTypeRequirementDescription
AuthorizationstringOptionalHuman credential alternative: supply one Bearer rys_... session token, ryk_... API token, or validated identity-provider JWT here. Do not combine it with X-Ryuki-Session-Id or the session cookie; conflicting carriers fail closed.
X-Ryuki-Session-IdstringOptionalOpaque rys_... session-token carrier used by the portal for mutations. Administrative session UUIDs cannot authenticate. Supply exactly one credential carrier per request.
traceparentstringOptionalOptional correlation input. When the second dash-separated segment has 32 characters, Ryuki reuses it as the request correlation identifier; this is not full W3C validation.

Request body

This operation does not accept a request body.

Response

StatusDescriptionBody
200OKValue

200 response body

Structure: Value.

NameTypeRequirementDescription
sourcestringRequiredOrigin or authority of the returned data.
readinessModestringRequiredValue of readinessMode returned in the response body.
identityProviderstringRequiredValue of identityProvider returned in the response body.
configuredForProductionbooleanRequiredValue of configuredForProduction returned in the response body.
localMockAuthAllowedbooleanRequiredValue of localMockAuthAllowed returned in the response body.
providerCallsEnabledbooleanRequiredValue of providerCallsEnabled returned in the response body.
liveAuthenticationEnabledbooleanRequiredValue of liveAuthenticationEnabled returned in the response body.
tokenValidationEnabledbooleanRequiredValue of tokenValidationEnabled returned in the response body.
graphCallsAllowedbooleanRequiredValue of graphCallsAllowed returned in the response body.
entraGroupLookupAllowedbooleanRequiredValue of entraGroupLookupAllowed returned in the response body.
appRegistrationChangesAllowedbooleanRequiredValue of appRegistrationChangesAllowed returned in the response body.
roleAssignmentChangesAllowedbooleanRequiredValue of roleAssignmentChangesAllowed returned in the response body.
approvalExecutionAllowedbooleanRequiredValue of approvalExecutionAllowed returned in the response body.
serviceNowApprovalChangesAllowedbooleanRequiredValue of serviceNowApprovalChangesAllowed returned in the response body.
rawUserDataAllowedbooleanRequiredValue of rawUserDataAllowed returned in the response body.
rawClaimPayloadsAllowedbooleanRequiredValue of rawClaimPayloadsAllowed returned in the response body.
rawGroupRowsAllowedbooleanRequiredValue of rawGroupRowsAllowed returned in the response body.
tenantIdentifiersAllowedbooleanRequiredValue of tenantIdentifiersAllowed returned in the response body.
appIdentifiersAllowedbooleanRequiredValue of appIdentifiersAllowed returned in the response body.
clientIdentifiersAllowedbooleanRequiredValue of clientIdentifiersAllowed returned in the response body.
objectIdentifiersAllowedbooleanRequiredValue of objectIdentifiersAllowed returned in the response body.
principalIdentifiersAllowedbooleanRequiredValue of principalIdentifiersAllowed returned in the response body.
groupIdentifiersAllowedbooleanRequiredValue of groupIdentifiersAllowed returned in the response body.
credentialValuesAllowedbooleanRequiredValue of credentialValuesAllowed returned in the response body.
rawProviderPayloadsAllowedbooleanRequiredValue of rawProviderPayloadsAllowed returned in the response body.
readinessSurfacesarray<JSON value>RequiredValue of readinessSurfaces returned in the response body.
requiredInputsarray<JSON value>RequiredValue of requiredInputs returned in the response body.
requiredGuardsarray<JSON value>RequiredValue of requiredGuards returned in the response body.
planSectionsarray<JSON value>RequiredValue of planSections returned in the response body.
blockedReasonsarray<JSON value>RequiredValue of blockedReasons returned in the response body.
requiredEvidencearray<JSON value>RequiredValue of requiredEvidence returned in the response body.
rulesarray<JSON value>RequiredValue of rules returned in the response body.

Errors

JSON failures use one of the platform error envelopes and include the request correlation metadata when routing reaches the API middleware. See Errors for the exact shapes, authentication failures, retry guidance, and transport-level exceptions.

Examples

Request

curl --silent --show-error --globoff \
  --request GET \
  --header 'Authorization: Bearer <token>' \
  'https://<your-host>/api/identity/entra-rbac-approval-readiness-contract'

Schematic response body

Illustrative shape generated from the extracted field types, not a recorded live response. Values are placeholders; null marks a field whose type could not be resolved.

Success status: 200

{
  "source": "<string>",
  "readinessMode": "<string>",
  "identityProvider": "<string>",
  "configuredForProduction": false,
  "localMockAuthAllowed": false,
  "providerCallsEnabled": false,
  "liveAuthenticationEnabled": false,
  "tokenValidationEnabled": false,
  "graphCallsAllowed": false,
  "entraGroupLookupAllowed": false,
  "appRegistrationChangesAllowed": false,
  "roleAssignmentChangesAllowed": false,
  "approvalExecutionAllowed": false,
  "serviceNowApprovalChangesAllowed": false,
  "rawUserDataAllowed": false,
  "rawClaimPayloadsAllowed": false,
  "rawGroupRowsAllowed": false,
  "tenantIdentifiersAllowed": false,
  "appIdentifiersAllowed": false,
  "clientIdentifiersAllowed": false,
  "objectIdentifiersAllowed": false,
  "principalIdentifiersAllowed": false,
  "groupIdentifiersAllowed": false,
  "credentialValuesAllowed": false,
  "rawProviderPayloadsAllowed": false,
  "readinessSurfaces": [],
  "requiredInputs": [],
  "requiredGuards": [],
  "planSections": [],
  "blockedReasons": [],
  "requiredEvidence": [],
  "rules": []
}

GET/api/identity/file-share-ntfs-recertification-contract

request access

Identity file share ntfs.

Permissions

Access classCredentialScoping
requestAn authenticated session or API bearer token is required.The access class is enforced first; site and environment scopes narrow resources on scoped operations.

HTTP request

GET https://<your-host>/api/identity/file-share-ntfs-recertification-contract

Path parameters

This operation has no path parameters.

Query parameters

This operation has no query parameters.

Request headers

NameTypeRequirementDescription
AuthorizationstringOptionalHuman credential alternative: supply one Bearer rys_... session token, ryk_... API token, or validated identity-provider JWT here. Do not combine it with X-Ryuki-Session-Id or the session cookie; conflicting carriers fail closed.
X-Ryuki-Session-IdstringOptionalOpaque rys_... session-token carrier used by the portal for mutations. Administrative session UUIDs cannot authenticate. Supply exactly one credential carrier per request.
traceparentstringOptionalOptional correlation input. When the second dash-separated segment has 32 characters, Ryuki reuses it as the request correlation identifier; this is not full W3C validation.

Request body

This operation does not accept a request body.

Response

StatusDescriptionBody
200OKValue

200 response body

Structure: Value.

NameTypeRequirementDescription
sourcestringRequiredOrigin or authority of the returned data.
recertificationModestringRequiredValue of recertificationMode returned in the response body.
providerCallsEnabledbooleanRequiredValue of providerCallsEnabled returned in the response body.
workerExecutionAllowedbooleanRequiredValue of workerExecutionAllowed returned in the response body.
evidenceIngestionEnabledbooleanRequiredValue of evidenceIngestionEnabled returned in the response body.
staticFixtureEvidenceCanSatisfyCompliancebooleanRequiredValue of staticFixtureEvidenceCanSatisfyCompliance returned in the response body.
liveDirectoryChangesAllowedbooleanRequiredValue of liveDirectoryChangesAllowed returned in the response body.
liveShareChangesAllowedbooleanRequiredValue of liveShareChangesAllowed returned in the response body.
liveNtfsAclChangesAllowedbooleanRequiredValue of liveNtfsAclChangesAllowed returned in the response body.
liveServiceNowChangesAllowedbooleanRequiredValue of liveServiceNowChangesAllowed returned in the response body.
adGroupMembershipChangeAllowedbooleanRequiredValue of adGroupMembershipChangeAllowed returned in the response body.
sharePermissionChangeAllowedbooleanRequiredValue of sharePermissionChangeAllowed returned in the response body.
ntfsAclChangeAllowedbooleanRequiredValue of ntfsAclChangeAllowed returned in the response body.
inheritanceChangeAllowedbooleanRequiredValue of inheritanceChangeAllowed returned in the response body.
ownerChangeAllowedbooleanRequiredValue of ownerChangeAllowed returned in the response body.
rawShareDataAllowedbooleanRequiredValue of rawShareDataAllowed returned in the response body.
rawAclRowsAllowedbooleanRequiredValue of rawAclRowsAllowed returned in the response body.
rawMembershipRowsAllowedbooleanRequiredValue of rawMembershipRowsAllowed returned in the response body.
rawPathDataAllowedbooleanRequiredValue of rawPathDataAllowed returned in the response body.
rawProviderPayloadsAllowedbooleanRequiredValue of rawProviderPayloadsAllowed returned in the response body.
principalIdentifiersAllowedbooleanRequiredValue of principalIdentifiersAllowed returned in the response body.
shareIdentifiersAllowedbooleanRequiredValue of shareIdentifiersAllowed returned in the response body.
pathValuesAllowedbooleanRequiredValue of pathValuesAllowed returned in the response body.
credentialValuesAllowedbooleanRequiredValue of credentialValuesAllowed returned in the response body.
authenticatedDecisionAttributionRequiredbooleanRequiredValue of authenticatedDecisionAttributionRequired returned in the response body.
recertificationActionsarray<JSON value>RequiredValue of recertificationActions returned in the response body.
recertificationScopesarray<JSON value>RequiredValue of recertificationScopes returned in the response body.
requiredInputsarray<JSON value>RequiredValue of requiredInputs returned in the response body.
requiredGuardsarray<JSON value>RequiredValue of requiredGuards returned in the response body.
planSectionsarray<JSON value>RequiredValue of planSections returned in the response body.
decisionStatusesarray<JSON value>RequiredValue of decisionStatuses returned in the response body.
complianceRulestringRequiredValue of complianceRule returned in the response body.
blockedReasonsarray<JSON value>RequiredValue of blockedReasons returned in the response body.

Errors

JSON failures use one of the platform error envelopes and include the request correlation metadata when routing reaches the API middleware. See Errors for the exact shapes, authentication failures, retry guidance, and transport-level exceptions.

Examples

Request

curl --silent --show-error --globoff \
  --request GET \
  --header 'Authorization: Bearer <token>' \
  'https://<your-host>/api/identity/file-share-ntfs-recertification-contract'

Schematic response body

Illustrative shape generated from the extracted field types, not a recorded live response. Values are placeholders; null marks a field whose type could not be resolved.

Success status: 200

{
  "source": "<string>",
  "recertificationMode": "<string>",
  "providerCallsEnabled": false,
  "workerExecutionAllowed": false,
  "evidenceIngestionEnabled": false,
  "staticFixtureEvidenceCanSatisfyCompliance": false,
  "liveDirectoryChangesAllowed": false,
  "liveShareChangesAllowed": false,
  "liveNtfsAclChangesAllowed": false,
  "liveServiceNowChangesAllowed": false,
  "adGroupMembershipChangeAllowed": false,
  "sharePermissionChangeAllowed": false,
  "ntfsAclChangeAllowed": false,
  "inheritanceChangeAllowed": false,
  "ownerChangeAllowed": false,
  "rawShareDataAllowed": false,
  "rawAclRowsAllowed": false,
  "rawMembershipRowsAllowed": false,
  "rawPathDataAllowed": false,
  "rawProviderPayloadsAllowed": false,
  "principalIdentifiersAllowed": false,
  "shareIdentifiersAllowed": false,
  "pathValuesAllowed": false,
  "credentialValuesAllowed": false,
  "authenticatedDecisionAttributionRequired": false,
  "recertificationActions": [],
  "recertificationScopes": [],
  "requiredInputs": [],
  "requiredGuards": [],
  "planSections": [],
  "decisionStatuses": [],
  "complianceRule": "<string>",
  "blockedReasons": []
}

GET/api/identity/gmsa-contract

request access

Gmsa contract.

Permissions

Access classCredentialScoping
requestAn authenticated session or API bearer token is required.The access class is enforced first; site and environment scopes narrow resources on scoped operations.

HTTP request

GET https://<your-host>/api/identity/gmsa-contract

Path parameters

This operation has no path parameters.

Query parameters

This operation has no query parameters.

Request headers

NameTypeRequirementDescription
AuthorizationstringOptionalHuman credential alternative: supply one Bearer rys_... session token, ryk_... API token, or validated identity-provider JWT here. Do not combine it with X-Ryuki-Session-Id or the session cookie; conflicting carriers fail closed.
X-Ryuki-Session-IdstringOptionalOpaque rys_... session-token carrier used by the portal for mutations. Administrative session UUIDs cannot authenticate. Supply exactly one credential carrier per request.
traceparentstringOptionalOptional correlation input. When the second dash-separated segment has 32 characters, Ryuki reuses it as the request correlation identifier; this is not full W3C validation.

Request body

This operation does not accept a request body.

Response

StatusDescriptionBody
200OKValue

200 response body

Structure: Value.

NameTypeRequirementDescription
sourcestringRequiredOrigin or authority of the returned data.
providerCallsEnabledbooleanRequiredValue of providerCallsEnabled returned in the response body.
liveExecutionAllowedbooleanRequiredValue of liveExecutionAllowed returned in the response body.
dryRunRequiredbooleanRequiredValue of dryRunRequired returned in the response body.
supportedWorkflowsarray<JSON value>RequiredValue of supportedWorkflows returned in the response body.
validStatusesarray<JSON value>RequiredValue of validStatuses returned in the response body.
namingConventionstringRequiredValue of namingConvention returned in the response body.
namespaceOwnerResolutionstringRequiredValue of namespaceOwnerResolution returned in the response body.
currentOwnerAuthoritystringRequiredValue of currentOwnerAuthority returned in the response body.
reactivationPolicystringRequiredValue of reactivationPolicy returned in the response body.
namespacePolicyVersionJSON valueRequiredValue of namespacePolicyVersion returned in the response body.
requiredInputsarray<JSON value>RequiredValue of requiredInputs returned in the response body.
blockedReasonsarray<JSON value>RequiredValue of blockedReasons returned in the response body.

Errors

JSON failures use one of the platform error envelopes and include the request correlation metadata when routing reaches the API middleware. See Errors for the exact shapes, authentication failures, retry guidance, and transport-level exceptions.

Examples

Request

curl --silent --show-error --globoff \
  --request GET \
  --header 'Authorization: Bearer <token>' \
  'https://<your-host>/api/identity/gmsa-contract'

Schematic response body

Illustrative shape generated from the extracted field types, not a recorded live response. Values are placeholders; null marks a field whose type could not be resolved.

Success status: 200

{
  "source": "<string>",
  "providerCallsEnabled": false,
  "liveExecutionAllowed": false,
  "dryRunRequired": false,
  "supportedWorkflows": [],
  "validStatuses": [],
  "namingConvention": "<string>",
  "namespaceOwnerResolution": "<string>",
  "currentOwnerAuthority": "<string>",
  "reactivationPolicy": "<string>",
  "namespacePolicyVersion": null,
  "requiredInputs": [],
  "blockedReasons": []
}

GET/api/identity/gmsa-lifecycle-contract

request access

Identity gmsa lifecycle.

Permissions

Access classCredentialScoping
requestAn authenticated session or API bearer token is required.The access class is enforced first; site and environment scopes narrow resources on scoped operations.

HTTP request

GET https://<your-host>/api/identity/gmsa-lifecycle-contract

Path parameters

This operation has no path parameters.

Query parameters

This operation has no query parameters.

Request headers

NameTypeRequirementDescription
AuthorizationstringOptionalHuman credential alternative: supply one Bearer rys_... session token, ryk_... API token, or validated identity-provider JWT here. Do not combine it with X-Ryuki-Session-Id or the session cookie; conflicting carriers fail closed.
X-Ryuki-Session-IdstringOptionalOpaque rys_... session-token carrier used by the portal for mutations. Administrative session UUIDs cannot authenticate. Supply exactly one credential carrier per request.
traceparentstringOptionalOptional correlation input. When the second dash-separated segment has 32 characters, Ryuki reuses it as the request correlation identifier; this is not full W3C validation.

Request body

This operation does not accept a request body.

Response

StatusDescriptionBody
200OKValue

200 response body

Structure: Value.

NameTypeRequirementDescription
sourcestringRequiredOrigin or authority of the returned data.
lifecycleModestringRequiredValue of lifecycleMode returned in the response body.
providerCallsEnabledbooleanRequiredValue of providerCallsEnabled returned in the response body.
workerExecutionAllowedbooleanRequiredValue of workerExecutionAllowed returned in the response body.
liveDirectoryChangesAllowedbooleanRequiredValue of liveDirectoryChangesAllowed returned in the response body.
gmsaCreationAllowedbooleanRequiredValue of gmsaCreationAllowed returned in the response body.
gmsaAssignmentAllowedbooleanRequiredValue of gmsaAssignmentAllowed returned in the response body.
gmsaValidationAllowedbooleanRequiredValue of gmsaValidationAllowed returned in the response body.
gmsaRetireAllowedbooleanRequiredValue of gmsaRetireAllowed returned in the response body.
passwordRetrievalAllowedbooleanRequiredValue of passwordRetrievalAllowed returned in the response body.
managedPasswordMaterialAllowedbooleanRequiredValue of managedPasswordMaterialAllowed returned in the response body.
spnChangeAllowedbooleanRequiredValue of spnChangeAllowed returned in the response body.
delegationChangeAllowedbooleanRequiredValue of delegationChangeAllowed returned in the response body.
rawServiceAccountDataAllowedbooleanRequiredValue of rawServiceAccountDataAllowed returned in the response body.
rawLogContentAllowedbooleanRequiredValue of rawLogContentAllowed returned in the response body.
rawRowsAllowedbooleanRequiredValue of rawRowsAllowed returned in the response body.
serialNumbersAllowedbooleanRequiredValue of serialNumbersAllowed returned in the response body.
rawRecipientDataAllowedbooleanRequiredValue of rawRecipientDataAllowed returned in the response body.
principalIdentifiersAllowedbooleanRequiredValue of principalIdentifiersAllowed returned in the response body.
distinguishedNamesAllowedbooleanRequiredValue of distinguishedNamesAllowed returned in the response body.
domainIdentifiersAllowedbooleanRequiredValue of domainIdentifiersAllowed returned in the response body.
objectIdentifiersAllowedbooleanRequiredValue of objectIdentifiersAllowed returned in the response body.
securityIdentifiersAllowedbooleanRequiredValue of securityIdentifiersAllowed returned in the response body.
targetIdentifiersAllowedbooleanRequiredValue of targetIdentifiersAllowed returned in the response body.
credentialValuesAllowedbooleanRequiredValue of credentialValuesAllowed returned in the response body.
rawProviderPayloadsAllowedbooleanRequiredValue of rawProviderPayloadsAllowed returned in the response body.
lifecycleActionsarray<JSON value>RequiredValue of lifecycleActions returned in the response body.
lifecycleSignalsarray<JSON value>RequiredValue of lifecycleSignals returned in the response body.
requiredInputsarray<JSON value>RequiredValue of requiredInputs returned in the response body.
requiredGuardsarray<JSON value>RequiredValue of requiredGuards returned in the response body.
planSectionsarray<JSON value>RequiredValue of planSections returned in the response body.
blockedReasonsarray<JSON value>RequiredValue of blockedReasons returned in the response body.

Errors

JSON failures use one of the platform error envelopes and include the request correlation metadata when routing reaches the API middleware. See Errors for the exact shapes, authentication failures, retry guidance, and transport-level exceptions.

Examples

Request

curl --silent --show-error --globoff \
  --request GET \
  --header 'Authorization: Bearer <token>' \
  'https://<your-host>/api/identity/gmsa-lifecycle-contract'

Schematic response body

Illustrative shape generated from the extracted field types, not a recorded live response. Values are placeholders; null marks a field whose type could not be resolved.

Success status: 200

{
  "source": "<string>",
  "lifecycleMode": "<string>",
  "providerCallsEnabled": false,
  "workerExecutionAllowed": false,
  "liveDirectoryChangesAllowed": false,
  "gmsaCreationAllowed": false,
  "gmsaAssignmentAllowed": false,
  "gmsaValidationAllowed": false,
  "gmsaRetireAllowed": false,
  "passwordRetrievalAllowed": false,
  "managedPasswordMaterialAllowed": false,
  "spnChangeAllowed": false,
  "delegationChangeAllowed": false,
  "rawServiceAccountDataAllowed": false,
  "rawLogContentAllowed": false,
  "rawRowsAllowed": false,
  "serialNumbersAllowed": false,
  "rawRecipientDataAllowed": false,
  "principalIdentifiersAllowed": false,
  "distinguishedNamesAllowed": false,
  "domainIdentifiersAllowed": false,
  "objectIdentifiersAllowed": false,
  "securityIdentifiersAllowed": false,
  "targetIdentifiersAllowed": false,
  "credentialValuesAllowed": false,
  "rawProviderPayloadsAllowed": false,
  "lifecycleActions": [],
  "lifecycleSignals": [],
  "requiredInputs": [],
  "requiredGuards": [],
  "planSections": [],
  "blockedReasons": []
}

POST/api/identity/gmsa/assign/{name}/{host}

execute access

Gmsa assign.

Permissions

Access classCredentialScoping
executeAn authenticated session or API bearer token is required.The access class is enforced first; site and environment scopes narrow resources on scoped operations.

HTTP request

POST https://<your-host>/api/identity/gmsa/assign/{name}/{host}

Path parameters

NameTypeRequirementDescription
namestringRequiredValue of the name request-path segment.
hoststringRequiredValue of the host request-path segment.

Query parameters

This operation has no query parameters.

Request headers

NameTypeRequirementDescription
AuthorizationstringOptionalHuman credential alternative: supply one Bearer rys_... session token, ryk_... API token, or validated identity-provider JWT here. Do not combine it with X-Ryuki-Session-Id or the session cookie; conflicting carriers fail closed.
X-Ryuki-Session-IdstringOptionalOpaque rys_... session-token carrier used by the portal for mutations. Administrative session UUIDs cannot authenticate. Supply exactly one credential carrier per request.
Idempotency-KeystringOptionalOptional at-most-once retry key for human mutations. When omitted, the idempotency middleware passes the request through without deduplication.
traceparentstringOptionalOptional correlation input. When the second dash-separated segment has 32 characters, Ryuki reuses it as the request correlation identifier; this is not full W3C validation.

Request body

This operation does not accept a request body.

Response

StatusDescriptionBody
200OKValue

For 200, the known response body type is Value. Its field schema is unavailable, so no JSON shape is inferred.

Errors

JSON failures use one of the platform error envelopes and include the request correlation metadata when routing reaches the API middleware. See Errors for the exact shapes, authentication failures, retry guidance, and transport-level exceptions.

Examples

Request

curl --silent --show-error --globoff \
  --request POST \
  --header 'Authorization: Bearer <token>' \
  --header 'Idempotency-Key: <idempotency-key>' \
  'https://<your-host>/api/identity/gmsa/assign/<name>/<host>'

POST/api/identity/gmsa/create

execute access

Create gmsa.

Permissions

Access classCredentialScoping
executeAn authenticated session or API bearer token is required.The access class is enforced first; site and environment scopes narrow resources on scoped operations.

HTTP request

POST https://<your-host>/api/identity/gmsa/create

Path parameters

This operation has no path parameters.

Query parameters

This operation has no query parameters.

Request headers

NameTypeRequirementDescription
AuthorizationstringOptionalHuman credential alternative: supply one Bearer rys_... session token, ryk_... API token, or validated identity-provider JWT here. Do not combine it with X-Ryuki-Session-Id or the session cookie; conflicting carriers fail closed.
Content-TypestringRequiredRequired by the resolved Axum Json<T> request extractor; send application/json.
X-Ryuki-Session-IdstringOptionalOpaque rys_... session-token carrier used by the portal for mutations. Administrative session UUIDs cannot authenticate. Supply exactly one credential carrier per request.
Idempotency-KeystringOptionalOptional at-most-once retry key for human mutations. When omitted, the idempotency middleware passes the request through without deduplication.
traceparentstringOptionalOptional correlation input. When the second dash-separated segment has 32 characters, Ryuki reuses it as the request correlation identifier; this is not full W3C validation.

Request body

JSON structure: GmsaCreateRequest.

NameTypeRequirementDescription
namestringRequiredClient-supplied name for the resource or operation.
hostsarray<string>RequiredValue of hosts in the JSON request body.
spnsarray<string>RequiredValue of spns in the JSON request body.
sitestringRequiredSite code targeted by the request.

Response

StatusDescriptionBody
200OKValue

For 200, the known response body type is Value. Its field schema is unavailable, so no JSON shape is inferred.

Errors

JSON failures use one of the platform error envelopes and include the request correlation metadata when routing reaches the API middleware. See Errors for the exact shapes, authentication failures, retry guidance, and transport-level exceptions.

Examples

Request

curl --silent --show-error --globoff \
  --request POST \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --header 'Idempotency-Key: <idempotency-key>' \
  --data '{"name":"<string>","hosts":[],"spns":[],"site":"<string>"}' \
  'https://<your-host>/api/identity/gmsa/create'

GET/api/identity/gmsa/expiring

audit access

Gmsa expiring.

Permissions

Access classCredentialScoping
auditAn authenticated session or API bearer token is required.The access class is enforced first; site and environment scopes narrow resources on scoped operations.

HTTP request

GET https://<your-host>/api/identity/gmsa/expiring

Path parameters

This operation has no path parameters.

Query parameters

This operation has no query parameters.

Request headers

NameTypeRequirementDescription
AuthorizationstringOptionalHuman credential alternative: supply one Bearer rys_... session token, ryk_... API token, or validated identity-provider JWT here. Do not combine it with X-Ryuki-Session-Id or the session cookie; conflicting carriers fail closed.
X-Ryuki-Session-IdstringOptionalOpaque rys_... session-token carrier used by the portal for mutations. Administrative session UUIDs cannot authenticate. Supply exactly one credential carrier per request.
traceparentstringOptionalOptional correlation input. When the second dash-separated segment has 32 characters, Ryuki reuses it as the request correlation identifier; this is not full W3C validation.

Request body

This operation does not accept a request body.

Response

StatusDescriptionBody
200OKValue

For 200, the known response body type is Value. Its field schema is unavailable, so no JSON shape is inferred.

Errors

JSON failures use one of the platform error envelopes and include the request correlation metadata when routing reaches the API middleware. See Errors for the exact shapes, authentication failures, retry guidance, and transport-level exceptions.

Examples

Request

curl --silent --show-error --globoff \
  --request GET \
  --header 'Authorization: Bearer <token>' \
  'https://<your-host>/api/identity/gmsa/expiring'

GET/api/identity/gmsa/inventory

audit access

Gmsa inventory.

Permissions

Access classCredentialScoping
auditAn authenticated session or API bearer token is required.The access class is enforced first; site and environment scopes narrow resources on scoped operations.

HTTP request

GET https://<your-host>/api/identity/gmsa/inventory

Path parameters

This operation has no path parameters.

Query parameters

NameTypeRequirementDescription
sitestringOptionalSite identifier used to scope or filter the operation.
limitintegerOptionalMaximum number of results requested.
offsetintegerOptionalNumber of results to skip before returning the page.

Request headers

NameTypeRequirementDescription
AuthorizationstringOptionalHuman credential alternative: supply one Bearer rys_... session token, ryk_... API token, or validated identity-provider JWT here. Do not combine it with X-Ryuki-Session-Id or the session cookie; conflicting carriers fail closed.
X-Ryuki-Session-IdstringOptionalOpaque rys_... session-token carrier used by the portal for mutations. Administrative session UUIDs cannot authenticate. Supply exactly one credential carrier per request.
traceparentstringOptionalOptional correlation input. When the second dash-separated segment has 32 characters, Ryuki reuses it as the request correlation identifier; this is not full W3C validation.

Request body

This operation does not accept a request body.

Response

StatusDescriptionBody
200OKValue

For 200, the known response body type is Value. Its field schema is unavailable, so no JSON shape is inferred.

200 response headers

NameTypeRequirementDescription
X-Total-CountintegerRequiredFiltered total before limit/offset pagination, returned alongside the successful bare JSON array.

Returns a bare JSON array; the filtered total is exposed via the X-Total-Count response header.

Errors

JSON failures use one of the platform error envelopes and include the request correlation metadata when routing reaches the API middleware. See Errors for the exact shapes, authentication failures, retry guidance, and transport-level exceptions.

Examples

Request

curl --silent --show-error --globoff \
  --request GET \
  --header 'Authorization: Bearer <token>' \
  'https://<your-host>/api/identity/gmsa/inventory'

POST/api/identity/gmsa/remove/{name}/{host}

execute access

Gmsa remove.

Permissions

Access classCredentialScoping
executeAn authenticated session or API bearer token is required.The access class is enforced first; site and environment scopes narrow resources on scoped operations.

HTTP request

POST https://<your-host>/api/identity/gmsa/remove/{name}/{host}

Path parameters

NameTypeRequirementDescription
namestringRequiredValue of the name request-path segment.
hoststringRequiredValue of the host request-path segment.

Query parameters

This operation has no query parameters.

Request headers

NameTypeRequirementDescription
AuthorizationstringOptionalHuman credential alternative: supply one Bearer rys_... session token, ryk_... API token, or validated identity-provider JWT here. Do not combine it with X-Ryuki-Session-Id or the session cookie; conflicting carriers fail closed.
X-Ryuki-Session-IdstringOptionalOpaque rys_... session-token carrier used by the portal for mutations. Administrative session UUIDs cannot authenticate. Supply exactly one credential carrier per request.
Idempotency-KeystringOptionalOptional at-most-once retry key for human mutations. When omitted, the idempotency middleware passes the request through without deduplication.
traceparentstringOptionalOptional correlation input. When the second dash-separated segment has 32 characters, Ryuki reuses it as the request correlation identifier; this is not full W3C validation.

Request body

This operation does not accept a request body.

Response

StatusDescriptionBody
200OKValue

For 200, the known response body type is Value. Its field schema is unavailable, so no JSON shape is inferred.

Errors

JSON failures use one of the platform error envelopes and include the request correlation metadata when routing reaches the API middleware. See Errors for the exact shapes, authentication failures, retry guidance, and transport-level exceptions.

Examples

Request

curl --silent --show-error --globoff \
  --request POST \
  --header 'Authorization: Bearer <token>' \
  --header 'Idempotency-Key: <idempotency-key>' \
  'https://<your-host>/api/identity/gmsa/remove/<name>/<host>'

POST/api/identity/gmsa/rotate/{name}

execute access

Gmsa rotate.

Permissions

Access classCredentialScoping
executeAn authenticated session or API bearer token is required.The access class is enforced first; site and environment scopes narrow resources on scoped operations.

HTTP request

POST https://<your-host>/api/identity/gmsa/rotate/{name}

Path parameters

NameTypeRequirementDescription
namestringRequiredValue of the name request-path segment.

Query parameters

This operation has no query parameters.

Request headers

NameTypeRequirementDescription
AuthorizationstringOptionalHuman credential alternative: supply one Bearer rys_... session token, ryk_... API token, or validated identity-provider JWT here. Do not combine it with X-Ryuki-Session-Id or the session cookie; conflicting carriers fail closed.
X-Ryuki-Session-IdstringOptionalOpaque rys_... session-token carrier used by the portal for mutations. Administrative session UUIDs cannot authenticate. Supply exactly one credential carrier per request.
Idempotency-KeystringOptionalOptional at-most-once retry key for human mutations. When omitted, the idempotency middleware passes the request through without deduplication.
traceparentstringOptionalOptional correlation input. When the second dash-separated segment has 32 characters, Ryuki reuses it as the request correlation identifier; this is not full W3C validation.

Request body

This operation does not accept a request body.

Response

StatusDescriptionBody
200OKValue

For 200, the known response body type is Value. Its field schema is unavailable, so no JSON shape is inferred.

Errors

JSON failures use one of the platform error envelopes and include the request correlation metadata when routing reaches the API middleware. See Errors for the exact shapes, authentication failures, retry guidance, and transport-level exceptions.

Examples

Request

curl --silent --show-error --globoff \
  --request POST \
  --header 'Authorization: Bearer <token>' \
  --header 'Idempotency-Key: <idempotency-key>' \
  'https://<your-host>/api/identity/gmsa/rotate/<name>'

POST/api/identity/gmsa/test/{name}/{host}

execute access

Test gmsa.

Permissions

Access classCredentialScoping
executeAn authenticated session or API bearer token is required.The access class is enforced first; site and environment scopes narrow resources on scoped operations.

HTTP request

POST https://<your-host>/api/identity/gmsa/test/{name}/{host}

Path parameters

NameTypeRequirementDescription
namestringRequiredValue of the name request-path segment.
hoststringRequiredValue of the host request-path segment.

Query parameters

This operation has no query parameters.

Request headers

NameTypeRequirementDescription
AuthorizationstringOptionalHuman credential alternative: supply one Bearer rys_... session token, ryk_... API token, or validated identity-provider JWT here. Do not combine it with X-Ryuki-Session-Id or the session cookie; conflicting carriers fail closed.
X-Ryuki-Session-IdstringOptionalOpaque rys_... session-token carrier used by the portal for mutations. Administrative session UUIDs cannot authenticate. Supply exactly one credential carrier per request.
Idempotency-KeystringOptionalOptional at-most-once retry key for human mutations. When omitted, the idempotency middleware passes the request through without deduplication.
traceparentstringOptionalOptional correlation input. When the second dash-separated segment has 32 characters, Ryuki reuses it as the request correlation identifier; this is not full W3C validation.

Request body

This operation does not accept a request body.

Response

StatusDescriptionBody
200OKValue

For 200, the known response body type is Value. Its field schema is unavailable, so no JSON shape is inferred.

Errors

JSON failures use one of the platform error envelopes and include the request correlation metadata when routing reaches the API middleware. See Errors for the exact shapes, authentication failures, retry guidance, and transport-level exceptions.

Examples

Request

curl --silent --show-error --globoff \
  --request POST \
  --header 'Authorization: Bearer <token>' \
  --header 'Idempotency-Key: <idempotency-key>' \
  'https://<your-host>/api/identity/gmsa/test/<name>/<host>'

POST/api/identity/gmsa/validate

execute access

Validate gmsa.

Permissions

Access classCredentialScoping
executeAn authenticated session or API bearer token is required.The access class is enforced first; site and environment scopes narrow resources on scoped operations.

HTTP request

POST https://<your-host>/api/identity/gmsa/validate

Path parameters

This operation has no path parameters.

Query parameters

This operation has no query parameters.

Request headers

NameTypeRequirementDescription
AuthorizationstringOptionalHuman credential alternative: supply one Bearer rys_... session token, ryk_... API token, or validated identity-provider JWT here. Do not combine it with X-Ryuki-Session-Id or the session cookie; conflicting carriers fail closed.
Content-TypestringRequiredRequired by the resolved Axum Json<T> request extractor; send application/json.
X-Ryuki-Session-IdstringOptionalOpaque rys_... session-token carrier used by the portal for mutations. Administrative session UUIDs cannot authenticate. Supply exactly one credential carrier per request.
Idempotency-KeystringOptionalOptional at-most-once retry key for human mutations. When omitted, the idempotency middleware passes the request through without deduplication.
traceparentstringOptionalOptional correlation input. When the second dash-separated segment has 32 characters, Ryuki reuses it as the request correlation identifier; this is not full W3C validation.

Request body

JSON structure: GmsaValidateRequest.

NameTypeRequirementDescription
namestringRequiredClient-supplied name for the resource or operation.

Response

StatusDescriptionBody
200OKValue

For 200, the known response body type is Value. Its field schema is unavailable, so no JSON shape is inferred.

Errors

JSON failures use one of the platform error envelopes and include the request correlation metadata when routing reaches the API middleware. See Errors for the exact shapes, authentication failures, retry guidance, and transport-level exceptions.

Examples

Request

curl --silent --show-error --globoff \
  --request POST \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --header 'Idempotency-Key: <idempotency-key>' \
  --data '{"name":"<string>"}' \
  'https://<your-host>/api/identity/gmsa/validate'

GET/api/identity/local-privilege-access-contract

request access

Identity local privilege.

Permissions

Access classCredentialScoping
requestAn authenticated session or API bearer token is required.The access class is enforced first; site and environment scopes narrow resources on scoped operations.

HTTP request

GET https://<your-host>/api/identity/local-privilege-access-contract

Path parameters

This operation has no path parameters.

Query parameters

This operation has no query parameters.

Request headers

NameTypeRequirementDescription
AuthorizationstringOptionalHuman credential alternative: supply one Bearer rys_... session token, ryk_... API token, or validated identity-provider JWT here. Do not combine it with X-Ryuki-Session-Id or the session cookie; conflicting carriers fail closed.
X-Ryuki-Session-IdstringOptionalOpaque rys_... session-token carrier used by the portal for mutations. Administrative session UUIDs cannot authenticate. Supply exactly one credential carrier per request.
traceparentstringOptionalOptional correlation input. When the second dash-separated segment has 32 characters, Ryuki reuses it as the request correlation identifier; this is not full W3C validation.

Request body

This operation does not accept a request body.

Response

StatusDescriptionBody
200OKValue

200 response body

Structure: Value.

NameTypeRequirementDescription
sourcestringRequiredOrigin or authority of the returned data.
accessReviewModestringRequiredValue of accessReviewMode returned in the response body.
providerCallsEnabledbooleanRequiredValue of providerCallsEnabled returned in the response body.
workerExecutionAllowedbooleanRequiredValue of workerExecutionAllowed returned in the response body.
liveDirectoryChangesAllowedbooleanRequiredValue of liveDirectoryChangesAllowed returned in the response body.
liveLocalAdminChangesAllowedbooleanRequiredValue of liveLocalAdminChangesAllowed returned in the response body.
liveSudoersChangesAllowedbooleanRequiredValue of liveSudoersChangesAllowed returned in the response body.
liveServiceNowChangesAllowedbooleanRequiredValue of liveServiceNowChangesAllowed returned in the response body.
adGroupMembershipChangeAllowedbooleanRequiredValue of adGroupMembershipChangeAllowed returned in the response body.
sudoersFileChangeAllowedbooleanRequiredValue of sudoersFileChangeAllowed returned in the response body.
privilegeGrantAllowedbooleanRequiredValue of privilegeGrantAllowed returned in the response body.
privilegeRemovalAllowedbooleanRequiredValue of privilegeRemovalAllowed returned in the response body.
rawUserDataAllowedbooleanRequiredValue of rawUserDataAllowed returned in the response body.
rawGroupDataAllowedbooleanRequiredValue of rawGroupDataAllowed returned in the response body.
rawMembershipRowsAllowedbooleanRequiredValue of rawMembershipRowsAllowed returned in the response body.
rawSudoersContentAllowedbooleanRequiredValue of rawSudoersContentAllowed returned in the response body.
rawRequestPayloadsAllowedbooleanRequiredValue of rawRequestPayloadsAllowed returned in the response body.
rawProviderPayloadsAllowedbooleanRequiredValue of rawProviderPayloadsAllowed returned in the response body.
principalIdentifiersAllowedbooleanRequiredValue of principalIdentifiersAllowed returned in the response body.
targetIdentifiersAllowedbooleanRequiredValue of targetIdentifiersAllowed returned in the response body.
privilegeHostIdentifiersAllowedbooleanRequiredValue of privilegeHostIdentifiersAllowed returned in the response body.
credentialValuesAllowedbooleanRequiredValue of credentialValuesAllowed returned in the response body.
accessActionsarray<JSON value>RequiredValue of accessActions returned in the response body.
accessScopesarray<JSON value>RequiredValue of accessScopes returned in the response body.
requiredInputsarray<JSON value>RequiredValue of requiredInputs returned in the response body.
requiredGuardsarray<JSON value>RequiredValue of requiredGuards returned in the response body.
planSectionsarray<JSON value>RequiredValue of planSections returned in the response body.
blockedReasonsarray<JSON value>RequiredValue of blockedReasons returned in the response body.

Errors

JSON failures use one of the platform error envelopes and include the request correlation metadata when routing reaches the API middleware. See Errors for the exact shapes, authentication failures, retry guidance, and transport-level exceptions.

Examples

Request

curl --silent --show-error --globoff \
  --request GET \
  --header 'Authorization: Bearer <token>' \
  'https://<your-host>/api/identity/local-privilege-access-contract'

Schematic response body

Illustrative shape generated from the extracted field types, not a recorded live response. Values are placeholders; null marks a field whose type could not be resolved.

Success status: 200

{
  "source": "<string>",
  "accessReviewMode": "<string>",
  "providerCallsEnabled": false,
  "workerExecutionAllowed": false,
  "liveDirectoryChangesAllowed": false,
  "liveLocalAdminChangesAllowed": false,
  "liveSudoersChangesAllowed": false,
  "liveServiceNowChangesAllowed": false,
  "adGroupMembershipChangeAllowed": false,
  "sudoersFileChangeAllowed": false,
  "privilegeGrantAllowed": false,
  "privilegeRemovalAllowed": false,
  "rawUserDataAllowed": false,
  "rawGroupDataAllowed": false,
  "rawMembershipRowsAllowed": false,
  "rawSudoersContentAllowed": false,
  "rawRequestPayloadsAllowed": false,
  "rawProviderPayloadsAllowed": false,
  "principalIdentifiersAllowed": false,
  "targetIdentifiersAllowed": false,
  "privilegeHostIdentifiersAllowed": false,
  "credentialValuesAllowed": false,
  "accessActions": [],
  "accessScopes": [],
  "requiredInputs": [],
  "requiredGuards": [],
  "planSections": [],
  "blockedReasons": []
}

GET/api/identity/rbac-approval-model-contract

request access

Identity rbac approval model.

Permissions

Access classCredentialScoping
requestAn authenticated session or API bearer token is required.The access class is enforced first; site and environment scopes narrow resources on scoped operations.

HTTP request

GET https://<your-host>/api/identity/rbac-approval-model-contract

Path parameters

This operation has no path parameters.

Query parameters

This operation has no query parameters.

Request headers

NameTypeRequirementDescription
AuthorizationstringOptionalHuman credential alternative: supply one Bearer rys_... session token, ryk_... API token, or validated identity-provider JWT here. Do not combine it with X-Ryuki-Session-Id or the session cookie; conflicting carriers fail closed.
X-Ryuki-Session-IdstringOptionalOpaque rys_... session-token carrier used by the portal for mutations. Administrative session UUIDs cannot authenticate. Supply exactly one credential carrier per request.
traceparentstringOptionalOptional correlation input. When the second dash-separated segment has 32 characters, Ryuki reuses it as the request correlation identifier; this is not full W3C validation.

Request body

This operation does not accept a request body.

Response

StatusDescriptionBody
200OKValue

200 response body

Structure: Value.

NameTypeRequirementDescription
sourcestringRequiredOrigin or authority of the returned data.
modelModestringRequiredValue of modelMode returned in the response body.
identityProviderstringRequiredValue of identityProvider returned in the response body.
configuredForProductionbooleanRequiredValue of configuredForProduction returned in the response body.
localMockAuthAllowedbooleanRequiredValue of localMockAuthAllowed returned in the response body.
providerCallsAllowedbooleanRequiredValue of providerCallsAllowed returned in the response body.
liveAuthenticationAllowedbooleanRequiredValue of liveAuthenticationAllowed returned in the response body.
graphCallsAllowedbooleanRequiredValue of graphCallsAllowed returned in the response body.
entraGroupLookupAllowedbooleanRequiredValue of entraGroupLookupAllowed returned in the response body.
serviceNowApprovalMutationAllowedbooleanRequiredValue of serviceNowApprovalMutationAllowed returned in the response body.
approvalExecutionAllowedbooleanRequiredValue of approvalExecutionAllowed returned in the response body.
roleAssignmentMutationAllowedbooleanRequiredValue of roleAssignmentMutationAllowed returned in the response body.
policyMutationAllowedbooleanRequiredValue of policyMutationAllowed returned in the response body.
workflowMutationAllowedbooleanRequiredValue of workflowMutationAllowed returned in the response body.
rawUserDataAllowedbooleanRequiredValue of rawUserDataAllowed returned in the response body.
rawClaimPayloadsAllowedbooleanRequiredValue of rawClaimPayloadsAllowed returned in the response body.
rawGroupRowsAllowedbooleanRequiredValue of rawGroupRowsAllowed returned in the response body.
rawApprovalPayloadsAllowedbooleanRequiredValue of rawApprovalPayloadsAllowed returned in the response body.
tenantIdentifiersAllowedbooleanRequiredValue of tenantIdentifiersAllowed returned in the response body.
appIdentifiersAllowedbooleanRequiredValue of appIdentifiersAllowed returned in the response body.
clientIdentifiersAllowedbooleanRequiredValue of clientIdentifiersAllowed returned in the response body.
objectIdentifiersAllowedbooleanRequiredValue of objectIdentifiersAllowed returned in the response body.
principalIdentifiersAllowedbooleanRequiredValue of principalIdentifiersAllowed returned in the response body.
groupIdentifiersAllowedbooleanRequiredValue of groupIdentifiersAllowed returned in the response body.
credentialValuesAllowedbooleanRequiredValue of credentialValuesAllowed returned in the response body.
tokenValuesAllowedbooleanRequiredValue of tokenValuesAllowed returned in the response body.
rawProviderPayloadsAllowedbooleanRequiredValue of rawProviderPayloadsAllowed returned in the response body.
rolesarray<JSON value>RequiredValue of roles returned in the response body.
capabilitiesarray<JSON value>RequiredValue of capabilities returned in the response body.
approvalRoutesarray<JSON value>RequiredValue of approvalRoutes returned in the response body.
executionGuardsarray<JSON value>RequiredValue of executionGuards returned in the response body.
requiredInputsarray<JSON value>RequiredValue of requiredInputs returned in the response body.
separationOfDutiesControlsarray<JSON value>RequiredValue of separationOfDutiesControls returned in the response body.
blockedReasonsarray<JSON value>RequiredValue of blockedReasons returned in the response body.
requiredEvidencearray<JSON value>RequiredValue of requiredEvidence returned in the response body.
rulesarray<JSON value>RequiredValue of rules returned in the response body.

Errors

JSON failures use one of the platform error envelopes and include the request correlation metadata when routing reaches the API middleware. See Errors for the exact shapes, authentication failures, retry guidance, and transport-level exceptions.

Examples

Request

curl --silent --show-error --globoff \
  --request GET \
  --header 'Authorization: Bearer <token>' \
  'https://<your-host>/api/identity/rbac-approval-model-contract'

Schematic response body

Illustrative shape generated from the extracted field types, not a recorded live response. Values are placeholders; null marks a field whose type could not be resolved.

Success status: 200

{
  "source": "<string>",
  "modelMode": "<string>",
  "identityProvider": "<string>",
  "configuredForProduction": false,
  "localMockAuthAllowed": false,
  "providerCallsAllowed": false,
  "liveAuthenticationAllowed": false,
  "graphCallsAllowed": false,
  "entraGroupLookupAllowed": false,
  "serviceNowApprovalMutationAllowed": false,
  "approvalExecutionAllowed": false,
  "roleAssignmentMutationAllowed": false,
  "policyMutationAllowed": false,
  "workflowMutationAllowed": false,
  "rawUserDataAllowed": false,
  "rawClaimPayloadsAllowed": false,
  "rawGroupRowsAllowed": false,
  "rawApprovalPayloadsAllowed": false,
  "tenantIdentifiersAllowed": false,
  "appIdentifiersAllowed": false,
  "clientIdentifiersAllowed": false,
  "objectIdentifiersAllowed": false,
  "principalIdentifiersAllowed": false,
  "groupIdentifiersAllowed": false,
  "credentialValuesAllowed": false,
  "tokenValuesAllowed": false,
  "rawProviderPayloadsAllowed": false,
  "roles": [],
  "capabilities": [],
  "approvalRoutes": [],
  "executionGuards": [],
  "requiredInputs": [],
  "separationOfDutiesControls": [],
  "blockedReasons": [],
  "requiredEvidence": [],
  "rules": []
}

GET/api/identity/shares

audit access

List shares.

Permissions

Access classCredentialScoping
auditAn authenticated session or API bearer token is required.The access class is enforced first; site and environment scopes narrow resources on scoped operations.

HTTP request

GET https://<your-host>/api/identity/shares

Path parameters

This operation has no path parameters.

Query parameters

NameTypeRequirementDescription
sitestringOptionalSite identifier used to scope or filter the operation.
limitintegerOptionalMaximum number of results requested.
offsetintegerOptionalNumber of results to skip before returning the page.

Request headers

NameTypeRequirementDescription
AuthorizationstringOptionalHuman credential alternative: supply one Bearer rys_... session token, ryk_... API token, or validated identity-provider JWT here. Do not combine it with X-Ryuki-Session-Id or the session cookie; conflicting carriers fail closed.
X-Ryuki-Session-IdstringOptionalOpaque rys_... session-token carrier used by the portal for mutations. Administrative session UUIDs cannot authenticate. Supply exactly one credential carrier per request.
traceparentstringOptionalOptional correlation input. When the second dash-separated segment has 32 characters, Ryuki reuses it as the request correlation identifier; this is not full W3C validation.

Request body

This operation does not accept a request body.

Response

StatusDescriptionBody
200OKValue

For 200, the known response body type is Value. Its field schema is unavailable, so no JSON shape is inferred.

200 response headers

NameTypeRequirementDescription
X-Total-CountintegerRequiredFiltered total before limit/offset pagination, returned alongside the successful bare JSON array.

Returns a bare JSON array; the filtered total is exposed via the X-Total-Count response header.

Errors

JSON failures use one of the platform error envelopes and include the request correlation metadata when routing reaches the API middleware. See Errors for the exact shapes, authentication failures, retry guidance, and transport-level exceptions.

Examples

Request

curl --silent --show-error --globoff \
  --request GET \
  --header 'Authorization: Bearer <token>' \
  'https://<your-host>/api/identity/shares'

GET/api/identity/shares-contract

request access

Shares contract.

Permissions

Access classCredentialScoping
requestAn authenticated session or API bearer token is required.The access class is enforced first; site and environment scopes narrow resources on scoped operations.

HTTP request

GET https://<your-host>/api/identity/shares-contract

Path parameters

This operation has no path parameters.

Query parameters

This operation has no query parameters.

Request headers

NameTypeRequirementDescription
AuthorizationstringOptionalHuman credential alternative: supply one Bearer rys_... session token, ryk_... API token, or validated identity-provider JWT here. Do not combine it with X-Ryuki-Session-Id or the session cookie; conflicting carriers fail closed.
X-Ryuki-Session-IdstringOptionalOpaque rys_... session-token carrier used by the portal for mutations. Administrative session UUIDs cannot authenticate. Supply exactly one credential carrier per request.
traceparentstringOptionalOptional correlation input. When the second dash-separated segment has 32 characters, Ryuki reuses it as the request correlation identifier; this is not full W3C validation.

Request body

This operation does not accept a request body.

Response

StatusDescriptionBody
200OKValue

200 response body

Structure: Value.

NameTypeRequirementDescription
sourcestringRequiredOrigin or authority of the returned data.
providerCallsEnabledbooleanRequiredValue of providerCallsEnabled returned in the response body.
evidenceIngestionEnabledbooleanRequiredValue of evidenceIngestionEnabled returned in the response body.
staticFixtureEvidenceCanSatisfyCompliancebooleanRequiredValue of staticFixtureEvidenceCanSatisfyCompliance returned in the response body.
authenticatedDecisionAttributionRequiredbooleanRequiredValue of authenticatedDecisionAttributionRequired returned in the response body.
liveDirectoryChangesAllowedbooleanRequiredValue of liveDirectoryChangesAllowed returned in the response body.
liveShareChangesAllowedbooleanRequiredValue of liveShareChangesAllowed returned in the response body.
liveNtfsAclChangesAllowedbooleanRequiredValue of liveNtfsAclChangesAllowed returned in the response body.
dryRunRequiredbooleanRequiredValue of dryRunRequired returned in the response body.
totalSharesJSON valueRequiredValue of totalShares returned in the response body.
endpointsJSON valueRequiredValue of endpoints returned in the response body.
validSitesJSON valueRequiredValue of validSites returned in the response body.
validStatusesarray<JSON value>RequiredValue of validStatuses returned in the response body.
recertificationDecisionStatusesarray<JSON value>RequiredValue of recertificationDecisionStatuses returned in the response body.
recertificationRequestJSON valueRequiredValue of recertificationRequest returned in the response body.
validPermissionTypesarray<JSON value>RequiredValue of validPermissionTypes returned in the response body.
riskLevelsarray<JSON value>RequiredValue of riskLevels returned in the response body.
blockedReasonsarray<JSON value>RequiredValue of blockedReasons returned in the response body.

Errors

JSON failures use one of the platform error envelopes and include the request correlation metadata when routing reaches the API middleware. See Errors for the exact shapes, authentication failures, retry guidance, and transport-level exceptions.

Examples

Request

curl --silent --show-error --globoff \
  --request GET \
  --header 'Authorization: Bearer <token>' \
  'https://<your-host>/api/identity/shares-contract'

Schematic response body

Illustrative shape generated from the extracted field types, not a recorded live response. Values are placeholders; null marks a field whose type could not be resolved.

Success status: 200

{
  "source": "<string>",
  "providerCallsEnabled": false,
  "evidenceIngestionEnabled": false,
  "staticFixtureEvidenceCanSatisfyCompliance": false,
  "authenticatedDecisionAttributionRequired": false,
  "liveDirectoryChangesAllowed": false,
  "liveShareChangesAllowed": false,
  "liveNtfsAclChangesAllowed": false,
  "dryRunRequired": false,
  "totalShares": null,
  "endpoints": null,
  "validSites": null,
  "validStatuses": [],
  "recertificationDecisionStatuses": [],
  "recertificationRequest": null,
  "validPermissionTypes": [],
  "riskLevels": [],
  "blockedReasons": []
}

GET/api/identity/shares/open-access/{id}

audit access

Shares open access.

Permissions

Access classCredentialScoping
auditAn authenticated session or API bearer token is required.The access class is enforced first; site and environment scopes narrow resources on scoped operations.

HTTP request

GET https://<your-host>/api/identity/shares/open-access/{id}

Path parameters

NameTypeRequirementDescription
idstringRequiredIdentifier of the target resource in the request path.

Query parameters

This operation has no query parameters.

Request headers

NameTypeRequirementDescription
AuthorizationstringOptionalHuman credential alternative: supply one Bearer rys_... session token, ryk_... API token, or validated identity-provider JWT here. Do not combine it with X-Ryuki-Session-Id or the session cookie; conflicting carriers fail closed.
X-Ryuki-Session-IdstringOptionalOpaque rys_... session-token carrier used by the portal for mutations. Administrative session UUIDs cannot authenticate. Supply exactly one credential carrier per request.
traceparentstringOptionalOptional correlation input. When the second dash-separated segment has 32 characters, Ryuki reuses it as the request correlation identifier; this is not full W3C validation.

Request body

This operation does not accept a request body.

Response

StatusDescriptionBody
200OKValue

For 200, the known response body type is Value. Its field schema is unavailable, so no JSON shape is inferred.

Errors

JSON failures use one of the platform error envelopes and include the request correlation metadata when routing reaches the API middleware. See Errors for the exact shapes, authentication failures, retry guidance, and transport-level exceptions.

Examples

Request

curl --silent --show-error --globoff \
  --request GET \
  --header 'Authorization: Bearer <token>' \
  'https://<your-host>/api/identity/shares/open-access/<id>'

GET/api/identity/shares/permissions/{id}

audit access

Shares permission report.

Permissions

Access classCredentialScoping
auditAn authenticated session or API bearer token is required.The access class is enforced first; site and environment scopes narrow resources on scoped operations.

HTTP request

GET https://<your-host>/api/identity/shares/permissions/{id}

Path parameters

NameTypeRequirementDescription
idstringRequiredIdentifier of the target resource in the request path.

Query parameters

This operation has no query parameters.

Request headers

NameTypeRequirementDescription
AuthorizationstringOptionalHuman credential alternative: supply one Bearer rys_... session token, ryk_... API token, or validated identity-provider JWT here. Do not combine it with X-Ryuki-Session-Id or the session cookie; conflicting carriers fail closed.
X-Ryuki-Session-IdstringOptionalOpaque rys_... session-token carrier used by the portal for mutations. Administrative session UUIDs cannot authenticate. Supply exactly one credential carrier per request.
traceparentstringOptionalOptional correlation input. When the second dash-separated segment has 32 characters, Ryuki reuses it as the request correlation identifier; this is not full W3C validation.

Request body

This operation does not accept a request body.

Response

StatusDescriptionBody
200OKValue

For 200, the known response body type is Value. Its field schema is unavailable, so no JSON shape is inferred.

Errors

JSON failures use one of the platform error envelopes and include the request correlation metadata when routing reaches the API middleware. See Errors for the exact shapes, authentication failures, retry guidance, and transport-level exceptions.

Examples

Request

curl --silent --show-error --globoff \
  --request GET \
  --header 'Authorization: Bearer <token>' \
  'https://<your-host>/api/identity/shares/permissions/<id>'

GET/api/identity/shares/recertification-due

audit access

Shares recertification due.

Permissions

Access classCredentialScoping
auditAn authenticated session or API bearer token is required.The access class is enforced first; site and environment scopes narrow resources on scoped operations.

HTTP request

GET https://<your-host>/api/identity/shares/recertification-due

Path parameters

This operation has no path parameters.

Query parameters

NameTypeRequirementDescription
sitestringOptionalSite identifier used to scope or filter the operation.

Request headers

NameTypeRequirementDescription
AuthorizationstringOptionalHuman credential alternative: supply one Bearer rys_... session token, ryk_... API token, or validated identity-provider JWT here. Do not combine it with X-Ryuki-Session-Id or the session cookie; conflicting carriers fail closed.
X-Ryuki-Session-IdstringOptionalOpaque rys_... session-token carrier used by the portal for mutations. Administrative session UUIDs cannot authenticate. Supply exactly one credential carrier per request.
traceparentstringOptionalOptional correlation input. When the second dash-separated segment has 32 characters, Ryuki reuses it as the request correlation identifier; this is not full W3C validation.

Request body

This operation does not accept a request body.

Response

StatusDescriptionBody
200OKValue

For 200, the known response body type is Value. Its field schema is unavailable, so no JSON shape is inferred.

Errors

JSON failures use one of the platform error envelopes and include the request correlation metadata when routing reaches the API middleware. See Errors for the exact shapes, authentication failures, retry guidance, and transport-level exceptions.

Examples

Request

curl --silent --show-error --globoff \
  --request GET \
  --header 'Authorization: Bearer <token>' \
  'https://<your-host>/api/identity/shares/recertification-due'

POST/api/identity/shares/recertify/{id}

execute access

Shares recertify.

Permissions

Access classCredentialScoping
executeAn authenticated session or API bearer token is required.The access class is enforced first; site and environment scopes narrow resources on scoped operations.

HTTP request

POST https://<your-host>/api/identity/shares/recertify/{id}

Path parameters

NameTypeRequirementDescription
idstringRequiredIdentifier of the target resource in the request path.

Query parameters

This operation has no query parameters.

Request headers

NameTypeRequirementDescription
AuthorizationstringOptionalHuman credential alternative: supply one Bearer rys_... session token, ryk_... API token, or validated identity-provider JWT here. Do not combine it with X-Ryuki-Session-Id or the session cookie; conflicting carriers fail closed.
Content-TypestringRequiredRequired by the resolved Axum Json<T> request extractor; send application/json.
X-Ryuki-Session-IdstringOptionalOpaque rys_... session-token carrier used by the portal for mutations. Administrative session UUIDs cannot authenticate. Supply exactly one credential carrier per request.
Idempotency-KeystringOptionalOptional at-most-once retry key for human mutations. When omitted, the idempotency middleware passes the request through without deduplication.
traceparentstringOptionalOptional correlation input. When the second dash-separated segment has 32 characters, Ryuki reuses it as the request correlation identifier; this is not full W3C validation.

Request body

JSON structure: RecertifyShareRequest.

NameTypeRequirementDescription
evidenceIdstringOptionalValue of evidenceId in the JSON request body.

Response

No successful response schema was extracted for this operation.

Errors

JSON failures use one of the platform error envelopes and include the request correlation metadata when routing reaches the API middleware. See Errors for the exact shapes, authentication failures, retry guidance, and transport-level exceptions.

Examples

Request

curl --silent --show-error --globoff \
  --request POST \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --header 'Idempotency-Key: <idempotency-key>' \
  --data '{}' \
  'https://<your-host>/api/identity/shares/recertify/<id>'

POST/api/identity/shares/revoke/{id}/{group}

execute access

Revoke shares.

Permissions

Access classCredentialScoping
executeAn authenticated session or API bearer token is required.The access class is enforced first; site and environment scopes narrow resources on scoped operations.

HTTP request

POST https://<your-host>/api/identity/shares/revoke/{id}/{group}

Path parameters

NameTypeRequirementDescription
idstringRequiredIdentifier of the target resource in the request path.
groupstringRequiredValue of the group request-path segment.

Query parameters

This operation has no query parameters.

Request headers

NameTypeRequirementDescription
AuthorizationstringOptionalHuman credential alternative: supply one Bearer rys_... session token, ryk_... API token, or validated identity-provider JWT here. Do not combine it with X-Ryuki-Session-Id or the session cookie; conflicting carriers fail closed.
X-Ryuki-Session-IdstringOptionalOpaque rys_... session-token carrier used by the portal for mutations. Administrative session UUIDs cannot authenticate. Supply exactly one credential carrier per request.
Idempotency-KeystringOptionalOptional at-most-once retry key for human mutations. When omitted, the idempotency middleware passes the request through without deduplication.
traceparentstringOptionalOptional correlation input. When the second dash-separated segment has 32 characters, Ryuki reuses it as the request correlation identifier; this is not full W3C validation.

Request body

This operation does not accept a request body.

Response

StatusDescriptionBody
200OKValue

200 response body

Structure: Value.

NameTypeRequirementDescription
messageJSON valueRequiredHuman-readable error or result message.
share_idJSON valueRequiredValue of share_id returned in the response body.
ad_groupJSON valueRequiredValue of ad_group returned in the response body.

Errors

JSON failures use one of the platform error envelopes and include the request correlation metadata when routing reaches the API middleware. See Errors for the exact shapes, authentication failures, retry guidance, and transport-level exceptions.

Examples

Request

curl --silent --show-error --globoff \
  --request POST \
  --header 'Authorization: Bearer <token>' \
  --header 'Idempotency-Key: <idempotency-key>' \
  'https://<your-host>/api/identity/shares/revoke/<id>/<group>'

Schematic response body

Illustrative shape generated from the extracted field types, not a recorded live response. Values are placeholders; null marks a field whose type could not be resolved.

Success status: 200

{
  "message": null,
  "share_id": null,
  "ad_group": null
}

GET/api/identity/shares/stale-owners

audit access

Shares stale owners.

Permissions

Access classCredentialScoping
auditAn authenticated session or API bearer token is required.The access class is enforced first; site and environment scopes narrow resources on scoped operations.

HTTP request

GET https://<your-host>/api/identity/shares/stale-owners

Path parameters

This operation has no path parameters.

Query parameters

NameTypeRequirementDescription
sitestringOptionalSite identifier used to scope or filter the operation.

Request headers

NameTypeRequirementDescription
AuthorizationstringOptionalHuman credential alternative: supply one Bearer rys_... session token, ryk_... API token, or validated identity-provider JWT here. Do not combine it with X-Ryuki-Session-Id or the session cookie; conflicting carriers fail closed.
X-Ryuki-Session-IdstringOptionalOpaque rys_... session-token carrier used by the portal for mutations. Administrative session UUIDs cannot authenticate. Supply exactly one credential carrier per request.
traceparentstringOptionalOptional correlation input. When the second dash-separated segment has 32 characters, Ryuki reuses it as the request correlation identifier; this is not full W3C validation.

Request body

This operation does not accept a request body.

Response

StatusDescriptionBody
200OKValue

For 200, the known response body type is Value. Its field schema is unavailable, so no JSON shape is inferred.

Errors

JSON failures use one of the platform error envelopes and include the request correlation metadata when routing reaches the API middleware. See Errors for the exact shapes, authentication failures, retry guidance, and transport-level exceptions.

Examples

Request

curl --silent --show-error --globoff \
  --request GET \
  --header 'Authorization: Bearer <token>' \
  'https://<your-host>/api/identity/shares/stale-owners'

GET/api/identity/shares/{id}

audit access

Get shares.

Permissions

Access classCredentialScoping
auditAn authenticated session or API bearer token is required.The access class is enforced first; site and environment scopes narrow resources on scoped operations.

HTTP request

GET https://<your-host>/api/identity/shares/{id}

Path parameters

NameTypeRequirementDescription
idstringRequiredIdentifier of the target resource in the request path.

Query parameters

This operation has no query parameters.

Request headers

NameTypeRequirementDescription
AuthorizationstringOptionalHuman credential alternative: supply one Bearer rys_... session token, ryk_... API token, or validated identity-provider JWT here. Do not combine it with X-Ryuki-Session-Id or the session cookie; conflicting carriers fail closed.
X-Ryuki-Session-IdstringOptionalOpaque rys_... session-token carrier used by the portal for mutations. Administrative session UUIDs cannot authenticate. Supply exactly one credential carrier per request.
traceparentstringOptionalOptional correlation input. When the second dash-separated segment has 32 characters, Ryuki reuses it as the request correlation identifier; this is not full W3C validation.

Request body

This operation does not accept a request body.

Response

StatusDescriptionBody
200OKValue

For 200, the known response body type is Value. Its field schema is unavailable, so no JSON shape is inferred.

Errors

JSON failures use one of the platform error envelopes and include the request correlation metadata when routing reaches the API middleware. See Errors for the exact shapes, authentication failures, retry guidance, and transport-level exceptions.

Examples

Request

curl --silent --show-error --globoff \
  --request GET \
  --header 'Authorization: Bearer <token>' \
  'https://<your-host>/api/identity/shares/<id>'
Last updated 2026-07-16 · Generated from the API route registrations.