Delphix PaaSTimeflows API

The PaaSTimeflows API from Delphix — 7 operation(s) for paastimeflows.

OpenAPI Specification

delphix-paastimeflows-api-openapi.yml Raw ↑
openapi: 3.0.0
info:
  title: Delphix DCT Algorithms PaaSTimeflows API
  version: 3.28.0
  description: Delphix DCT API
  contact:
    name: Delphix Support
    url: https://portal.perforce.com/s/
    email: support@delphix.com
servers:
- url: /dct/v3
security:
- ApiKeyAuth: []
tags:
- name: PaaSTimeflows
paths:
  /paas-timeflows:
    get:
      summary: List all PaaS Timeflows
      operationId: list_all_paas_timeflows
      tags:
      - PaaSTimeflows
      parameters:
      - $ref: '#/components/parameters/limit'
      - $ref: '#/components/parameters/cursor'
      - $ref: '#/components/parameters/PaaSTimeflowSortParam'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                title: ListPaaSTimeflowsResponse
                properties:
                  items:
                    type: array
                    items:
                      $ref: '#/components/schemas/PaaSTimeflow'
                  response_metadata:
                    $ref: '#/components/schemas/PaginatedResponseMetadata'
  /paas-timeflows/search:
    post:
      summary: Search PaaS Timeflows
      operationId: search_paas_timeflows
      tags:
      - PaaSTimeflows
      parameters:
      - $ref: '#/components/parameters/limit'
      - $ref: '#/components/parameters/cursor'
      - $ref: '#/components/parameters/PaaSTimeflowSortParam'
      requestBody:
        content:
          application/json:
            schema:
              x-body-name: search_body
              $ref: '#/components/schemas/SearchBody'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                title: SearchPaaSTimeflowsResponse
                properties:
                  items:
                    type: array
                    items:
                      $ref: '#/components/schemas/PaaSTimeflow'
                  response_metadata:
                    $ref: '#/components/schemas/PaginatedResponseMetadata'
  /paas-timeflows/{paaSTimeflowId}:
    parameters:
    - $ref: '#/components/parameters/paaSTimeflowIdParam'
    get:
      summary: Get PaaS Timeflow by ID
      operationId: get_paas_timeflow_by_id
      tags:
      - PaaSTimeflows
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaaSTimeflow'
  /paas-timeflows/{paaSTimeflowId}/tags:
    parameters:
    - $ref: '#/components/parameters/paaSTimeflowIdParam'
    post:
      tags:
      - PaaSTimeflows
      summary: Create tags for a PaaS Timeflow.
      operationId: create_paas_timeflow_tags
      requestBody:
        content:
          application/json:
            schema:
              x-body-name: paas_timeflow_tags
              $ref: '#/components/schemas/TagsRequest'
        description: Tags information for PaaS Timeflow.
        required: true
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TagsResponse'
    get:
      tags:
      - PaaSTimeflows
      summary: Get tags for a PaaS Timeflow.
      operationId: get_paas_timeflow_tags
      responses:
        '200':
          description: Ok
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TagsResponse'
  /paas-timeflows/{paaSTimeflowId}/tags/delete:
    parameters:
    - $ref: '#/components/parameters/paaSTimeflowIdParam'
    post:
      tags:
      - PaaSTimeflows
      summary: Delete tags for a PaaS Timeflow.
      operationId: delete_paas_timeflow_tags
      requestBody:
        $ref: '#/components/requestBodies/DeleteTags'
      responses:
        '204':
          description: No Content
  /paas-instances/{paaSInstanceId}/timeflows:
    get:
      summary: List all timeflows for a PaaS Instance
      operationId: get_paas_instance_timeflows
      tags:
      - PaaSTimeflows
      parameters:
      - $ref: '#/components/parameters/paaSInstanceIdParam'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                title: ListPaaSInstanceTimeflowsResponse
                properties:
                  items:
                    type: array
                    items:
                      $ref: '#/components/schemas/PaaSTimeflow'
  /paas-databases/{paaSDatabaseId}/timeflows:
    get:
      summary: List all timeflows for a PaaS Database
      operationId: get_paas_database_timeflows
      tags:
      - PaaSTimeflows
      parameters:
      - $ref: '#/components/parameters/paaSDatabaseIdParam'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                title: ListPaaSDatabaseTimeflowsResponse
                properties:
                  items:
                    type: array
                    items:
                      $ref: '#/components/schemas/PaaSTimeflow'
