HYBRID-CHAINDEVELOPERS
DOCUMENTATIONv2
POST

Admin Functions

Set kyc stage status

/api/v2/admin/kyc_status_update
AUTHENTICATIONBearer token · trust:writeAUTHORITATIVE OWNERidentity-complianceCONTRACT AUTHORITYCapability registry · plannedSTATUSPlanned · not executable
PLANNING CONTRACT · NOT CALLABLE

This page describes intended capability and integration boundaries so people and agents can prepare safely. Do not send this request or register it as an executable tool. Wait until the capability registry marks it implemented-contract, then re-fetch the deployed OpenAPI document and build the request from that machine contract.

PURPOSE + BUSINESS CONTEXT

Planned capability: apply the requested transition to set kyc stage status through the authoritative trust service boundary.

WHEN THIS CALL IS USEFUL

Do not call or register this operation as an executable agent tool yet. Use this page to plan the future set kyc stage status workflow; enable it only after the status becomes implemented-contract and the exact operation appears in deployed OpenAPI.

OUTCOME · Planned · Create or advance

What changes

None today: this route is not executable. Its intended behavior is: creates or advances only the set kyc stage status resource described by this contract after authorization, validation, policy, and idempotency gates pass.

WHY IT MATTERS

  • Lets people and agents prepare for set kyc stage status without falsely presenting roadmap scope as a live capability.
  • Gives people and agents a contract-backed way to advance set kyc stage status.
  • Separates subject identity, consent, evidence, provider output, review, issuer credentials, and relying-party acceptance instead of collapsing them into a universal trust score.

ISOLATION + AUTHORITY

Bearer subject, tenant, purpose, policy version, role, issuer, reviewer, provider, and relying-party boundaries remain distinct. The response or transition grants no payment, custody, settlement, publisher, matching, or trading authority and must not expose regulated evidence beyond the live schema. This planning record grants no runtime authority, and only deployed OpenAPI can define an executable public contract.

BEFORE YOU CALL

  • First confirm that this operation is marked implemented-contract and exists in the currently deployed OpenAPI document; until then, no production request is valid.
  • Its capability-registry profile is provisional integration guidance, not an executable request schema.
  • Authenticate at the documented boundary: bearer.
  • Treat the proposed tenant_uuid (body), profile_uuid (body), verification_uuid (body), decision (body), reason_code (body), expected_version (body), step_up_token (body) as planning input only; re-generate the request from deployed OpenAPI before making a call.
  • Use one Idempotency-Key only for retries of the same byte-equivalent logical mutation.
  • Resolve the applicable purpose, policy version, consent or role basis, and required assurance before relying on this result.

WHAT TO DO NEXT

  • Keep this operation disabled in clients, agents, SDKs, and workflow automation while it remains planned-contract.
  • Use the stated owner, lifecycle, authority boundary, and provisional set kyc stage status profile to prepare requirements and conformance tests without sending a request.
  • Monitor the capability registry for implemented-contract, then re-fetch deployed OpenAPI and validate its exact security, parameters, schemas, responses, and agent metadata before enabling the integration.

AGENT GUIDANCE

  • Never call this planned contract, include it in an executable tool registry, or infer runtime availability from this readable page.
  • Its capability-registry profile is provisional integration guidance, not an executable request schema.
  • Use set kyc stage status only for the purpose and lifecycle stage described by this operation; do not treat it as authority for an adjacent action.
  • Treat the proposed tenant_uuid (body), profile_uuid (body), verification_uuid (body), decision (body), reason_code (body), expected_version (body), step_up_token (body) as planning input only; re-generate the request from deployed OpenAPI before making a call.
  • Treat policy availability, consent, evidence capture, completed checks, review, decision, credential issuance, validity, and relying-party acceptance as separate facts.
  • After a timeout or conflict, read authoritative state before deciding whether an equivalent retry is safe.
  • When implementation lands, discard generated requests based on this planning record and rebuild them from the deployed OpenAPI operation.
MACHINE CONTRACT

This operation is a non-executable planning contract. Its capability-registry record defines the intended owner, parameters, responses, and integration boundary until an implemented Rust OpenAPI operation replaces it.

EXTENDED INTEGRATION GUIDANCE

Readable request and response reference

Examples describe the reviewed planning contract and remain non-executable until promoted into OpenAPI.

PARAMETERS

Headers, path, query, and body

NAMELOCATIONPRESENCETYPE / RULES / PURPOSE
AuthorizationheaderRequired

Bearer tokenCredential containing trust:write authority.EXAMPLEBearer hc_live_…

Idempotency-KeyheaderRequired

ASCII string · 1–128Caller-generated stable key reused for retries of the same logical mutation.EXAMPLEpost-api-v2-admin-kyc-status-update-request-001

tenant_uuidbodyRequired

identifierTenant policy boundary for the review.EXAMPLEtenant-uuid-01

profile_uuidbodyRequired

identifierSubject whose review record is being decided.EXAMPLEprofile-uuid-01

verification_uuidbodyRequired

identifierCurrent subject verification selected from the review queue.EXAMPLEverification-uuid-01

decisionbodyRequired

APPROVE | REJECT | REQUEST_INFORMATIONExact reviewer decision; it does not authorize another business domain.EXAMPLEdecision-01

reason_codebodyRequired

allowlisted identifierStructured retained rationale.EXAMPLEreason-code-01

evidence_commitmentbodyOptional

SHA-256 digestCommitment to separately retained review evidence; raw KYC material is forbidden.EXAMPLEevidence-commitment-01

expected_versionbodyRequired

