Hatchet Tenant API

The Tenant API from Hatchet — 15 operation(s) for tenant.

Operations 20

POST /api/v1/tenants/{tenant}/alerting-email-groups Create Tenant Alert Email Group #
GET /api/v1/tenants/{tenant}/alerting-email-groups List Tenant Alert Email Groups #
GET /api/v1/tenants/{tenant}/resource-policy Create Tenant Alert Email Group #
PATCH /api/v1/alerting-email-groups/{alert-email-group} Update Tenant Alert Email Group #
DELETE /api/v1/alerting-email-groups/{alert-email-group} Delete Tenant Alert Email Group #
GET /api/v1/users/invites List Tenant Invites #
POST /api/v1/users/invites/accept Accept Tenant Invite #
POST /api/v1/users/invites/reject Reject Tenant Invite #
POST /api/v1/tenants Create Tenant #
PATCH /api/v1/tenants/{tenant} Update Tenant #
GET /api/v1/tenants/{tenant} Get Tenant #
GET /api/v1/tenants/{tenant}/alerting/settings Get Tenant Alerting Settings #
POST /api/v1/tenants/{tenant}/invites Create Tenant Invite #
GET /api/v1/tenants/{tenant}/invites List Tenant Invites #
GET /api/v1/tenants/{tenant}/step-run-queue-metrics Get Step Run Metrics #
GET /api/v1/tenants/{tenant}/members List Tenant Members #
PATCH /api/v1/tenants/{tenant}/members/{member} Update a Tenant Member #
DELETE /api/v1/tenants/{tenant}/members/{member} Delete a Tenant Member #
GET /api/v1/tenants/{tenant}/prometheus-metrics Get Prometheus Metrics #
GET /api/v1/tenants/{tenant}/task-stats Get Task Stats for Tenant #

Documentation

Specifications

Code Examples

Schemas & Data

📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/hatchet/refs/heads/main/json-schema/hatchet-v1-task-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/hatchet/refs/heads/main/json-schema/hatchet-v1-workflow-run-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/hatchet/refs/heads/main/json-schema/hatchet-v1-event-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/hatchet/refs/heads/main/json-schema/hatchet-v1-filter-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/hatchet/refs/heads/main/json-schema/hatchet-v1-webhook-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/hatchet/refs/heads/main/json-schema/hatchet-v1-task-event-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/hatchet/refs/heads/main/json-schema/hatchet-v1-log-line-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/hatchet/refs/heads/main/json-schema/hatchet-tenant-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/hatchet/refs/heads/main/json-schema/hatchet-worker-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/hatchet/refs/heads/main/json-schema/hatchet-rate-limit-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/hatchet/refs/heads/main/json-schema/hatchet-api-token-schema.json
📊
JSONSchema
https://raw.githubusercontent.com/api-evangelist/hatchet/refs/heads/main/json-schema/hatchet-workflow-schema.json

Other Resources

🔗
Examples
https://raw.githubusercontent.com/api-evangelist/hatchet/refs/heads/main/examples/v1-task-get-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/hatchet/refs/heads/main/examples/v1-workflow-run-trigger-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/hatchet/refs/heads/main/examples/v1-event-create-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/hatchet/refs/heads/main/examples/v1-filter-create-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/hatchet/refs/heads/main/examples/v1-task-cancel-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/hatchet/refs/heads/main/examples/v1-task-replay-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/hatchet/refs/heads/main/examples/v1-log-line-list-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/hatchet/refs/heads/main/examples/rate-limit-upsert-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/hatchet/refs/heads/main/examples/webhook-worker-create-example.json
🔗
Examples
https://raw.githubusercontent.com/api-evangelist/hatchet/refs/heads/main/examples/worker-list-example.json
🔗
SDKs
https://pypi.org/project/hatchet-sdk/
🔗
SDKs
https://www.npmjs.com/package/@hatchet-dev/typescript-sdk
🔗
SDKs
https://github.com/hatchet-dev/hatchet/tree/main/sdks/go
🔗
SDKs
https://github.com/hatchet-dev/hatchet/tree/main/sdks/ruby
🔗
SelfHosting
https://docs.hatchet.run/self-hosting
🔗
SourceCode
https://github.com/hatchet-dev/hatchet

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/hatchet-tenant-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

