Zesty Instances API

The Zesty.io Instances API is a REST API that allows CRUD operations on Zesty.io instances. It provides access to content models, content items, fields, views, stylesheets, scripts, settings, head tags, navigation, audits, and publishing operations. Each instance is identified by a unique ZUID.

OpenAPI Specification

zesty-instances-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Zesty Accounts Apps Instances API
  description: The Zesty.io Accounts API is used to manage users, roles, instances, teams, tokens, ecosystems, webhooks, and apps. It provides administrative control over the organizational structure of a Zesty.io account. All endpoints require authentication via a session token obtained from the Auth API.
  version: 1.0.0
  contact:
    name: Zesty.io
    url: https://www.zesty.io/
  license:
    name: Proprietary
    url: https://www.zesty.io/
servers:
- url: https://accounts.api.zesty.io/v1
  description: Zesty Accounts API Production Server
tags:
- name: Instances
  description: Manage Zesty.io instances.
paths:
  /instances:
    get:
      operationId: getInstances
      summary: Zesty List all instances
      description: Returns a list of all instances accessible to the authenticated user.
      tags:
      - Instances
      security:
      - sessionToken: []
      responses:
        '200':
          description: A list of instances.
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: integer
                  data:
                    type: array
                    items:
                      $ref: '#/components/schemas/Instance'
        '401':
          description: Unauthorized.
    post:
      operationId: createInstance
      summary: Zesty Create a new instance
      description: Creates a new Zesty.io instance.
      tags:
      - Instances
      security:
      - sessionToken: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - name
              properties:
                name:
                  type: string
                  description: The name of the instance.
                ecoZUID:
                  type: string
                  description: The ecosystem ZUID to associate with.
      responses:
        '201':
          description: Instance created successfully.
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: integer
                  data:
                    $ref: '#/components/schemas/Instance'
        '400':
          description: Invalid request.
        '401':
          description: Unauthorized.
  /instances/{instanceZUID}:
    get:
      operationId: getInstance
      summary: Zesty Get an instance
      description: Returns details for a specific instance by its ZUID.
      tags:
      - Instances
      security:
      - sessionToken: []
      parameters:
      - name: instanceZUID
        in: path
        required: true
        schema:
          type: string
        description: The ZUID of the instance.
      responses:
        '200':
          description: Instance details.
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: integer
                  data:
                    $ref: '#/components/schemas/Instance'
        '401':
          description: Unauthorized.
        '404':
          description: Instance not found.
    put:
      operationId: updateInstance
      summary: Zesty Update an instance
      description: Updates the details of a specific instance.
      tags:
      - Instances
      security:
      - sessionToken: []
      parameters:
      - name: instanceZUID
        in: path
        required: true
        schema:
          type: string
        description: The ZUID of the instance.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                name:
                  type: string
                  description: The updated name of the instance.
      responses:
        '200':
          description: Instance updated successfully.
        '401':
          description: Unauthorized.
        '404':
          description: Instance not found.
    delete:
      operationId: deleteInstance
      summary: Zesty Delete an instance
      description: Deletes a specific instance.
      tags:
      - Instances
      security:
      - sessionToken: []
      parameters:
      - name: instanceZUID
        in: path
        required: true
        schema:
          type: string
        description: The ZUID of the instance.
      responses:
        '200':
          description: Instance deleted successfully.
        '401':
          description: Unauthorized.
        '404':
          description: Instance not found.
components:
  schemas:
    Instance:
      type: object
      properties:
        ZUID:
          type: string
          description: The Zesty Universal Identifier for the instance.
        name:
          type: string
          description: The name of the instance.
        ecoZUID:
          type: string
          description: The ecosystem ZUID.
        domain:
          type: string
          description: The instance domain.
        createdAt:
          type: string
          format: date-time
        updatedAt:
          type: string
          format: date-time
  securitySchemes:
    sessionToken:
      type: apiKey
      in: header
      name: Authorization
      description: A session token obtained from the Auth API login endpoint.
externalDocs:
  description: Zesty Accounts API Documentation
  url: https://docs.zesty.io/docs/accounts