get_org_self_delete_parent_by_parentorgid_requests

Read-only

Calls GET /api/org-self-delete/parent/{parentOrgId}/requests as the signed-in person · REST reference

Child organizations' deletion requests awaiting this parent

With the caller's own token. Requires org.manage in the parent or platform authority. Each live child's confirmed request awaiting this parent's decision, soonest deadline first, with what would refuse approving it now.

Arguments

ArgumentTypeDescription
parentOrgIdpathstring (uuid)required

Example call

A client sends this over the MCP session; Claude and other agents build it for you. The values are placeholders — the shape is real.

json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "get_org_self_delete_parent_by_parentorgid_requests",
    "arguments": {
      "parentOrgId": "11111111-1111-4111-8111-111111111111"
    }
  }
}

Result

On success (HTTP 200) the tool returns one text item holding the API's JSON, pretty-printed.

The parent's queue.

json
{
  "data": [
    {
      "blockers": [],
      "request": {}
    }
  ],
  "success": true
}

Fields

FieldTypeDescription
dataarray of object
data[].blockersarray of objectWhat would refuse approving it now; approving deletes only when this is empty.
data[].blockers[].amountCentsinteger | nullThe money involved, in cents, where there is one.
data[].blockers[].code"LAST_SUPERADMIN" | "OPEN_CLAWBACK" | "PAYOUTS_PAUSED_BY_CLAWBACK" | "CLAWBACK_WINDOW_OPEN" | "BALANCE_OWED" | "PAYOUT_TRANSFER_UNSETTLED" | … (13 values)
data[].blockers[].countintegerHow many of the thing the code names.
data[].blockers[].messagestringThe sentence a person reads — what holds the deletion and what clears it.
data[].blockers[].untilinteger | nullEpoch milliseconds the blocker lifts by itself, where it does (the clawback window).
data[].requestobject
data[].request.cancelledAtinteger | null
data[].request.completedAtinteger | null
data[].request.confirmedAtinteger | null
data[].request.createdAtintegerEpoch milliseconds.
data[].request.decidedAtinteger | null
data[].request.expiresAtintegerEpoch milliseconds — the current step's deadline: the code's (OTP_EXPIRY_SECONDS), then seven days for the parent.
data[].request.idstring (uuid)
data[].request.orgIdstring (uuid)
data[].request.orgNamestring
data[].request.parentOrgIdstring (uuid) | nullThe parent organization that must approve; null when there is none.
data[].request.parentOrgNamestring | null
data[].request.reasonstring | nullWhy it was cancelled or declined.
data[].request.requestedByobject
data[].request.status"AWAITING_CODE" | "AWAITING_PARENT" | "COMPLETED" | "CANCELLED" | "DECLINED" | "EXPIRED"AWAITING_CODE until the owner enters the emailed code; AWAITING_PARENT while a child organization waits for its parent; COMPLETED once deleted. CANCELLED and DECLINED carry reason. EXPIRED when the current step's deadline passed.
successtrue

When it fails

A failed call returns isError: true with the API's message as text.

400

The request was malformed or failed a guard.

403

Authenticated, but the caller holds none of the required permissions.

What the model is shown

This is the tool exactly as the server lists it in tools/list. The description starts with the REST call it makes.

json
{
  "name": "get_org_self_delete_parent_by_parentorgid_requests",
  "description": "GET /api/org-self-delete/parent/{parentOrgId}/requests — With the caller's own token. Requires `org.manage` in the parent or platform authority. Each live child's confirmed request awaiting this parent's decision, soonest deadline first, with what would refuse approving it now.",
  "inputSchema": {
    "type": "object",
    "properties": {
      "parentOrgId": {
        "type": "string"
      }
    },
    "required": [
      "parentOrgId"
    ]
  },
  "annotations": {
    "readOnlyHint": true,
    "openWorldHint": false
  }
}