Cyclr Cycles API

Manage integration cycles

Documentation

Specifications

Schemas & Data

Other Resources

OpenAPI Specification

cyclr-cycles-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Cyclr Accounts Cycles API
  description: 'Cyclr''s REST API allows you to manage your Accounts and Cycles, as well as install Templates and Connectors. The API is divided into two parts: Partner Level and Account Level. You can use the same OAuth Access Token for both, but Account level endpoints require an additional X-Cyclr-Account HTTP header to identify which Cyclr Account to execute the call against.'
  version: 1.0.0
  contact:
    name: Cyclr
    url: https://cyclr.com
  license:
    name: Proprietary
    url: https://cyclr.com/legal
servers:
- url: https://api.cyclr.com/v1.0
  description: Cyclr US API
- url: https://api.eu.cyclr.com/v1.0
  description: Cyclr EU API
- url: https://api.au.cyclr.com/v1.0
  description: Cyclr AU API
security:
- bearerAuth: []
tags:
- name: Cycles
  description: Manage integration cycles
paths:
  /cycles:
    get:
      operationId: listCycles
      summary: Cyclr List Cycles
      description: Retrieve a list of all cycles in the current account. Requires the X-Cyclr-Account header.
      tags:
      - Cycles
      parameters:
      - $ref: '#/components/parameters/xCyclrAccount'
      - name: page
        in: query
        schema:
          type: integer
        description: Page number for pagination
      - name: pageSize
        in: query
        schema:
          type: integer
        description: Number of results per page
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/Cycle'
        '401':
          description: Unauthorized
  /cycles/{cycleId}:
    get:
      operationId: getCycle
      summary: Cyclr Get Cycle
      description: Retrieve details of a specific cycle. Requires the X-Cyclr-Account header.
      tags:
      - Cycles
      parameters:
      - $ref: '#/components/parameters/cycleId'
      - $ref: '#/components/parameters/xCyclrAccount'
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Cycle'
        '401':
          description: Unauthorized
        '404':
          description: Cycle not found
    delete:
      operationId: deleteCycle
      summary: Cyclr Delete Cycle
      description: Delete a specific cycle. Requires the X-Cyclr-Account header.
      tags:
      - Cycles
      parameters:
      - $ref: '#/components/parameters/cycleId'
      - $ref: '#/components/parameters/xCyclrAccount'
      responses:
        '200':
          description: Cycle deleted successfully
        '401':
          description: Unauthorized
        '404':
          description: Cycle not found
  /cycles/{cycleId}/activate:
    put:
      operationId: activateCycle
      summary: Cyclr Activate Cycle
      description: Activate a cycle so it begins running. Requires the X-Cyclr-Account header.
      tags:
      - Cycles
      parameters:
      - $ref: '#/components/parameters/cycleId'
      - $ref: '#/components/parameters/xCyclrAccount'
      responses:
        '200':
          description: Cycle activated successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Cycle'
        '401':
          description: Unauthorized
        '404':
          description: Cycle not found
  /cycles/{cycleId}/deactivate:
    put:
      operationId: deactivateCycle
      summary: Cyclr Deactivate Cycle
      description: Deactivate a running cycle. Requires the X-Cyclr-Account header.
      tags:
      - Cycles
      parameters:
      - $ref: '#/components/parameters/cycleId'
      - $ref: '#/components/parameters/xCyclrAccount'
      responses:
        '200':
          description: Cycle deactivated successfully
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Cycle'
        '401':
          description: Unauthorized
        '404':
          description: Cycle not found
components:
  parameters:
    cycleId:
      name: cycleId
      in: path
      required: true
      schema:
        type: string
      description: The unique identifier of the cycle
    xCyclrAccount:
      name: X-Cyclr-Account
      in: header
      required: true
      schema:
        type: string
      description: The API ID of the Cyclr Account to execute the call against. Required for all Account level endpoints.
  schemas:
    Cycle:
      type: object
      properties:
        Id:
          type: string
          description: Unique cycle identifier
        Name:
          type: string
          description: Cycle name
        Description:
          type: string
          description: Cycle description
        Status:
          type: string
          description: Current cycle status
          enum:
          - Active
          - Inactive
          - Paused
          - Error
        CreatedDate:
          type: string
          format: date-time
          description: When the cycle was created
        LastRunDate:
          type: string
          format: date-time
          description: When the cycle last ran
        Connectors:
          type: array
          description: Connectors used by the cycle
          items:
            $ref: '#/components/schemas/InstalledConnector'
        Steps:
          type: array
          description: Steps in the cycle
          items:
            $ref: '#/components/schemas/Step'
    InstalledConnector:
      type: object
      properties:
        Id:
          type: integer
          description: Installed connector identifier
        Name:
          type: string
          description: Installed connector name
        Description:
          type: string
          description: Installed connector description
        ConnectorId:
          type: integer
          description: Reference to the base connector
        Authenticated:
          type: boolean
          description: Whether the connector has been authenticated
        Status:
          type: string
          description: Installation status
    Step:
      type: object
      properties:
        Id:
          type: string
          description: Unique step identifier
        Name:
          type: string
          description: Step name
        Description:
          type: string
          description: Step description
        ConnectorId:
          type: integer
          description: ID of the connector used by this step
        MethodId:
          type: string
          description: ID of the method called by this step
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      description: OAuth 2.0 Bearer token obtained from the /oauth/token endpoint using Client Credentials flow with your Cyclr Console Client ID and Client Secret.