> ## Documentation Index
> Fetch the complete documentation index at: https://docs.gable.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Get the changelog

> Get the changelog



## OpenAPI

````yaml /api-reference/bundled.yaml get /v0/changelog
openapi: 3.1.0
info:
  title: Gable API
  description: >
    API to interact with the Gable platform

    ## Authorization

    All API requests require an API key to be passed in the `X-API-KEY` header.
    For instructions on finding your API key and api endpoint check out the [API
    Key documentation](../docs/api-keys.md).

    Example: `curl -H "X-API-KEY: <your-api-key>"
    https://api-{organization}.gable.ai/v0/ping`
  contact:
    name: Gable Engineering
    url: https://gable.ai
    email: engineers@gable.ai
  version: 1.28.0
servers:
  - url: https://{hostname}.gable.ai
    description: Gable API
    variables:
      hostname:
        default: demo-api
        description: Customer environment assigned by Gable
security:
  - ApiKeyAuth: []
tags:
  - name: action
  - name: api-keys
  - name: auth
  - name: changelog
  - name: config
  - name: contract
  - name: data-asset
  - name: debug
  - name: s3
  - name: settings
  - name: slack
  - name: sso
  - name: webhook
  - name: notifications
  - name: constraints
  - name: telemetry
  - name: component
  - name: components
  - name: sca
  - name: cross-service-components
  - name: lineage
  - name: events
  - name: measurements
  - name: defect-report
  - name: experimental
paths:
  /v0/changelog:
    get:
      tags:
        - changelog
      summary: Get the changelog
      description: Get the changelog
      operationId: getChangelog
      parameters:
        - in: query
          name: limit
          schema:
            type: integer
          description: The limit used for offset-based pagination
        - in: query
          name: offset
          schema:
            type: integer
          description: The offset used for offset-based pagination
        - in: query
          name: source
          schema:
            type: array
            items:
              type: string
          description: Comma-separated list of the sources to filter by
        - in: query
          name: source_type
          schema:
            type: array
            items:
              type: string
          description: Comma-separated list of the source types to filter by
        - in: query
          name: event
          schema:
            type: array
            items:
              type: string
          description: Comma-separated list of the changelog events to filter by
      responses:
        '200':
          description: Changelog
          content:
            application/json:
              schema:
                oneOf:
                  - $ref: '#/components/schemas/GetChangelogResponse'
                  - $ref: '#/components/schemas/ChangelogResponsePaginated'
        '400':
          description: Error response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
