openapi: 3.1.0 info: title: Torii Apps Metadata API description: The Torii API provides programmatic access to the Torii SaaS Management Platform. It allows you to manage apps, users, contracts, licenses, audit logs, and file uploads. The API closely follows REST semantics, uses JSON to encode objects, and relies on standard HTTP codes to signal operation outcomes. Torii APIs consist of both proprietary and SCIM 2.0 APIs. version: 1.1.0 contact: name: Torii url: https://developers.toriihq.com termsOfService: https://www.toriihq.com/terms servers: - url: https://api.toriihq.com/v1.0 description: Torii API v1.0 - url: https://api.toriihq.com/v1.1 description: Torii API v1.1 security: - bearerAuth: [] tags: - name: Metadata description: Retrieve field metadata for apps, users, and contracts. paths: /apps/metadata: get: operationId: getAppsMetadata summary: Torii List app fields metadata description: Lists app fields (predefined and custom), searchable by field name or key. tags: - Metadata parameters: - name: search in: query description: Search by field name or key. schema: type: string - $ref: '#/components/parameters/apiVersion' responses: '200': description: A list of app field metadata. content: application/json: schema: type: object properties: data: type: array items: $ref: '#/components/schemas/FieldMetadata' '401': $ref: '#/components/responses/Unauthorized' '429': $ref: '#/components/responses/RateLimited' /users/metadata: get: operationId: getUsersMetadata summary: Torii List user fields metadata description: Lists user fields (predefined and custom), searchable by field name or key. tags: - Metadata parameters: - name: search in: query description: Search by field name or key. schema: type: string - $ref: '#/components/parameters/apiVersion' responses: '200': description: A list of user field metadata. content: application/json: schema: type: object properties: data: type: array items: $ref: '#/components/schemas/FieldMetadata' '401': $ref: '#/components/responses/Unauthorized' '429': $ref: '#/components/responses/RateLimited' /contracts/metadata: get: operationId: getContractsMetadata summary: Torii List contract fields metadata description: Lists contract fields (predefined and custom), searchable by field name or key. tags: - Metadata parameters: - name: search in: query description: Search by field name or key. schema: type: string - $ref: '#/components/parameters/apiVersion' responses: '200': description: A list of contract field metadata. content: application/json: schema: type: object properties: data: type: array items: $ref: '#/components/schemas/FieldMetadata' '401': $ref: '#/components/responses/Unauthorized' '429': $ref: '#/components/responses/RateLimited' components: schemas: FieldMetadata: type: object properties: key: type: string description: Field key identifier. name: type: string description: Display name of the field. type: type: string description: Data type of the field. isCustom: type: boolean description: Whether this is a custom field. isRequired: type: boolean description: Whether this field is required. responses: RateLimited: description: Rate limit exceeded. Too many requests. content: application/json: schema: type: object properties: error: type: string message: type: string Unauthorized: description: Authentication failed. Invalid or missing API key. content: application/json: schema: type: object properties: error: type: string message: type: string parameters: apiVersion: name: X-API-Version in: header description: 'Override the default API version. Supported values: 1.0, 1.1. Default is 1.0 for keys created before Feb 1st 2025, and 1.1 for keys created after.' schema: type: string enum: - '1.0' - '1.1' securitySchemes: bearerAuth: type: http scheme: bearer description: 'API key authentication. Generate an API key from Settings > API Access in Torii. Use the Authorization header: Bearer {API_KEY}.'