Zluri Instances API

Manage integration instances for syncing data with Zluri.

Documentation

Specifications

Schemas & Data

Other Resources

OpenAPI Specification

zluri-instances-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Zluri Data Upload Instances API
  description: The Zluri API provides external endpoints for integrating with the Zluri SaaS management platform. It enables organizations to push data from custom and on-premise applications to Zluri when no native connector is available. The API supports syncing users, applications, contracts, transactions, groups, roles, and activities. It follows a sync-based workflow where you create a sync session, upload data in paginated batches, and finish the sync to make data visible in Zluri. The API also supports webhook management for real-time notifications and instance configuration management.
  version: 2.0.0
  contact:
    name: Zluri Support
    url: https://support.zluri.com
  license:
    name: Proprietary
    url: https://www.zluri.com/policy/terms-and-conditions
  termsOfService: https://www.zluri.com/policy/terms-and-conditions
servers:
- url: https://api-ext.zluri.com/v2
  description: Zluri External API
security:
- bearerAuth: []
tags:
- name: Instances
  description: Manage integration instances for syncing data with Zluri.
paths:
  /integrations-sync/instances:
    get:
      operationId: listInstances
      summary: Zluri List Instances
      description: Retrieve a list of all integration instances configured in your Zluri account.
      tags:
      - Instances
      responses:
        '200':
          description: A list of integration instances.
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    type: array
                    items:
                      $ref: '#/components/schemas/Instance'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '429':
          $ref: '#/components/responses/RateLimited'
  /integrations-sync/instances/{instance_id}:
    get:
      operationId: getInstance
      summary: Zluri Get Instance
      description: Retrieve details of a specific integration instance.
      tags:
      - Instances
      parameters:
      - $ref: '#/components/parameters/InstanceId'
      responses:
        '200':
          description: The integration instance details.
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    $ref: '#/components/schemas/Instance'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '429':
          $ref: '#/components/responses/RateLimited'
    put:
      operationId: updateInstance
      summary: Zluri Update Instance
      description: Update an existing integration instance configuration with new data in the request body. You can update notification emails and other instance settings.
      tags:
      - Instances
      parameters:
      - $ref: '#/components/parameters/InstanceId'
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/InstanceUpdate'
      responses:
        '200':
          description: The updated integration instance.
          content:
            application/json:
              schema:
                type: object
                properties:
                  data:
                    $ref: '#/components/schemas/Instance'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
        '429':
          $ref: '#/components/responses/RateLimited'
components:
  parameters:
    InstanceId:
      name: instance_id
      in: path
      required: true
      description: The unique identifier of the integration instance.
      schema:
        type: string
  schemas:
    Error:
      type: object
      properties:
        error:
          type: string
          description: Error message describing what went wrong.
        code:
          type: string
          description: Machine-readable error code.
    InstanceUpdate:
      type: object
      properties:
        name:
          type: string
          description: Updated name for the instance.
        notification_emails:
          type: array
          items:
            type: string
            format: email
          description: Updated email addresses for sync notifications.
    Instance:
      type: object
      properties:
        id:
          type: string
          description: Unique identifier of the instance.
        name:
          type: string
          description: Name of the integration instance.
        status:
          type: string
          description: Current status of the instance.
          enum:
          - active
          - inactive
        notification_emails:
          type: array
          items:
            type: string
            format: email
          description: Email addresses to receive sync notifications.
        created_at:
          type: string
          format: date-time
          description: When the instance was created.
        updated_at:
          type: string
          format: date-time
          description: When the instance was last updated.
  responses:
    Unauthorized:
      description: Authentication failed. Check your bearer token.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    BadRequest:
      description: The request was malformed or missing required parameters.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    NotFound:
      description: The requested resource was not found.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    RateLimited:
      description: Rate limit exceeded. Retry after a short delay.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: Bearer token authentication. Obtain your API token from the Zluri admin dashboard.
externalDocs:
  description: Zluri API Documentation
  url: https://api-docs.zluri.dev/