hatchet-tenant-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  version: 1.0.0
  title: Hatchet API Token Tenant API
  description: The Hatchet API
servers:
- url: ''
security:
- bearerAuth: []
- cookieAuth: []
tags:
- name: Tenant
paths:
  /api/v1/tenants/{tenant}/alerting-email-groups:
    post:
      x-resources:
      - tenant
      description: Creates a new tenant alert email group
      operationId: alert-email-group:create
      parameters:
      - description: The tenant id
        in: path
        name: tenant
        required: true
        schema:
          type: string
          format: uuid
          minLength: 36
          maxLength: 36
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateTenantAlertEmailGroupRequest'
        description: The tenant alert email group to create
        required: true
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TenantAlertEmailGroup'
          description: Successfully created the tenant alert email group
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIErrors'
          description: A malformed or bad request
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIError'
          description: Forbidden
      summary: Create Tenant Alert Email Group
      tags:
      - Tenant
    get:
      x-resources:
      - tenant
      description: Gets a list of tenant alert email groups
      operationId: alert-email-group:list
      parameters:
      - description: The tenant id
        in: path
        name: tenant
        required: true
        schema:
          type: string
          format: uuid
          minLength: 36
          maxLength: 36
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TenantAlertEmailGroupList'
          description: Successfully retrieved the tenant alert email groups
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIErrors'
          description: A malformed or bad request
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIError'
          description: Forbidden
      summary: List Tenant Alert Email Groups
      tags:
      - Tenant
  /api/v1/tenants/{tenant}/resource-policy:
    get:
      x-resources:
      - tenant
      description: Gets the resource policy for a tenant
      operationId: tenant-resource-policy:get
      parameters:
      - description: The tenant id
        in: path
        name: tenant
        required: true
        schema:
          type: string
          format: uuid
          minLength: 36
          maxLength: 36
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TenantResourcePolicy'
          description: Successfully retrieved the tenant resource policy
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIErrors'
          description: A malformed or bad request
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIError'
          description: Forbidden
      summary: Create Tenant Alert Email Group
      tags:
      - Tenant
  /api/v1/alerting-email-groups/{alert-email-group}:
    patch:
      x-resources:
      - tenant
      - alert-email-group
      description: Updates a tenant alert email group
      operationId: alert-email-group:update
      parameters:
      - description: The tenant alert email group id
        in: path
        name: alert-email-group
        required: true
        schema:
          type: string
          format: uuid
          minLength: 36
          maxLength: 36
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateTenantAlertEmailGroupRequest'
        description: The tenant alert email group to update
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TenantAlertEmailGroup'
          description: Successfully updated the tenant alert email group
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIErrors'
          description: A malformed or bad request
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIError'
          description: Forbidden
      summary: Update Tenant Alert Email Group
      tags:
      - Tenant
    delete:
      x-resources:
      - tenant
      - alert-email-group
      description: Deletes a tenant alert email group
      operationId: alert-email-group:delete
      parameters:
      - description: The tenant alert email group id
        in: path
        name: alert-email-group
        required: true
        schema:
          type: string
          format: uuid
          minLength: 36
          maxLength: 36
      responses:
        '204':
          description: Successfully deleted the tenant alert email group
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIErrors'
          description: A malformed or bad request
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIError'
          description: Forbidden
      summary: Delete Tenant Alert Email Group
      tags:
      - Tenant
  /api/v1/users/invites:
    get:
      description: Lists all tenant invites for the current user
      operationId: user:list:tenant-invites
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TenantInviteList'
          description: Successfully listed the tenant invites
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIErrors'
          description: A malformed or bad request
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIErrors'
          description: Forbidden
      security:
      - cookieAuth: []
      summary: List Tenant Invites
      tags:
      - Tenant
  /api/v1/users/invites/accept:
    post:
      description: Accepts a tenant invite
      operationId: tenant-invite:accept
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/AcceptInviteRequest'
      responses:
        '200':
          description: Successfully accepted the tenant invite
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIErrors'
          description: A malformed or bad request
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIError'
          description: Forbidden
      summary: Accept Tenant Invite
      tags:
      - Tenant
  /api/v1/users/invites/reject:
    post:
      description: Rejects a tenant invite
      operationId: tenant-invite:reject
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/RejectInviteRequest'
      responses:
        '200':
          description: Successfully rejected the tenant invite
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIErrors'
          description: A malformed or bad request
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIError'
          description: Forbidden
      summary: Reject Tenant Invite
      tags:
      - Tenant
  /api/v1/tenants:
    post:
      x-resources: []
      description: Creates a new tenant
      operationId: tenant:create
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateTenantRequest'
        description: The tenant to create
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Tenant'
          description: Successfully created the tenant
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIErrors'
          description: A malformed or bad request
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIError'
          description: Forbidden
      summary: Create Tenant
      tags:
      - Tenant
  /api/v1/tenants/{tenant}:
    patch:
      x-resources:
      - tenant
      description: Update an existing tenant
      operationId: tenant:update
      parameters:
      - description: The tenant id
        in: path
        name: tenant
        required: true
        schema:
          type: string
          format: uuid
          minLength: 36
          maxLength: 36
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateTenantRequest'
        description: The tenant properties to update
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Tenant'
          description: Successfully created the tenant
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIErrors'
          description: A malformed or bad request
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIError'
          description: Forbidden
      summary: Update Tenant
      tags:
      - Tenant
    get:
      x-resources:
      - tenant
      description: Get the details of a tenant
      operationId: tenant:get
      parameters:
      - description: The tenant id to get details for
        in: path
        name: tenant
        required: true
        schema:
          type: string
          format: uuid
          minLength: 36
          maxLength: 36
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Tenant'
          description: Successfully got the tenant
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIErrors'
          description: A malformed or bad request
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIError'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIErrors'
          description: Tenant does not exist
      summary: Get Tenant
      tags:
      - Tenant
  /api/v1/tenants/{tenant}/alerting/settings:
    get:
      x-resources:
      - tenant
      description: Gets the alerting settings for a tenant
      operationId: tenant-alerting-settings:get
      parameters:
      - description: The tenant id
        in: path
        name: tenant
        required: true
        schema:
          type: string
          format: uuid
          minLength: 36
          maxLength: 36
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TenantAlertingSettings'
          description: Successfully retrieved the tenant alerting settings
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIErrors'
          description: A malformed or bad request
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIError'
          description: Forbidden
      summary: Get Tenant Alerting Settings
      tags:
      - Tenant
  /api/v1/tenants/{tenant}/invites:
    post:
      x-resources:
      - tenant
      x-enable-rate-limiting: true
      description: Creates a new tenant invite
      operationId: tenant-invite:create
      parameters:
      - description: The tenant id
        in: path
        name: tenant
        required: true
        schema:
          type: string
          format: uuid
          minLength: 36
          maxLength: 36
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CreateTenantInviteRequest'
        description: The tenant invite to create
        required: true
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TenantInvite'
          description: Successfully created the tenant invite
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIErrors'
          description: A malformed or bad request
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIError'
          description: Forbidden
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIErrors'
          description: Rate limit exceeded
      summary: Create Tenant Invite
      tags:
      - Tenant
    get:
      x-resources:
      - tenant
      description: Gets a list of tenant invites
      operationId: tenant-invite:list
      parameters:
      - description: The tenant id
        in: path
        name: tenant
        required: true
        schema:
          type: string
          format: uuid
          minLength: 36
          maxLength: 36
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TenantInviteList'
          description: Successfully retrieved the tenant invites
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIErrors'
          description: A malformed or bad request
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIError'
          description: Forbidden
      summary: List Tenant Invites
      tags:
      - Tenant
  /api/v1/tenants/{tenant}/step-run-queue-metrics:
    get:
      x-resources:
      - tenant
      description: Get the queue metrics for the tenant
      operationId: tenant:get:step-run-queue-metrics
      parameters:
      - description: The tenant id
        in: path
        name: tenant
        required: true
        schema:
          type: string
          format: uuid
          minLength: 36
          maxLength: 36
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TenantStepRunQueueMetrics'
          description: Successfully retrieved the step run queue metrics
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIErrors'
          description: A malformed or bad request
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIErrors'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIErrors'
          description: Not found
      summary: Get Step Run Metrics
      tags:
      - Tenant
  /api/v1/tenants/{tenant}/members:
    get:
      x-resources:
      - tenant
      description: Gets a list of tenant members
      operationId: tenant-member:list
      parameters:
      - description: The tenant id
        in: path
        name: tenant
        required: true
        schema:
          type: string
          format: uuid
          minLength: 36
          maxLength: 36
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TenantMemberList'
          description: Successfully retrieved the tenant members
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIErrors'
          description: A malformed or bad request
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIError'
          description: Forbidden
      summary: List Tenant Members
      tags:
      - Tenant
  /api/v1/tenants/{tenant}/members/{member}:
    patch:
      x-resources:
      - tenant
      - member
      description: Update a tenant member
      operationId: tenant-member:update
      parameters:
      - description: The tenant id
        in: path
        name: tenant
        required: true
        schema:
          type: string
          format: uuid
          minLength: 36
          maxLength: 36
      - description: The tenant member id
        in: path
        name: member
        required: true
        schema:
          type: string
          format: uuid
          minLength: 36
          maxLength: 36
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateTenantMemberRequest'
        description: The tenant member properties to update
        required: true
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TenantMember'
          description: Successfully updated the tenant member
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIErrors'
          description: A malformed or bad request
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIErrors'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIErrors'
          description: Not found
      summary: Update a Tenant Member
      tags:
      - Tenant
    delete:
      x-resources:
      - tenant
      - member
      description: Delete a member from a tenant
      operationId: tenant-member:delete
      parameters:
      - description: The tenant id
        in: path
        name: tenant
        required: true
        schema:
          type: string
          format: uuid
          minLength: 36
          maxLength: 36
      - description: The tenant member id
        in: path
        name: member
        required: true
        schema:
          type: string
          format: uuid
          minLength: 36
          maxLength: 36
      responses:
        '204':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TenantMember'
          description: Successfully deleted the tenant members
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIErrors'
          description: A malformed or bad request
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIErrors'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIErrors'
          description: Not found
      summary: Delete a Tenant Member
      tags:
      - Tenant
  /api/v1/tenants/{tenant}/prometheus-metrics:
    get:
      x-resources:
      - tenant
      description: Get the prometheus metrics for the tenant
      operationId: tenant:get:prometheus-metrics
      parameters:
      - description: The tenant id
        in: path
        name: tenant
        required: true
        schema:
          type: string
          format: uuid
          minLength: 36
          maxLength: 36
      responses:
        '200':
          content:
            text/plain:
              schema:
                type: string
          description: Successfully retrieved the prometheus metrics
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIErrors'
          description: A malformed or bad request
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIErrors'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIErrors'
          description: Not found
      summary: Get Prometheus Metrics
      tags:
      - Tenant
  /api/v1/tenants/{tenant}/task-stats:
    get:
      x-resources:
      - tenant
      x-enable-rate-limiting: true
      description: Get task stats for tenant
      operationId: tenant:get:task-stats
      parameters:
      - description: The tenant ID
        in: path
        name: tenant
        required: true
        schema:
          type: string
          format: uuid
          minLength: 36
          maxLength: 36
      - description: Task names that must appear in the response. Missing tasks are zero-filled so KEDA's metrics-api JSONPath always resolves.
        in: query
        name: taskNames
        required: false
        schema:
          type: array
          items:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TaskStats'
          description: Successfully retrieved task stats for tenant
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIErrors'
          description: A malformed or bad request
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIErrors'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIErrors'
          description: Not found
      summary: Get Task Stats for Tenant
      tags:
      - Tenant
