set_end_user_standing #

View this page as Markdown

Generated automatically from the published contract sources.

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

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.

Contract description #

Suspend or reinstate one of an application's end users, by standing. With standing: suspended, every session ends at once on every device and the next sign-in is refused, until a call with standing: active. Your application's cached verification may last past the suspension by at most its cache interval. With standing: active, the user can sign in again; the sessions the suspension ended stay ended. An optional environment (development or production; absent, production) chooses the realm you address; development works only once create_environment has turned development on.

Access and action metadata #

{
  "name": "set_end_user_standing",
  "resource": "realm",
  "tier": "reversible",
  "product": "cloud",
  "summary": "Set one end user's standing: `suspended` ends every session at once and refuses the next sign-in by name until a call sets `active`, which restores the standing and leaves the ended sessions ended.",
  "annotations": {
    "readOnlyHint": false,
    "destructiveHint": true,
    "openWorldHint": false
  }
}

MCP catalog entry #

{
  "name": "set_end_user_standing",
  "title": "Suspend or reinstate app user",
  "tier": "reversible",
  "summary": "Suspend or reinstate one of an application's end users, by `standing`. With `standing: suspended`, every session ends at once on every device and the next sign-in is refused, until a call with `standing: active`. Your application's cached verification may last past the suspension by at most its cache interval. With `standing: active`, the user can sign in again; the sessions the suspension ended stay ended. An optional `environment` (`development` or `production`; absent, `production`) chooses the realm you address; `development` works only once `create_environment` has turned development on.",
  "owners": [
    "ACS-L0-01",
    "PLD-L0-40"
  ],
  "scenario": "ACS-L0-08"
}

request #

JSON pointer Description and constraints
"" (root) Type: object
Required fields: ["application","end_user","standing"]
Additional properties: false
/properties/application The application id, from list_applications.

Type: string
/properties/end_user The end user's opaque id, from list_end_users.

Type: string
/properties/standing suspended ends every session of the user at once and refuses its next sign-in; active restores the standing, the sessions the suspension ended staying ended.

Type: string
Allowed values: ["suspended","active"]
/properties/environment Optional. The environment whose realm your call addresses, development or production; leave it out for production.

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

response #

JSON pointer Description and constraints
"" (root) Type: object
Required fields: ["contract_version","end_user"]
Additional properties: false
/properties/contract_version Required value: 1
/properties/end_user Type: object
Required fields: ["id","standing"]
Additional properties: false
/properties/end_user/properties/id Type: string
/properties/end_user/properties/standing Type: string
Allowed values: ["suspended","active"]
/properties/end_user/properties/sessions_ended Present where standing is suspended: the count of the user's sessions the suspension ended.

Type: integer
/properties/detail Type: string

Complete payload contract #

{
  "request": {
    "type": "object",
    "required": [
      "application",
      "end_user",
      "standing"
    ],
    "properties": {
      "application": {
        "type": "string",
        "description": "The application id, from `list_applications`."
      },
      "end_user": {
        "type": "string",
        "description": "The end user's opaque id, from `list_end_users`."
      },
      "standing": {
        "type": "string",
        "enum": [
          "suspended",
          "active"
        ],
        "description": "`suspended` ends every session of the user at once and refuses its next sign-in; `active` restores the standing, the sessions the suspension ended staying ended."
      },
      "environment": {
        "type": "string",
        "pattern": "^(development|production)$",
        "description": "Optional. The environment whose realm your call addresses, `development` or `production`; leave it out for `production`."
      }
    },
    "additionalProperties": false
  },
  "response": {
    "type": "object",
    "required": [
      "contract_version",
      "end_user"
    ],
    "properties": {
      "contract_version": {
        "const": 1
      },
      "end_user": {
        "type": "object",
        "required": [
          "id",
          "standing"
        ],
        "properties": {
          "id": {
            "type": "string"
          },
          "standing": {
            "type": "string",
            "enum": [
              "suspended",
              "active"
            ]
          },
          "sessions_ended": {
            "type": "integer",
            "description": "Present where `standing` is `suspended`: the count of the user's sessions the suspension ended."
          }
        },
        "additionalProperties": false
      },
      "detail": {
        "type": "string"
      }
    },
    "additionalProperties": false
  }
}

Shared contracts #