run_identity_reconcile

Reconcile an org's Clerk memberships now

act entity tenant-private since 2026-10-01

Queues a reconcile of one org's Clerk memberships against Trade HQ, outside the nightly 02:00 PT run: identity-provisioner lists the org's Clerk organization on its next tick and every difference becomes a finding, as at night. Staff only. Send an Idempotency-Key: the same key again answers the same run.

Contract

shape
entity
authority
act
evidence
none
subscription
false
permission
any one of: staff.ops (the staff role staff_ops held in the Internal org, tradehq_role.staff_role); a deactivated caller is refused first
idempotency
keyed
emits
identity_reconcile.ran
MCP tool
run_identity_reconcile
decision_set
approve, reject, escalate
REST
POST https://api.containertradehq.com/v1/cap/run_identity_reconcile

Through MCP this call returns an approval request first; see Approvals.

Idempotency: keyed by the caller's Idempotency-Key, which is required: the same key and inputs replay the first result, the same key with other inputs is 409 idempotency_key_reused

Inputs

nametyperequiredvalidation
org_idorg_idrequiredtradehq-org-id; 1 to 20 characters
The org to reconcile.

Response

  • run_id · string · The run.
  • org_id · string · The org.
  • status · string · queued: identity-provisioner takes it on its next tick.
Full JSON Schema
{
  "type": "object",
  "properties": {
    "run_id": {
      "type": "string",
      "pattern": "^[0-9A-Fa-f]{8}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{4}-[0-9A-Fa-f]{12}$",
      "format": "uuid",
      "description": "The run.",
      "x-data-class": "operational"
    },
    "org_id": {
      "type": "string",
      "minLength": 1,
      "maxLength": 20,
      "pattern": "^[A-Za-z0-9_-]{1,20}$",
      "format": "tradehq-org-id",
      "description": "The org.",
      "x-data-class": "operational"
    },
    "status": {
      "type": "string",
      "enum": [
        "queued"
      ],
      "description": "queued: identity-provisioner takes it on its next tick.",
      "x-data-class": "operational"
    }
  },
  "required": [
    "run_id",
    "org_id",
    "status"
  ],
  "additionalProperties": false
}

Refusals

  • retry_key_mismatch · 409 · the Idempotency-Key was already used for another org
  • retry_key_in_flight · 409 · a request with this Idempotency-Key is still running
  • retry_key_lost · 409 · another request took over this Idempotency-Key first; nothing was queued

The platform refusals apply to every call: version, authentication, authority, validation and rate limits, each in the same envelope.

Surfaces

DesktopF
MobileF
APIF
MCPF*
VoiceD2
PushF
OneBoxN
OutboundN
  • MCP: approval required
  • Voice: degraded: confirmation
  • OneBox: no document originates a reconcile
  • Outbound: crosses to no counterparty

Events

Related

None.