> ## Documentation Index
> Fetch the complete documentation index at: https://docs.cyrisma.com/llms.txt
> Use this file to discover all available pages before exploring further.

# List tenant types

> Lists the tenant types. Send a type's `id` as `tenant_type_id` when you provision a tenant. Needs `pulse.read`; returns 401 (no body) otherwise.



## OpenAPI

````yaml /api/partner-api/provisioning.json get /v1/msp/admin/lookups/tenant-types
openapi: 3.1.1
info:
  title: 'Cyrisma New Partner API: Provisioning'
  version: v1
servers:
  - url: https://{instance}.cyrisma.com/ta
    description: Tenant Authority, served under the partner's own CYRISMA instance host.
    variables:
      instance:
        default: ccnnnnnn
        description: The instance label of the tenant host issued to the partner.
security:
  - bearerAuth: []
tags:
  - name: Auth
  - name: MSP Administration
paths:
  /v1/msp/admin/lookups/tenant-types:
    get:
      tags:
        - MSP Administration
      summary: List tenant types
      description: >-
        Lists the tenant types. Send a type's `id` as `tenant_type_id` when you
        provision a tenant. Needs `pulse.read`; returns 401 (no body) otherwise.
      operationId: ListMspAdminTenantTypesV1
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/MspTenantTypeReference'
        '401':
          description: Unauthorized
          content:
            application/problem+json:
              schema:
                $ref: '#/components/schemas/ProblemDetails'
components:
  schemas:
    MspTenantTypeReference:
      required:
        - id
        - name
      type: object
      properties:
        id:
          pattern: ^-?(?:0|[1-9]\d*)$
          type:
            - integer
            - string
          description: >-
            The tenant type's id. Send it as `tenant_type_id` when you provision
            a tenant.
          format: int32
        name:
          type: string
          description: The tenant type's name, for example `Client`.
    ProblemDetails:
      type: object
      properties:
        type:
          type:
            - 'null'
            - string
          description: A URI reference that identifies the kind of error.
        title:
          type:
            - 'null'
            - string
          description: A short summary of the error, or its code.
        status:
          pattern: ^-?(?:0|[1-9]\d*)$
          type:
            - 'null'
            - integer
            - string
          description: The HTTP status code.
          format: int32
        detail:
          type:
            - 'null'
            - string
          description: More detail about this occurrence, when there is any.
        instance:
          type:
            - 'null'
            - string
          description: A URI reference that identifies this occurrence, when there is one.
      description: >-
        An error in the RFC 9457 problem format. Where an operation lists an
        error code, such as `tenant_not_active` or `scope_denied`, it is in
        `title`.
  securitySchemes:
    bearerAuth:
      type: http
      description: >-
        A machine-client token from POST /v1/auth/client-token. Reads need the
        pulse.read scope; provisioning and tenant updates need pulse.write,
        which the token only carries when requested_scopes asks for it.
        Creating, changing, disabling and resetting MFA for users, and the
        tenant sign-in policy, need a signed-in user's token instead: they
        reject API-key tokens.
      scheme: bearer
      bearerFormat: JWT

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.