create_space #

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/create_space, with a bearer credential and the action's payload as the JSON body. An MCP connection lists this action as the tool tztrack_create_space.

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 #

Create an issue space your account owns, for a repository's issue list or a program's checks. Pass your own space UUID to make a repeat safe, and a name of up to 100 characters, which it requires, to tell it apart in the listing; rename_space changes the name later. Pass the new space's id to a tztrack_ tool to use it at once; from a script, use a token with the issues grant. Your account needs tzTrack, which every account has.

Access and action metadata #

{
  "name": "create_space",
  "resource": "account",
  "tier": "reversible",
  "surface": "tztrack",
  "product": "tztrack",
  "admits": [
    "tztrack",
    "device_sign_in"
  ],
  "summary": "Create an issue space the account holds at the issue service, the space a repository's issue list or a program's checks live in: the optional `space` is a lower-case UUID you choose, so a repeat whose answer was lost converges on the same space, and absent, the platform chooses one. The required `name`, 1 to 100 printable characters and refused `invalid_request` when absent or outside that, is the space's display name, written only when the call first records the space for the account: a repeat finding the space recorded keeps the name it has, and a retry after a lost answer still writes it. The space's own token stays in the platform's vault; a program reaches the space through `relay_issue_act` under a token minted with the `issues` grant for it. The answer carries the space's identifier, whether this call created it, and the space's display name, null where it has none. The account must hold tzTrack, refused `blueprint_required` ahead of the request's form and the bounds where it does not. Bounded per account per minute, refused `feedback_rate_limited`; `issue_service_unreachable` where the service or the platform's provisioning credential could not be reached. Registered while the issue service's origin is configured.",
  "annotations": {
    "readOnlyHint": false,
    "destructiveHint": false,
    "openWorldHint": false,
    "idempotentHint": true
  }
}

MCP catalog entry #

{
  "name": "create_space",
  "title": "Create issue space",
  "tier": "reversible",
  "scenario": "API-L0-20",
  "summary": "Create an issue space your account owns, for a repository's issue list or a program's checks. Pass your own `space` UUID to make a repeat safe, and a `name` of up to 100 characters, which it requires, to tell it apart in the listing; `rename_space` changes the name later. Pass the new space's id to a `tztrack_` tool to use it at once; from a script, use a token with the `issues` grant. Your account needs tzTrack, which every account has.",
  "owners": [
    "MAPI-14"
  ]
}

request #

JSON pointer Description and constraints
"" (root) Type: object
Required fields: ["name"]
/properties/space Optional: the identifier you choose, a lower-case UUID, so a repeat converges on the same space.

Type: string
Pattern: ^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$
/properties/name Required: the space's display name, 1 to 100 printable characters, which the space listing shows. It is written only when the call first records the space for your account, a retry after a lost answer included; a repeat that finds it recorded keeps its name. rename_space changes it.

Type: string
Minimum length: 1
Maximum length: 100

response #

JSON pointer Description and constraints
"" (root) Type: object
Required fields: ["contract_version","space"]
/properties/contract_version Required value: 1
/properties/reference The short reference the platform recorded your call under: ten lowercase hexadecimal characters, the value in the call's record row. Quote it when you report the call.

Type: string
Pattern: ^[0-9a-f]{10}$
/properties/space Type: object
Required fields: ["id","kind","created","name"]
/properties/space/properties/id Type: string
/properties/space/properties/kind Type: string
Allowed values: ["account"]
/properties/space/properties/created True where this call created the space; false where it already existed.

Type: boolean
/properties/space/properties/name The space's display name, null where it has none: the name written when the space was first recorded for the account. A repeat returns it unchanged.

Type: ["string","null"]

Complete payload contract #

{
  "request": {
    "type": "object",
    "properties": {
      "space": {
        "type": "string",
        "pattern": "^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$",
        "description": "Optional: the identifier you choose, a lower-case UUID, so a repeat converges on the same space."
      },
      "name": {
        "type": "string",
        "minLength": 1,
        "maxLength": 100,
        "description": "Required: the space's display name, 1 to 100 printable characters, which the space listing shows. It is written only when the call first records the space for your account, a retry after a lost answer included; a repeat that finds it recorded keeps its name. `rename_space` changes it."
      }
    },
    "required": [
      "name"
    ]
  },
  "response": {
    "type": "object",
    "required": [
      "contract_version",
      "space"
    ],
    "properties": {
      "contract_version": {
        "const": 1
      },
      "reference": {
        "type": "string",
        "pattern": "^[0-9a-f]{10}$",
        "description": "The short reference the platform recorded your call under: ten lowercase hexadecimal characters, the value in the call's record row. Quote it when you report the call."
      },
      "space": {
        "type": "object",
        "required": [
          "id",
          "kind",
          "created",
          "name"
        ],
        "properties": {
          "id": {
            "type": "string"
          },
          "kind": {
            "type": "string",
            "enum": [
              "account"
            ]
          },
          "created": {
            "type": "boolean",
            "description": "True where this call created the space; false where it already existed."
          },
          "name": {
            "type": [
              "string",
              "null"
            ],
            "description": "The space's display name, null where it has none: the name written when the space was first recorded for the account. A repeat returns it unchanged."
          }
        }
      }
    }
  }
}

Shared contracts #