Properties
| Name | Type | Description |
|---|---|---|
| success | boolean | |
| operation | string | |
| action | string | kebab-case verb; matches the route segment. |
| item | objectnull | |
| result | object | |
| meta | object |
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://raw.githubusercontent.com/api-evangelist/gtm-api/main/json-schema/gtm-api-recall-account-share-response-schema.json",
"title": "RecallAccountShareResponse",
"x-generated": "2026-10-18",
"x-method": "derived",
"x-generator": "derive-json-schema.py",
"x-source": "openapi/gtm-api-id-openapi.yaml#/components/schemas/RecallAccountShareResponse",
"type": "object",
"properties": {
"success": {
"type": "boolean",
"enum": [
true
]
},
"operation": {
"type": "string",
"enum": [
"action"
]
},
"action": {
"type": "string",
"description": "kebab-case verb; matches the route segment."
},
"item": {
"type": [
"object",
"null"
],
"properties": {
"sid": {
"type": "string"
},
"team_sid": {
"type": "string",
"description": "The OWNER team: the row tenant, the side that lent the account out."
},
"channel": {
"type": "string",
"enum": [
"linkedin",
"email"
],
"description": "Which channel service owns the physical account pair."
},
"to_team_sid": {
"type": "string",
"description": "The HOLDER team: the side that borrowed the account."
},
"to_user_sid": {
"type": [
"string",
"null"
],
"description": "Resolved user when the share was targeted by email; null when targeted by team sid."
},
"to_email": {
"type": [
"string",
"null"
],
"description": "The targeting input kept for audit; null when targeted by team sid."
},
"owner_cluster_id": {
"type": "integer"
},
"holder_cluster_id": {
"type": "integer"
},
"owner_account_sid": {
"type": "string",
"description": "The owner's channel account row, parked for the duration of the loan. Prefix agnostic: ln_ac_ on LinkedIn, em_ac_ on email."
},
"owner_channel_ref": {
"type": [
"string",
"null"
],
"description": "Opaque second row the channel needs to name (LinkedIn puts its ab_br_ browser sid here); null when the channel needs none."
},
"holder_account_sid": {
"type": [
"string",
"null"
],
"description": "The holder's copy. NULL until the copy phase lands, so it is null on every pre-active row."
},
"holder_channel_ref": {
"type": [
"string",
"null"
]
},
"owner_account_label": {
"type": [
"string",
"null"
],
"description": "The channel's display name for the lent account, e.g. \"Jane Roe (jane-roe)\". Use it to tell one share from another when reporting to a human. Null when the channel had no name to give. Display only: never filter, match or reason on it."
},
"status": {
"type": "string",
"enum": [
"pending",
"owner_parked",
"active",
"closing",
"holder_released",
"rolling_back",
"returned",
"recalled",
"failed"
],
"description": "The durable phase, and the answer to \"did the loan start\". Only active means the holder can work."
},
"holder_over_slot": {
"type": "boolean",
"description": "True when the holder had no free account slot at create, so the copy landed in the channel's subscription hold. The loan still reaches active; the holder cannot work until it upgrades."
},
"end_reason": {
"type": [
"string",
"null"
],
"enum": [
"returned_by_holder",
"recalled_by_owner",
"holder_deleted_copy",
"holder_team_purged",
"owner_team_purged"
],
"description": "Stamped when an ending is REQUESTED. Only ever set on a row that reached active."
},
"failure_reason": {
"type": [
"string",
"null"
],
"enum": [
"park_failed",
"export_failed",
"copy_refused",
"probe_stale",
"team_purged"
],
"description": "Why a pre-active phase gave up. Non null on exactly rolling_back and failed."
},
"planned_return_at": {
"type": [
"string",
"null"
],
"description": "Informational only. When it passes the owner is emailed a recall link once; there is NO auto return."
},
"expiry_notified_at": {
"type": [
"string",
"null"
]
},
"phase_claimed_at": {
"type": [
"string",
"null"
]
},
"phase_attempts": {
"type": "integer",
"description": "Attempts on the CURRENT phase, reset on every advance. A large and growing value is the stuck signal on a phase that may not give up."
},
"ended_at": {
"type": [
"string",
"null"
]
},
"ended_by": {
"type": [
"object",
"null"
],
"properties": {
"actor_type": {
"type": "string",
"enum": [
"user",
"support",
"api_key",
"system",
"agent"
]
},
"actor_sid": {
"type": [
"string",
"null"
]
},
"team_sid": {
"type": "string"
},
"actor_name": {
"type": [
"string",
"null"
],
"description": "The OAuth client that acted (\"Claude\", \"n8n\"); null for a user, an API key or a system job."
},
"oauth_client_sid": {
"type": [
"string",
"null"
],
"description": "The acting OAuth client (id_oc_*); null off the OAuth path."
},
"reason": {
"type": [
"string",
"null"
],
"description": "Why a system actor wrote the row (snapshot_capture_job, ...); null otherwise."
},
"permissions": {
"type": "object",
"additionalProperties": {},
"description": "Internal audit context: the grant set the actor held at write time. Not a contract."
},
"cluster_id": {
"type": [
"integer",
"null"
],
"description": "Internal audit context: the cluster that served the write."
},
"trace_id": {
"type": [
"string",
"null"
],
"description": "Internal audit context: the trace id of the request that wrote the row."
}
},
"required": [
"actor_type",
"actor_sid",
"team_sid",
"permissions"
],
"description": "Who ended it. The machine readable why is end_reason (an ending) or failure_reason (a failure), never this blob."
},
"created_by": {
"type": [
"object",
"null"
],
"properties": {
"actor_type": {
"type": "string",
"enum": [
"user",
"support",
"api_key",
"system",
"agent"
]
},
"actor_sid": {
"type": [
"string",
"null"
]
},
"team_sid": {
"type": "string"
},
"actor_name": {
"type": [
"string",
"null"
],
"description": "The OAuth client that acted (\"Claude\", \"n8n\"); null for a user, an API key or a system job."
},
"oauth_client_sid": {
"type": [
"string",
"null"
],
"description": "The acting OAuth client (id_oc_*); null off the OAuth path."
},
"reason": {
"type": [
"string",
"null"
],
"description": "Why a system actor wrote the row (snapshot_capture_job, ...); null otherwise."
},
"permissions": {
"type": "object",
"additionalProperties": {},
"description": "Internal audit context: the grant set the actor held at write time. Not a contract."
},
"cluster_id": {
"type": [
"integer",
"null"
],
"description": "Internal audit context: the cluster that served the write."
},
"trace_id": {
"type": [
"string",
"null"
],
"description": "Internal audit context: the trace id of the request that wrote the row."
}
},
"required": [
"actor_type",
"actor_sid",
"team_sid",
"permissions"
]
},
"created_at": {
"type": "string"
},
"updated_at": {
"type": "string"
}
},
"required": [
"sid",
"team_sid",
"channel",
"to_team_sid",
"to_user_sid",
"to_email",
"owner_cluster_id",
"holder_cluster_id",
"owner_account_sid",
"owner_channel_ref",
"holder_account_sid",
"holder_channel_ref",
"owner_account_label",
"status",
"holder_over_slot",
"end_reason",
"failure_reason",
"planned_return_at",
"expiry_notified_at",
"phase_claimed_at",
"phase_attempts",
"ended_at",
"ended_by",
"created_by",
"created_at",
"updated_at"
]
},
"result": {
"type": "object",
"properties": {
"closing_count": {
"type": "integer",
"minimum": 0,
"description": "Shares this call stamped closing. The teardown is the driver's, so this is never \"recalled\" or \"returned\"."
},
"total_matched": {
"type": "integer",
"minimum": 0,
"description": "True count of active shares the target set held. closing_count below this means a remainder is left; re-read the count before the next call."
}
},
"required": [
"closing_count",
"total_matched"
]
},
"meta": {
"type": "object",
"properties": {
"trace_id": {
"type": "string",
"description": "UUID v7; same 128-bit value as the X-Trace-Id header."
},
"span_id": {
"type": "string",
"pattern": "^[0-9a-f]{16}$",
"description": "16 hex chars, root span of this request."
},
"timestamp": {
"type": "string",
"description": "ISO 8601 UTC (Y-m-dTH:i:sZ), response time."
},
"duration_ms": {
"type": "integer",
"minimum": 0,
"description": "Server-side wall clock."
},
"team_sid": {
"type": [
"string",
"null"
],
"description": "The team this call ran in (the token team, or the team_sid override). Null when unauthenticated; absent from pre-2026-08-20 backends."
},
"actor_type": {
"type": [
"string",
"null"
],
"description": "user | agent | api_key | system. Null when unauthenticated; absent from pre-2026-08-20 backends."
}
},
"required": [
"trace_id",
"span_id",
"timestamp",
"duration_ms"
]
}
},
"required": [
"success",
"operation",
"action",
"item",
"result",
"meta"
]
}
Work with this as data
Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for schemas
4 MCP tools reach this
find_json_schemasBrowse and filter every JSON Schema in the catalog.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/gtm-api-recall-account-share-response"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.