components:
  schemas:
    GetChangelogResponse:
      type: object
      properties:
        changelogEvents:
          type: array
          description: List of changelog events in chronological order (oldest first)
          items:
            oneOf:
              - $ref: '#/components/schemas/AssetCreatedEvent'
              - $ref: '#/components/schemas/AssetDeletedEvent'
              - $ref: '#/components/schemas/AssetModifiedEvent'
              - $ref: '#/components/schemas/ContractCreatedEvent'
              - $ref: '#/components/schemas/ContractModifiedEvent'
              - $ref: '#/components/schemas/ContractViolationEvent'
              - $ref: '#/components/schemas/ContractDeletedEvent'
              - $ref: '#/components/schemas/ActionCreatedEvent'
              - $ref: '#/components/schemas/ActionDeletedEvent'
              - $ref: '#/components/schemas/ActionEnabledEvent'
              - $ref: '#/components/schemas/ActionDisabledEvent'
              - $ref: '#/components/schemas/ActionModifiedEvent'
      required:
        - changelogEvents
    ChangelogResponsePaginated:
      type: object
      properties:
        data:
          $ref: '#/components/schemas/GetChangelogResponse'
        totalCount:
          type: number
    ErrorResponse:
      type: object
      required:
        - message
      properties:
        id:
          type: number
        title:
          type: string
        message:
          type: string
    AssetCreatedEvent:
      allOf:
        - $ref: '#/components/schemas/ChangelogEventBase'
        - type: object
          properties:
            entityType:
              description: The type of entity that the changelog event is associated with.
              type: string
              enum:
                - DATA_ASSET
            dataAssetResourceName:
              $ref: '#/components/schemas/DataAssetResourceName'
            eventType:
              $ref: '#/components/schemas/ChangelogEventType'
            prLink:
              type: string
              description: Link to the pull request associated with the asset modification.
              example: https://github.com/fakeorg/fakerepo/pull/1
            piiDetected:
              type: object
              additionalProperties: true
              description: A mapping of the fieldname to the pii_category.
          required:
            - entityType
            - dataAssetResourceName
            - eventType
    AssetDeletedEvent:
      allOf:
        - $ref: '#/components/schemas/AssetCreatedEvent'
    AssetModifiedEvent:
      allOf:
        - $ref: '#/components/schemas/AssetCreatedEvent'
        - type: object
          properties:
            modifications:
              type: array
              description: >-
                List of changelog modifications in chronological order (newest
                first)
              items:
                oneOf:
                  - $ref: '#/components/schemas/FieldAddedEvent'
                  - $ref: '#/components/schemas/FieldModifiedEvent'
                  - $ref: '#/components/schemas/FieldDeletedEvent'
            piiDetected:
              type: object
              additionalProperties: true
              description: A mapping of the fieldname to the pii_category.
          required:
            - modifications
    ContractCreatedEvent:
      allOf:
        - $ref: '#/components/schemas/ChangelogEventBase'
        - type: object
          properties:
            entityType:
              description: The type of entity that the changelog event is associated with.
              type: string
              enum:
                - DATA_CONTRACT
            eventType:
              $ref: '#/components/schemas/ChangelogEventType'
            contractId:
              description: The unique identifier for the contract.
              type: string
              format: uuid
            contractName:
              description: The name of the contract.
              type: string
            contractDomain:
              description: The domain of the contract.
              type: string
          required:
            - contractId
            - entityType
            - eventType
    ContractModifiedEvent:
      allOf:
        - $ref: '#/components/schemas/ContractCreatedEvent'
        - type: object
          properties:
            modifications:
              type: array
              description: >-
                List of changelog modifications in chronological order (newest
                first)
              items:
                oneOf:
                  - $ref: '#/components/schemas/FieldAddedEvent'
                  - $ref: '#/components/schemas/FieldModifiedEvent'
                  - $ref: '#/components/schemas/FieldDeletedEvent'
          required:
            - modifications
    ContractViolationEvent:
      allOf:
        - $ref: '#/components/schemas/ChangelogEventBase'
        - $ref: '#/components/schemas/ContractViolation'
    ContractDeletedEvent:
      allOf:
        - $ref: '#/components/schemas/ChangelogEventBase'
        - $ref: '#/components/schemas/ContractDeleted'
    ActionCreatedEvent:
      allOf:
        - $ref: '#/components/schemas/ChangelogEventBase'
        - type: object
          properties:
            entityType:
              description: The type of entity that the changelog event is associated with.
              type: string
              enum:
                - ACTION
            eventType:
              $ref: '#/components/schemas/ChangelogEventType'
            actionId:
              description: The unique identifier for the action.
              type: string
              format: uuid
            actionName:
              description: The name of the action.
              type: string
          required:
            - actionId
            - actionName
            - entityType
            - eventType
    ActionDeletedEvent:
      allOf:
        - $ref: '#/components/schemas/ActionCreatedEvent'
    ActionEnabledEvent:
      allOf:
        - $ref: '#/components/schemas/ActionCreatedEvent'
    ActionDisabledEvent:
      allOf:
        - $ref: '#/components/schemas/ActionCreatedEvent'
    ActionModifiedEvent:
      allOf:
        - $ref: '#/components/schemas/ActionCreatedEvent'
        - type: object
          properties:
            modifications:
              type: array
              description: >-
                List of changelog modifications in chronological order (newest
                first)
              items:
                oneOf:
                  - $ref: '#/components/schemas/TriggerAddedEvent'
                  - $ref: '#/components/schemas/TriggerDeletedEvent'
                  - $ref: '#/components/schemas/DestinationAddedEvent'
                  - $ref: '#/components/schemas/DestinationDeletedEvent'
                  - $ref: '#/components/schemas/DestinationModifiedEvent'
                  - $ref: '#/components/schemas/ActionRenamedEvent'
          required:
            - modifications
    ChangelogEventBase:
      type: object
      properties:
        id:
          description: The unique identifier for the changelog event.
          type: string
          format: uuid
        eventTitle:
          description: The LLM-generated text of the changelog event.
          type: string
        timestamp:
          description: The timestamp of the changelog event.
          type: string
          format: date-time
        userId:
          description: The unique identifier for the User who made a changelog event.
          type: string
          format: uuid
      required:
        - id
        - entityName
        - timestamp
    DataAssetResourceName:
      type: string
      pattern: >-
        ^(protobuf|avro|json_schema|java|postgres|mysql|mssql|snowflake|bigquery|python|pyspark|typescript|s3|dataframe|kotlin|swift|php)://(?=.*[a-zA-Z0-9])[a-zA-Z0-9_@\.:/-]+[:/](?=.*[a-zA-Z0-9])[a-zA-Z0-9
        _\./-\{\}\-]+$
      description: >-
        The unique identifier of the data asset. It follows the pattern
        '{data_asset_type}://{data_asset_source}:{data_asset_name}'
    ChangelogEventType:
      type: string
      enum:
        - CREATED
        - MODIFIED
        - DELETED
        - VIOLATION
        - ENABLED
        - DISABLED
    FieldAddedEvent:
      type: object
      properties:
        eventType:
          type: string
          description: The type of event that occurred.
          enum:
            - FIELD_ADDED
        diff:
          description: Details of the modified field.
          type: object
          properties:
            fieldName:
              description: The name of the field being added.
              type: string
            type:
              description: The type of the field being added.
              type: string
          required:
            - fieldName
            - type
      required:
        - eventType
        - diff
    FieldModifiedEvent:
      type: object
      properties:
        eventType:
          type: string
          description: The type of event that occurred.
          enum:
            - FIELD_MODIFIED
        diff:
          description: Details of the modified field.
          type: object
          properties:
            fieldName:
              description: The name of the field being modified.
              type: string
            attributeName:
              description: The name of the attribute being modified.
              type: string
              enum:
                - PRECISION_BITS
                - SIGNED
                - TYPE
                - LOGICAL_TYPE
                - ENUM_VALUES
                - NULLABLE
                - STRUCTURAL
                - BYTES
                - VARIABLE
                - SCALE
                - PRECISION
                - UNIT
                - TIMEZONE
                - VALUE
                - SEMANTIC
                - DOC
            previousValue:
              description: The type of the field before the change.
              type: string
            newValue:
              description: The type of the field after the change.
              type: string
            summary:
              description: A very brief summary of the change for the field.
              type: string
            description:
              description: A detailed description of the change.
              type: string
          required:
            - fieldName
            - attributeName
            - previousValue
            - newValue
      required:
        - eventType
        - diff
    FieldDeletedEvent:
      type: object
      properties:
        eventType:
          type: string
          description: The type of event that occurred.
          enum:
            - FIELD_DELETED
        diff:
          description: Details of the modified field.
          type: object
          properties:
            fieldName:
              description: The name of the field being deleted.
              type: string
            type:
              description: The type of the field being deleted.
              type: string
          required:
            - fieldName
            - type
      required:
        - eventType
        - diff
    ContractViolation:
      type: object
      properties:
        contractId:
          description: Unique identifier for the contract in UUID format
          type: string
          format: uuid
        contractVersion:
          description: Version of the contract
          type: string
        contractFieldName:
          description: Field of the contract where violation occured
          type: string
        contractName:
          description: Name of the contract
          type: string
        contractDomain:
          description: Domain of the contract
          type: string
        dataAssetFieldProfileId:
          description: Unique identifier for the data asset field in UUID format
          type: string
          format: uuid
        entityType:
          description: The type of entity that the changelog event is associated with.
          type: string
          enum:
            - DATA_CONTRACT
        eventType:
          description: The type of event that occurred
          type: string
          enum:
            - VIOLATION
        violationType:
          $ref: '#/components/schemas/ContractViolationType'
          description: Type of violation
        dataAssetResourceName:
          $ref: '#/components/schemas/DataAssetResourceName'
        expectedValue:
          description: Expected value of the field
          type: string
        actualValue:
          description: actual value of the field
          type: string
        userId:
          description: Unique identifier for the user in UUID format
          type: string
          format: uuid
        prLink:
          description: Link to the pull request associated with the violation
          type: string
      required:
        - contractId
        - contractVersion
        - violationType
        - dataAssetResourceName
        - contractFieldName
        - entityType
        - expectedValue
        - actualValue
    ContractDeleted:
      type: object
      properties:
        contractId:
          description: Unique identifier for the contract in UUID format
          type: string
          format: uuid
        entityType:
          description: The type of entity that the changelog event is associated with.
          type: string
          enum:
            - DATA_CONTRACT
        eventType:
          description: The type of event that occurred
          type: string
          enum:
            - DELETED
        userId:
          description: Unique identifier for the user in UUID format
          type: string
          format: uuid
        contractName:
          description: Name of the contract
          type: string
        contractDomain:
          description: Domain/namespace of the contract
          type: string
      required:
        - contractId
        - entityType
        - eventType
        - contractName
        - contractDomain
    TriggerAddedEvent:
      type: object
      properties:
        eventType:
          type: string
          description: The type of event that occurred.
          enum:
            - TRIGGER_ADDED
        diff:
          description: Details of the modified trigger.
          type: object
          properties:
            triggerName:
              description: The name of the trigger being added.
              type: string
            type:
              $ref: '#/components/schemas/ActionTriggerType'
              description: The type of the trigger being added.
          required:
            - triggerName
            - type
      required:
        - eventType
        - diff
    TriggerDeletedEvent:
      type: object
      properties:
        eventType:
          type: string
          description: The type of event that occurred.
          enum:
            - TRIGGER_DELETED
        diff:
          description: Details of the modified trigger.
          type: object
          properties:
            triggerName:
              description: The name of the trigger being deleted.
              type: string
            type:
              $ref: '#/components/schemas/ActionTriggerType'
              description: The type of the trigger being deleted.
          required:
            - triggerName
            - type
      required:
        - eventType
        - diff
    DestinationAddedEvent:
      type: object
      properties:
        eventType:
          type: string
          description: The type of event that occurred.
          enum:
            - DESTINATION_ADDED
        diff:
          description: Details of the modified destination.
          type: object
          properties:
            destinationName:
              description: The name of the destination being added.
              type: string
            type:
              $ref: '#/components/schemas/ActionDestinationType'
              description: The type of the destination being added.
          required:
            - destinationName
            - type
      required:
        - eventType
        - diff
    DestinationDeletedEvent:
      type: object
      properties:
        eventType:
          type: string
          description: The type of event that occurred.
          enum:
            - DESTINATION_DELETED
        diff:
          description: Details of the modified destination.
          type: object
          properties:
            destinationName:
              description: The name of the destination being deleted.
              type: string
            type:
              $ref: '#/components/schemas/ActionDestinationType'
              description: The type of the destination being deleted.
          required:
            - destinationName
            - type
      required:
        - eventType
        - diff
    DestinationModifiedEvent:
      type: object
      properties:
        eventType:
          type: string
          description: The type of event that occurred.
          enum:
            - DESTINATION_MODIFIED
        diff:
          description: Details of the modified destination.
          type: object
          properties:
            type:
              $ref: '#/components/schemas/ActionDestinationType'
              description: The type of the destination being modified.
            previousValues:
              description: Names of the destination before the change.
              type: array
              items:
                type: string
            newValues:
              description: Names of the destination after the change.
              type: array
              items:
                type: string
            summary:
              description: A very brief summary of the change for the destination.
              type: string
            description:
              description: A detailed description of the change.
              type: string
          required:
            - type
            - previousValue
            - newValue
      required:
        - eventType
        - diff
    ActionRenamedEvent:
      type: object
      properties:
        eventType:
          type: string
          description: The type of event that occurred.
          enum:
            - ACTION_RENAMED
        diff:
          description: Details of the modified action.
          type: object
          properties:
            previousValue:
              description: The name of the action before the change.
              type: string
            newValue:
              description: The name of the action after the change.
              type: string
          required:
            - previousValue
            - newValue
      required:
        - eventType
        - diff
    ContractViolationType:
      type: string
      enum:
        - MISSING_REQUIRED_PROPERTY
        - INCOMPATIBLE_TYPE
        - GREATER_THAN
        - GREATER_THAN_OR_EQUAL_TO
        - LESS_THAN
        - LESS_THAN_OR_EQUAL_TO
        - IS_NULL
        - IS_NULL_THRESHOLD
        - IS_NOT_EMPTY
        - LENGTH
        - LENGTH_GREATER_THAN
        - LENGTH_GREATER_THAN_OR_EQUAL_TO
        - LENGTH_LESS_THAN
        - LENGTH_LESS_THAN_OR_EQUAL_TO
        - MISSING_DATA_ASSET
        - PII_DETECTED
    ActionTriggerType:
      type: string
      description: The type of the action trigger.
      enum:
        - source
        - source_type
        - event_name
        - namespace
    ActionDestinationType:
      type: string
      description: The type of the action destination (e.g. email, slack, etc.).
      enum:
        - slack
        - email
        - webhook
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: X-API-KEY

````