components:
  parameters:
    limit:
      name: limit
      in: query
      description: Maximum number of objects to return per query. The value must be between 1 and 1000. Default is 100.
      example: 50
      schema:
        type: integer
        minimum: 1
        maximum: 1000
        default: 100
    paaSTimeflowIdParam:
      in: path
      name: paaSTimeflowId
      required: true
      schema:
        type: string
        minLength: 1
      description: The ID of the PaaS Timeflow.
    paaSInstanceIdParam:
      in: path
      name: paaSInstanceId
      required: true
      schema:
        type: string
        minLength: 1
      description: The ID of the PaaS Instance.
    PaaSTimeflowSortParam:
      name: sort
      in: query
      description: The field to sort timeflow results by. A field prefixed with `-` indicates descending order.
      required: false
      schema:
        type: string
        enum:
        - id
        - -id
        - instance_id
        - -instance_id
        - database_id
        - -database_id
        - is_active
        - -is_active
        - creation_timestamp
        - -creation_timestamp
        - deactivation_timestamp
        - -deactivation_timestamp
        nullable: true
        example: -creation_timestamp
    paaSDatabaseIdParam:
      in: path
      name: paaSDatabaseId
      required: true
      schema:
        type: string
        minLength: 1
      description: The ID of the PaaS Database.
    cursor:
      name: cursor
      in: query
      description: Cursor to fetch the next or previous page of results. The value of this property must be extracted from the 'prev_cursor' or 'next_cursor' property of a PaginatedResponseMetadata which is contained in the response of list and search API endpoints.
      schema:
        type: string
        minLength: 1
        maxLength: 4096
  schemas:
    Tag:
      type: object
      required:
      - key
      - value
      properties:
        key:
          description: Key of the tag
          type: string
          minLength: 1
          maxLength: 4000
          example: key-1
        value:
          description: Value of the tag
          type: string
          minLength: 1
          maxLength: 4000
          example: value-1
    TagsResponse:
      type: object
      properties:
        tags:
          description: Array of tags with key value pairs
          type: array
          items:
            $ref: '#/components/schemas/Tag'
    DeleteTag:
      type: object
      properties:
        key:
          description: Key of the tag
          type: string
          minLength: 1
          maxLength: 4000
          example: key-1
        value:
          description: Value of the tag
          type: string
          minLength: 1
          maxLength: 4000
          example: value-1
        tags:
          description: List of tags to be deleted
          type: array
          minItems: 1
          maxItems: 1000
          uniqueItems: true
          items:
            $ref: '#/components/schemas/Tag'
    TagsRequest:
      type: object
      required:
      - tags
      properties:
        tags:
          description: Array of tags with key value pairs
          type: array
          items:
            $ref: '#/components/schemas/Tag'
          minItems: 1
          maxItems: 1000
          uniqueItems: true
    PaaSTimeflow:
      description: A PaaS Timeflow represents a single continuous cloud existence of a PaaS Instance or PaaS Database. Each time an instance/database is provisioned or reprovisioned, a new timeflow is created. Deprovisioning deactivates the current timeflow. Historical timeflows retain their snapshots, which can be used for historical auditing.
      type: object
      properties:
        id:
          description: The PaaS Timeflow object entity ID.
          type: string
          example: paas-timeflow-abc123
        instance_id:
          description: The ID of the PaaS Instance this timeflow belongs to. Null for database timeflows.
          type: string
          example: instance-123
        database_id:
          description: The ID of the PaaS Database this timeflow belongs to. Null for instance timeflows.
          type: string
          example: db-123
        is_active:
          description: Whether this timeflow is currently active. Only one timeflow per instance or database can be active at a time.
          type: boolean
          example: true
        creation_timestamp:
          description: The timestamp when this timeflow was created (when the instance or database was provisioned).
          type: string
          format: date-time
          example: '2025-01-01T00:00:00.000000+00:00'
        deactivation_timestamp:
          description: The timestamp when this timeflow was deactivated (when the instance or database was deprovisioned). Null for active timeflows.
          type: string
          format: date-time
          example: '2025-06-01T00:00:00.000000+00:00'
        masked_by_execution_id:
          description: The ID of the compliance job collection execution that masked this timeflow, if any.
          type: string
          readOnly: true
        masked_by_collection_id:
          description: The ID of the compliance job collection that masked this timeflow, if any.
          type: string
          readOnly: true
        tags:
          type: array
          items:
            $ref: '#/components/schemas/Tag'
    PaginatedResponseMetadata:
      type: object
      properties:
        prev_cursor:
          description: Pointer to the previous page of results. Use this value as a cursor query parameter in a subsequent request, along with limit, to navigate through the collection by virtual page.
          type: string
        next_cursor:
          description: Pointer to the next page of results. Use this value as a cursor query parameter in a subsequent request, along with limit, to navigate through the collection by virtual page.
          type: string
        total:
          description: The total number of results. This value may not be provided.
          type: integer
          format: int_64
    SearchBody:
      description: Search body.
      type: object
      properties:
        filter_expression:
          type: string
          minLength: 5
          maxLength: 50000
          example: string_field CONTAINS "over" AND numberic_field GT 9000 OR string_field2 EQ "Goku"
  requestBodies:
    DeleteTags:
      description: The parameters to delete tags
      content:
        application/json:
          schema:
            x-body-name: environment
            $ref: '#/components/schemas/DeleteTag'
          examples:
            delete_all_tags:
              description: Delete all tags for given object - No request body required
              summary: Delete all tags
              value: {}
            delete_tags_by_key:
              description: Delete all tags for given object with matching key
              summary: Delete tags by key
              value:
                key: key-1
            delete_tags_by_key_value:
              description: Delete tag for given object with matching key and value
              summary: Delete a tag by key & value
              value:
                key: key-1
                value: value-1
            delete_multiple_tags_by_key_value:
              description: Delete tags for given list of tags with matching key and value
              summary: Delete multiple tags by key & value
              value:
                tags:
                - key: key-1
                  value: value-1
                - key: key-2
                  value: value-2
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: Authorization