Browse the API reference

Revoke Report Share

post/extensions/roboledger/{graph_id}/operations/revoke-report-share

Part of Extensions: RoboLedger.

Withdraws a report previously shared to one recipient graph: deletes the copy from that recipient's schema and stamps the share record revoked. Scoped to a single recipient — withdrawing a distribution to a whole publish list is one call per member. A recipient who already deleted the copy is not an error; the share is still marked revoked and copy_deleted returns false. The linked entity in the recipient's graph is left in place, so an investor's declared holding survives.

Idempotency: supply an Idempotency-Key header to make safe retries; replays within 24 hours return the same envelope. Reusing the key with a different body returns HTTP 409 Conflict.

Authentication

Authenticate in any one of these ways — not all of them:

  • API key in the X-API-Key header.
  • Bearer token in the Authorization header.

Path parameters

NameTypeDescription
graph_idrequiredstringGraph Id

Header parameters

NameTypeDescription
Idempotency-KeyoptionalstringIdempotency-Key

Request body

Required, application/json.

FieldTypeDescription
target_graph_idrequiredstring

Recipient graph whose copy should be withdrawn.

report_idrequiredstring

The Report whose share to withdraw.

Example request

curl
curl -X POST "https://api.robosystems.ai/extensions/roboledger/{graph_id}/operations/revoke-report-share" \
  -H "X-API-Key: $ROBOSYSTEMS_API_KEY" \
  -H "Idempotency-Key: <Idempotency-Key>" \
  -H "Content-Type: application/json" \
  -d '{
  "report_id": "rpt_01HVF8T0M2YTAY3BBNRH0V0",
  "target_graph_id": "kg1a2b3c4d5e6f7a8b9c"
}'

Responses

200 Successful Response

FieldTypeDescription
operationrequiredstring

Kebab-case operation name

operationIdrequiredstring

op_-prefixed ULID for audit and SSE correlation

statusrequiredstring

Operation lifecycle state

One of: completed, pending, failed

resultoptionalRevokeReportShareResponse

Command-specific result payload

RevokeReportShareResponse fields
FieldTypeDescription
report_idrequiredstring

The report whose share was revoked.

target_graph_idrequiredstring

Recipient the copy was pulled from.

revoked_atrequiredstring (date-time)

When the share was revoked.

copy_deletedrequiredboolean

True when a copy was found and deleted in the recipient's schema. False when the recipient had already deleted it themselves — the share is still marked revoked.

atrequiredstring

ISO-8601 UTC timestamp

createdByoptionalstring

User ID that initiated the operation (null for legacy callers)

idempotentReplayoptionalboolean

True when this envelope came from the idempotency cache — the underlying command did not execute again. False on fresh executions.

Default: false

StatusMeaning
400Invalid request
401Authentication required
403Access denied
404Resource not found
409Idempotency-Key conflict — key reused with different body
422Validation error
429Rate limit exceeded
500Internal server error