components:
  schemas:
    RejectInviteRequest:
      properties:
        invite:
          type: string
          example: bb214807-246e-43a5-a25d-41761d1cff9e
          minLength: 36
          maxLength: 36
          x-oapi-codegen-extra-tags:
            validate: required,uuid
      required:
      - invite
      type: object
    TenantAlertEmailGroupList:
      properties:
        pagination:
          $ref: '#/components/schemas/PaginationResponse'
        rows:
          items:
            $ref: '#/components/schemas/TenantAlertEmailGroup'
          type: array
          x-go-name: Rows
    UserTenantPublic:
      properties:
        email:
          type: string
          format: email
          description: The email address of the user.
        name:
          type: string
          description: The display name of the user.
      required:
      - email
      type: object
    UpdateTenantAlertEmailGroupRequest:
      properties:
        emails:
          type: array
          items:
            type: string
          description: A list of emails for users
          x-oapi-codegen-extra-tags:
            validate: required,dive,email
      required:
      - emails
      type: object
    UpdateTenantRequest:
      properties:
        name:
          type: string
          description: The name of the tenant.
        analyticsOptOut:
          type: boolean
          description: Whether the tenant has opted out of analytics.
        alertMemberEmails:
          type: boolean
          description: Whether to alert tenant members.
        enableWorkflowRunFailureAlerts:
          type: boolean
          description: Whether to send alerts when workflow runs fail.
        enableExpiringTokenAlerts:
          type: boolean
          description: Whether to enable alerts when tokens are approaching expiration.
        enableTenantResourceLimitAlerts:
          type: boolean
          description: Whether to enable alerts when tenant resources are approaching limits.
        maxAlertingFrequency:
          type: string
          description: The max frequency at which to alert.
          x-oapi-codegen-extra-tags:
            validate: omitnil,duration
        version:
          $ref: '#/components/schemas/TenantVersion'
          description: The version of the tenant.
      type: object
    CreateTenantInviteRequest:
      properties:
        email:
          type: string
          description: The email of the user to invite.
          x-oapi-codegen-extra-tags:
            validate: required,email
        role:
          $ref: '#/components/schemas/TenantMemberRole'
          description: The role of the user in the tenant.
          x-oapi-codegen-extra-tags:
            validate: required
      required:
      - email
      - role
      type: object
    TenantEnvironment:
      enum:
      - local
      - development
      - production
      type: string
    TenantInviteList:
      properties:
        pagination:
          $ref: '#/components/schemas/PaginationResponse'
        rows:
          items:
            $ref: '#/components/schemas/TenantInvite'
          type: array
          x-go-name: Rows
    ConcurrencyStat:
      properties:
        expression:
          type: string
        type:
          type: string
        keys:
          type: object
          additionalProperties:
            type: integer
            format: int64
      type: object
    TenantInvite:
      properties:
        metadata:
          $ref: '#/components/schemas/APIResourceMeta'
        email:
          type: string
          description: The email of the user to invite.
        role:
          $ref: '#/components/schemas/TenantMemberRole'
          description: The role of the user in the tenant.
        tenantId:
          type: string
          description: The tenant id associated with this tenant invite.
        tenantName:
          type: string
          description: The tenant name for the tenant.
        expires:
          type: string
          description: The time that this invite expires.
          format: date-time
      required:
      - metadata
      - email
      - role
      - expires
      - tenantId
      type: object
    UpdateTenantMemberRequest:
      properties:
        role:
          $ref: '#/components/schemas/TenantMemberRole'
          description: The role of the user in the tenant.
          x-oapi-codegen-extra-tags:
            validate: required
      required:
      - role
      type: object
    TenantMemberRole:
      enum:
      - OWNER
      - ADMIN
      - MEMBER
      type: string
    TenantVersion:
      enum:
      - V0
      - V1
      type: string
    TenantAlertEmailGroup:
      properties:
        metadata:
          $ref: '#/components/schemas/APIResourceMeta'
        emails:
          type: array
          items:
            type: string
          description: A list of emails for users
      required:
      - metadata
      - emails
      type: object
    TenantResource:
      enum:
      - WORKER
      - WORKER_SLOT
      - EVENT
      - TASK_RUN
      - CRON
      - SCHEDULE
      - INCOMING_WEBHOOK
      type: string
    APIError:
      type: object
      properties:
        code:
          type: integer
          description: a custom Hatchet error code
          format: uint64
          example: 1400
        field:
          type: string
          description: the field that this error is associated with, if applicable
          example: name
        description:
          type: string
          description: a description for this error
          example: A descriptive error message
        docs_link:
          type: string
          description: a link to the documentation for this error, if it exists
          example: github.com/hatchet-dev/hatchet
      required:
      - description
    TenantStepRunQueueMetrics:
      properties:
        queues:
          type: object
    TenantResourcePolicy:
      properties:
        limits:
          type: array
          items:
            $ref: '#/components/schemas/TenantResourceLimit'
          description: A list of resource limits for the tenant.
      required:
      - limits
      type: object
    TenantAlertingSettings:
      properties:
        metadata:
          $ref: '#/components/schemas/APIResourceMeta'
        alertMemberEmails:
          type: boolean
          description: Whether to alert tenant members.
        enableWorkflowRunFailureAlerts:
          type: boolean
          description: Whether to send alerts when workflow runs fail.
        enableExpiringTokenAlerts:
          type: boolean
          description: Whether to enable alerts when tokens are approaching expiration.
        enableTenantResourceLimitAlerts:
          type: boolean
          description: Whether to enable alerts when tenant resources are approaching limits.
        maxAlertingFrequency:
          type: string
          description: The max frequency at which to alert.
        lastAlertedAt:
          type: string
          description: The last time an alert was sent.
          format: date-time
      required:
      - metadata
      - maxAlertingFrequency
      type: object
    TenantResourceLimit:
      properties:
        metadata:
          $ref: '#/components/schemas/APIResourceMeta'
        resource:
          $ref: '#/components/schemas/TenantResource'
          description: The resource associated with this limit.
        limitValue:
          type: integer
          description: The limit associated with this limit.
        alarmValue:
          type: integer
          description: The alarm value associated with this limit to warn of approaching limit value.
        value:
          type: integer
          description: The current value associated with this limit.
        window:
          type: string
          description: The meter window for the limit. (i.e. 1 day, 1 week, 1 month)
        lastRefill:
          type: string
          description: The last time the limit was refilled.
          format: date-time
      required:
      - metadata
      - tenantId
      - resource
      - limitValue
      - value
      type: object
    TaskStatusStat:
      properties:
        total:
          type: integer
          format: int64
        queues:
          type: object
          additionalProperties:
            type: integer
            format: int64
        concurrency:
          type: array
          items:
            $ref: '#/components/schemas/ConcurrencyStat'
        oldest:
          type: string
          format: date-time
      type: object
    TaskStats:
      type: object
      additionalProperties:
        $ref: '#/components/schemas/TaskStat'
    CreateTenantRequest:
      properties:
        name:
          type: string
          description: The name of the tenant.
          x-oapi-codegen-extra-tags:
            validate: required
        slug:
          type: string
          description: The slug of the tenant.
          x-oapi-codegen-extra-tags:
            validate: required,hatchetName
        engineVersion:
          $ref: '#/comp

# --- truncated at 32 KB (36 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/hatchet/refs/heads/main/openapi/hatchet-tenant-api-openapi.yml