Qualio Change Management API

The Change Management API from Qualio — 2 operation(s) for change management.

Business capability
GxP Change Control Management BC-1560.50

Operations 5

GET /v1/change-management/change-controls List change controls #
OPTIONS /v1/change-management/change-controls List change controls options #
POST /v1/change-management/change-controls Create a change control #
GET /v1/change-management/change-requests List change requests #
OPTIONS /v1/change-management/change-requests List change requests options #

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/qualio-change-management-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

qualio-change-management-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Qualio Developer Change Management API
  version: '0.1'
  description: Whether you're streamlining document control, automating quality event management, integrating training records, or syncing supplier data across systems, the Qualio API provides secure and scalable solutions.
servers:
- url: https://api.qualio.com
security:
- api_key: []
tags:
- name: Change Management
paths:
  /v1/change-management/change-controls:
    get:
      summary: List change controls
      description: "Lists change controls for your Qualio instance. A change control (CC) is a formal, auditable record that documents and routes a change for review and approval â\x80\x94 typically a change to one or more controlled documents, which appear as the change control's linked items. Each entry includes its id (e.g. CC-123), title, owner, status (`open` or `closed`), timestamps, and content sections. Supports filtering by status, ordering, and pagination."
      operationId: listChangeControls
      tags:
      - Change Management
      security:
      - api_key: []
      parameters:
      - in: query
        name: offset
        schema:
          $ref: '#/components/schemas/offsetParam'
        description: A start point for the batch to be returned. For example, a value of 5 will start at the 6th element in the overall population
      - in: query
        name: limit
        schema:
          $ref: '#/components/schemas/limitParam'
      - in: query
        name: status
        schema:
          $ref: '#/components/schemas/statusParam'
        description: The status of a domain object
      - in: query
        name: orderBy
        schema:
          $ref: '#/components/schemas/orderByParam'
        description: The field to order the results by
      responses:
        '200':
          description: Successful change control entries retrieval
          headers:
            Access-Control-Allow-Origin:
              schema:
                type: string
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Content-Type:
              schema:
                type: string
            Content-Disposition:
              schema:
                type: string
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/changeControlResp'
        '400':
          description: The request has malformed query parameters
          headers:
            Access-Control-Allow-Origin:
              schema:
                type: string
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Content-Type:
              schema:
                type: string
            Content-Disposition:
              schema:
                type: string
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/genericBadRequest400ParametersResponse'
        '403':
          description: This API key is not allowed to perform this action, or the API key is incorrect
          headers:
            Access-Control-Allow-Origin:
              schema:
                type: string
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Content-Type:
              schema:
                type: string
            Content-Disposition:
              schema:
                type: string
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/genericForbiddenResponse'
        '429':
          description: This API key has exceeded the fair usage policy in Qualio, and has it its requests restricted. This request has not been processed
          headers:
            Access-Control-Allow-Origin:
              schema:
                type: string
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Content-Type:
              schema:
                type: string
            Content-Disposition:
              schema:
                type: string
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/throttledResponse'
    options:
      description: "Lists change controls for your Qualio instance. A change control (CC) is a formal, auditable record that documents and routes a change for review and approval â\x80\x94 typically a change to one or more controlled documents, which appear as the change control's linked items. Each entry includes its id (e.g. CC-123), title, owner, status (`open` or `closed`), timestamps, and content sections. Supports filtering by status, ordering, and pagination."
      operationId: listChangeControlsOptions
      tags:
      - Change Management
      x-scalar-ignore: true
      parameters:
      - in: query
        name: offset
        schema:
          $ref: '#/components/schemas/offsetParam'
        description: A start point for the batch to be returned. For example, a value of 5 will start at the 6th element in the overall population
      - in: query
        name: limit
        schema:
          $ref: '#/components/schemas/limitParam'
      - in: query
        name: status
        schema:
          $ref: '#/components/schemas/statusParam'
        description: The status of a domain object
      - in: query
        name: orderBy
        schema:
          $ref: '#/components/schemas/orderByParam'
        description: The field to order the results by
      responses:
        '200':
          description: Options 200
          headers:
            Access-Control-Allow-Origin:
              schema:
                type: string
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Content-Type:
              schema:
                type: string
            Content-Disposition:
              schema:
                type: string
      summary: List change controls options
      x-summary-source: derived
    post:
      summary: Create a change control
      description: Creates a change control for a draft document. A change control is the formal workflow record that documents and routes the proposed change for review and approval. Provide the document and the content `sections`; the section positions must match those defined by the change control template and start at position 1.
      operationId: createChangeControl
      tags:
      - Change Management
      security:
      - api_key: []
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/createCC'
      responses:
        '200':
          description: Successful change control entries retrieval
          headers:
            Access-Control-Allow-Origin:
              schema:
                type: string
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Content-Type:
              schema:
                type: string
            Content-Disposition:
              schema:
                type: string
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/createdCC'
        '400':
          description: The request has malformed body
          headers:
            Access-Control-Allow-Origin:
              schema:
                type: string
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Content-Type:
              schema:
                type: string
            Content-Disposition:
              schema:
                type: string
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/genericBadRequestResponse'
        '403':
          description: This API key is not allowed to perform this action, or the API key is incorrect
          headers:
            Access-Control-Allow-Origin:
              schema:
                type: string
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Content-Type:
              schema:
                type: string
            Content-Disposition:
              schema:
                type: string
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/genericForbiddenResponse'
        '429':
          description: This API key has exceeded the fair usage policy in Qualio, and has it its requests restricted. This request has not been processed
          headers:
            Access-Control-Allow-Origin:
              schema:
                type: string
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Content-Type:
              schema:
                type: string
            Content-Disposition:
              schema:
                type: string
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/throttledResponse'
  /v1/change-management/change-requests:
    get:
      summary: List change requests
      description: Lists change requests for your Qualio instance. A change request (CR) is a formal record used to propose, track, and approve changes to controlled documents. Each entry includes its code (e.g. DCR-1), title, owner, status, timestamps, and linked change items. Supports filtering by status, text search, ordering, and pagination.
      operationId: listChangeRequests
      tags:
      - Change Management
      security:
      - api_key: []
      parameters:
      - in: query
        name: offset
        schema:
          $ref: '#/components/schemas/offsetParam'
        description: A start point for the batch to be returned. For example, a value of 5 will start at the 6th element in the overall population
      - in: query
        name: limit
        schema:
          $ref: '#/components/schemas/limitParam'
      - in: query
        name: status
        schema:
          $ref: '#/components/schemas/statusParam'
        description: The status of a domain object
      - in: query
        name: orderBy
        schema:
          $ref: '#/components/schemas/orderByParam'
        description: The field to order the results by
      responses:
        '200':
          description: Successful change request list retrieval
          headers:
            Access-Control-Allow-Origin:
              schema:
                type: string
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Content-Type:
              schema:
                type: string
            Content-Disposition:
              schema:
                type: string
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/changeRequestResp'
        '400':
          description: The request has malformed query parameters
          headers:
            Access-Control-Allow-Origin:
              schema:
                type: string
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Content-Type:
              schema:
                type: string
            Content-Disposition:
              schema:
                type: string
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/genericBadRequest400ParametersResponse'
        '403':
          description: This API key is not allowed to perform this action, or the API key is incorrect
          headers:
            Access-Control-Allow-Origin:
              schema:
                type: string
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Content-Type:
              schema:
                type: string
            Content-Disposition:
              schema:
                type: string
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/genericForbiddenResponse'
        '429':
          description: This API key has exceeded the fair usage policy in Qualio, and has it its requests restricted. This request has not been processed
          headers:
            Access-Control-Allow-Origin:
              schema:
                type: string
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Content-Type:
              schema:
                type: string
            Content-Disposition:
              schema:
                type: string
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/throttledResponse'
    options:
      description: Lists change requests for your Qualio instance. A change request (CR) is a formal record used to propose, track, and approve changes to controlled documents. Each entry includes its code (e.g. DCR-1), title, owner, status, timestamps, and linked change items. Supports filtering by status, text search, ordering, and pagination.
      operationId: listChangeRequestsOptions
      tags:
      - Change Management
      x-scalar-ignore: true
      parameters:
      - in: query
        name: offset
        schema:
          $ref: '#/components/schemas/offsetParam'
        description: A start point for the batch to be returned. For example, a value of 5 will start at the 6th element in the overall population
      - in: query
        name: limit
        schema:
          $ref: '#/components/schemas/limitParam'
      - in: query
        name: status
        schema:
          $ref: '#/components/schemas/statusParam'
        description: The status of a domain object
      - in: query
        name: orderBy
        schema:
          $ref: '#/components/schemas/orderByParam'
        description: The field to order the results by
      responses:
        '200':
          description: Options 200
          headers:
            Access-Control-Allow-Origin:
              schema:
                type: string
            Access-Control-Allow-Headers:
              schema:
                type: string
            Access-Control-Allow-Methods:
              schema:
                type: string
            Content-Type:
              schema:
                type: string
            Content-Disposition:
              schema:
                type: string
      summary: List change requests options
      x-summary-source: derived