integer · ≥1Current verification version for optimistic concurrency.EXAMPLE1

step_up_tokenbodyRequired

purpose-bound tokenFresh IDENTITY_REVIEW authorization.EXAMPLEstep-up-token-01

REQUEST

JSON body example

{
  "tenant_uuid": "tenant-uuid-01",
  "profile_uuid": "profile-uuid-01",
  "verification_uuid": "verification-uuid-01",
  "decision": "decision-01",
  "reason_code": "reason-code-01",
  "evidence_commitment": "evidence-commitment-01",
  "expected_version": 1,
  "step_up_token": "step-up-token-01"
}

RESPONSES

Status and payload examples

201Mutation accepted and canonical state returned.Not executable · JSON RESPONSE+
{
  "result": "See the operation's authoritative OpenAPI response schema."
}
INTEGRATION DECISION
CALLER ACTION
Do not send this request or register it as an executable agent tool. Use the implemented alternatives linked by the module guide.
RETRY SAFETY
Do not retry on a timer. Re-fetch production OpenAPI and proceed only after this exact operation appears there.
STATE RECONCILIATION
No runtime state exists to reconcile for this planning contract. Continue from subject-scoped trust claims, evidence, credentials, reviews, decisions, presentations, and revocations through an implemented operation.
ESCALATE WHEN
Escalate when subject binding, evidence minimization, issuer or reviewer authority, decision lineage, expiry, or revocation cannot be established.
401Bearer credential is missing, expired, or invalid.Not executable · JSON RESPONSE+
{
  "code": "request_failed",
  "message": "Bearer credential is missing, expired, or invalid."
}
INTEGRATION DECISIONrequest_failed
CALLER ACTION
Do not send this request or register it as an executable agent tool. Use the implemented alternatives linked by the module guide.
RETRY SAFETY
Do not retry on a timer. Re-fetch production OpenAPI and proceed only after this exact operation appears there.
STATE RECONCILIATION
No runtime state exists to reconcile for this planning contract. Continue from subject-scoped trust claims, evidence, credentials, reviews, decisions, presentations, and revocations through an implemented operation.
ESCALATE WHEN
Escalate when subject binding, evidence minimization, issuer or reviewer authority, decision lineage, expiry, or revocation cannot be established.
403The principal lacks the required scope, role, tenant, or step-up authority.Not executable · JSON RESPONSE+
{
  "code": "request_failed",
  "message": "The principal lacks the required scope, role, tenant, or step-up authority."
}
INTEGRATION DECISIONrequest_failed
CALLER ACTION
Do not send this request or register it as an executable agent tool. Use the implemented alternatives linked by the module guide.
RETRY SAFETY
Do not retry on a timer. Re-fetch production OpenAPI and proceed only after this exact operation appears there.
STATE RECONCILIATION
No runtime state exists to reconcile for this planning contract. Continue from subject-scoped trust claims, evidence, credentials, reviews, decisions, presentations, and revocations through an implemented operation.
ESCALATE WHEN
Escalate when subject binding, evidence minimization, issuer or reviewer authority, decision lineage, expiry, or revocation cannot be established.
422Path, query, or body validation failed.Not executable · JSON RESPONSE+
{
  "code": "request_failed",
  "message": "Path, query, or body validation failed."
}
INTEGRATION DECISIONrequest_failed
CALLER ACTION
Do not send this request or register it as an executable agent tool. Use the implemented alternatives linked by the module guide.
RETRY SAFETY
Do not retry on a timer. Re-fetch production OpenAPI and proceed only after this exact operation appears there.
STATE RECONCILIATION
No runtime state exists to reconcile for this planning contract. Continue from subject-scoped trust claims, evidence, credentials, reviews, decisions, presentations, and revocations through an implemented operation.
ESCALATE WHEN
Escalate when subject binding, evidence minimization, issuer or reviewer authority, decision lineage, expiry, or revocation cannot be established.
503The authoritative service or read model is unavailable.Not executable · JSON RESPONSE+
{
  "code": "request_failed",
  "message": "The authoritative service or read model is unavailable."
}
INTEGRATION DECISIONrequest_failed
CALLER ACTION
Do not send this request or register it as an executable agent tool. Use the implemented alternatives linked by the module guide.
RETRY SAFETY
Do not retry on a timer. Re-fetch production OpenAPI and proceed only after this exact operation appears there.
STATE RECONCILIATION
No runtime state exists to reconcile for this planning contract. Continue from subject-scoped trust claims, evidence, credentials, reviews, decisions, presentations, and revocations through an implemented operation.
ESCALATE WHEN
Escalate when subject binding, evidence minimization, issuer or reviewer authority, decision lineage, expiry, or revocation cannot be established.

OPERATIONAL NOTES

Security and lifecycle guarantees

  • The Rust gateway validates the public contract and routes only to the authoritative owner; clients never address internal services directly.
  • Mutations are retry-safe only when the same Idempotency-Key and canonical request body are reused.

UPGRADING FROM V1

Legacy calls replaced by this operation

If you maintain an older integration, use this map to find the V2 replacement. Do not translate the old request field-for-field: rebuild it from the V2 parameters and schemas above because identity, authorization, replay protection, and response semantics may have changed.

POST/api/v1/admin/kyc_status_updateADMIN: Set KYC Stage Status
DOCUMENTATION STATUS

This planned contract now defines its public parameters, authorization boundary, replay behavior, responses, and authoritative owner. It remains non-executable until its owner adapter and conformance tests are promoted into the Rust gateway.

Return to the V2 directory