revoke_invitation

Generated automatically from the published contract sources.

Build metadata: Registered in this build. Registration describes the default dispatcher in this build. It does not guarantee that a caller has the required credential or grant, that a tool is listed for that connection, or that the required service is configured.

A script calls this action over HTTPS at POST https://turnzero.ai/api/v1/actions/revoke_invitation, with a bearer credential and the action's payload as the JSON body.

Contract description

Revoke one invitation so its URL can no longer be redeemed. An invitation that was already redeemed is unchanged: the sign-in it admitted stands. An optional `environment` (`development` or `production`; absent, `production`) names the realm the call addresses, development's standing only once `create_environment` has turned development on.

Access and action metadata

{
  "name": "revoke_invitation",
  "resource": "realm",
  "tier": "reversible",
  "summary": "End one named invitation before its redemption by stamping it revoked; a revoked invitation is refused at redemption as an unrecognized invitation; application optional, absent meaning the builder realm under super_admin alone.",
  "annotations": {
    "readOnlyHint": false,
    "destructiveHint": true,
    "openWorldHint": false
  }
}

MCP catalog entry

{
  "name": "revoke_invitation",
  "tier": "reversible",
  "summary": "Revoke one invitation so its URL can no longer be redeemed. An invitation that was already redeemed is unchanged: the sign-in it admitted stands. An optional `environment` (`development` or `production`; absent, `production`) names the realm the call addresses, development's standing only once `create_environment` has turned development on.",
  "owners": [
    "ACS-L0-01",
    "ACS-L0-08",
    "PLD-L0-40"
  ],
  "scenario": "ACS-L0-08"
}

request

JSON pointer Description and constraints
"" (root) Type: object
Required fields: ["invitation"]
Additional properties: false
/properties/application The id of the application whose realm holds the invitation (see `list_applications`). Omit it only if you are the platform operator: with no application, the act addresses the platform's own builder sign-in and requires the `super_admin` grant.

Type: string
/properties/invitation The invitation's id, as `issue_invitation` answered it.

Type: string
/properties/environment Optional. The environment whose realm the call addresses, `development` or `production` (the accounts service PRD's realm statement); absent, `production`. Ignored where `application` is absent, because the builder realm has no environment.

Type: string
Pattern: ^(development|production)$

response

JSON pointer Description and constraints
"" (root) Type: object
Required fields: ["contract_version","invitation"]
Additional properties: false
/properties/contract_version Required value: 1
/properties/invitation Type: object
Required fields: ["id","revoked_at"]
Additional properties: false
/properties/invitation/properties/id Type: string
/properties/invitation/properties/revoked_at The revocation stamp; null where the invitation was already redeemed and the act changed nothing (ACS-L0-08).

Type: ["string","null"]
/properties/detail Type: string

Complete payload contract

{
  "request": {
    "type": "object",
    "required": [
      "invitation"
    ],
    "properties": {
      "application": {
        "type": "string",
        "description": "The id of the application whose realm holds the invitation (see `list_applications`). Omit it only if you are the platform operator: with no application, the act addresses the platform's own builder sign-in and requires the `super_admin` grant."
      },
      "invitation": {
        "type": "string",
        "description": "The invitation's id, as `issue_invitation` answered it."
      },
      "environment": {
        "type": "string",
        "pattern": "^(development|production)$",
        "description": "Optional. The environment whose realm the call addresses, `development` or `production` (the accounts service PRD's realm statement); absent, `production`. Ignored where `application` is absent, because the builder realm has no environment."
      }
    },
    "additionalProperties": false
  },
  "response": {
    "type": "object",
    "required": [
      "contract_version",
      "invitation"
    ],
    "properties": {
      "contract_version": {
        "const": 1
      },
      "invitation": {
        "type": "object",
        "required": [
          "id",
          "revoked_at"
        ],
        "properties": {
          "id": {
            "type": "string"
          },
          "revoked_at": {
            "type": [
              "string",
              "null"
            ],
            "description": "The revocation stamp; null where the invitation was already redeemed and the act changed nothing (ACS-L0-08)."
          }
        },
        "additionalProperties": false
      },
      "detail": {
        "type": "string"
      }
    },
    "additionalProperties": false
  }
}

Shared contracts