components:
  schemas:
    createCC:
      type: object
      properties:
        document_id:
          type: number
        sections:
          type: array
          items:
            type: object
            properties:
              content:
                type: string
              position:
                type: number
            required:
            - content
            - position
      required:
      - document_id
      - sections
      description: The request to create a change control, the sections must match those in the change control template, and position starts at 1
      example:
        document_id: 1
        sections:
        - content: This change is to our privacy policy to bring it in line with GDPR
          position: 1
        - content: There is no impact to our other documented processes, and employees will be trained on this document before it becomes effective
          position: 2
    offsetParam:
      description: A start point for the batch to be returned. For example, a value of 5 will start at the 6th element in the overall population
      example: 0
      type: number
    genericBadRequest400ParametersResponse:
      type: object
      properties:
        errors:
          type: array
          items:
            type: object
            properties:
              description:
                type: string
              location:
                type: string
              name:
                type: string
            required:
            - description
            additionalProperties: false
        status:
          type: string
          const: error
      required:
      - errors
      - status
      additionalProperties: false
      example:
        status: error
        errors:
        - location: query
          name: document_id
          description: document_id is not an integer
    createdCC:
      type: object
      properties:
        id:
          type: string
        title:
          type: string
        status:
          type: string
        owner:
          type: string
        created_time:
          type: string
          format: date-time
        closed_time:
          anyOf:
          - type: string
            format: date-time
          - type: 'null'
        change_items:
          type: array
          items:
            type: object
            properties:
              title:
                type: string
              code:
                type: string
              version:
                type: string
              type:
                type: string
                enum:
                - document
                - supplier
                - event
            required:
            - title
            - code
            - version
            - type
            additionalProperties: false
      required:
      - id
      - title
      - status
      - owner
      - created_time
      - closed_time
      - change_items
      additionalProperties: false
      description: A successfully created change control
      example:
        id: CC-1-123
        title: Test Change Control
        status: open
        created_time: '2024-07-30T18:00:00.000Z'
        closed_time: '2024-07-29T18:00:00.000Z'
        owner: Kai Havertz
        change_items:
        - title: Test Policy
          code: POL-1
          version: '1.0'
          type: document
    genericForbiddenResponse:
      type: object
      properties:
        message:
          type: string
      required:
      - message
      additionalProperties: false
      example:
        message: User is not authorized to access this resource with an explicit deny
    genericBadRequestResponse:
      type: object
      properties:
        errors:
          type: array
          items:
            type: object
            properties:
              description:
                type: string
              location:
                type: string
              name:
                type: string
            required:
            - description
            additionalProperties: false
        status:
          type: string
          const: error
      required:
      - errors
      - status
      additionalProperties: false
      example:
        status: error
        errors:
        - location: body
          name: email
          description: Email missing from payload
    changeRequestResp:
      type: object
      properties:
        total:
          type: number
        items:
          type: array
          items:
            type: object
            properties:
              code:
                type: string
              title:
                type: string
              status:
                type: string
              owner:
                type: string
              created_time:
                type: string
                format: date-time
              closed_time:
                anyOf:
                - type: string
                  format: date-time
                - type: 'null'
              change_items:
                type: array
                items:
                  type: object
                  properties:
                    title:
                      type: string
                    code:
                      type: string
                    version:
                      type: string
                    type:
                      type: string
                      enum:
                      - document
                      - supplier
                      - event
                  required:
                  - title
                  - code
                  - version
                  - type
                  additionalProperties: false
            required:
            - code
            - title
            - status
            - owner
            - created_time
            - closed_time
            - change_items
            additionalProperties: false
      required:
      - total
      - items
      additionalProperties: false
      description: A paginated list of change requests
      example:
        total: 1
        items:
        - code: DCR-1
          title: Update Privacy Policy
          status: in_progress
          owner: John Smith
          created_time: '2024-07-30T18:00:00.000Z'
          closed_time: null
          change_items:
          - title: Privacy Policy
            code: POL-1
            version: '2.0'
            type: document
    limitParam:
      type: number
      description: The maximum number of results to return. This is typically used with offset to paginate results.
      example: 30
    changeControlResp:
      type: object
      properties:
        total:
          type: number
        items:
          type: array
          items:
            type: object
            properties:
              id:
                type: string
              title:
                type: string
              status:
                type: string
              owner:
                type: string
              created_time:
                type: string
                format: date-time
              closed_time:
                anyOf:
                - type: string
                  format: date-time
                - type: 'null'
              change_items:
                type: array
                items:
                  type: object
                  properties:
                    title:
                      type: string
                    code:
                      type: string
                    version:
                      type: string
                    type:
                      type: string
                      enum:
                      - document
                      - supplier
                      - event
                  required:
                  - title
                  - code
                  - version
                  - type
                  additionalProperties: false
            required:
            - id
            - title
            - status
            - owner
            - created_time
            - closed_time
            - change_items
            additionalProperties: false
      required:
      - total
      - items
      additionalProperties: false
      description: A series of change control entries
      example:
        total: 1
        items:
        - id: CC-1-123
          title: Test Change Control
          status: open
          created_time: '2024-07-30T18:00:00.000Z'
          closed_time: '2024-07-29T18:00:00.000Z'
          owner: Kai Havertz
          change_items:
          - title: Test Policy
            code: POL-1
            version: '1.0'
            type: document
    statusParam:
      description: The status of a domain object
      example: Closed
      type: string
    throttledResponse:
      type: object
      properties:
        message:
          type: string
      required:
      - message
      additionalProperties: false
      example:
        message: You have exceeded what is allowed in the fair use policy for this API
    orderByParam:
      description: The field to order the results by
      example: created_date
      type: string
  securitySchemes:
    api_key:
      type: apiKey
      name: X-Api-Key
      in: header