Delphix Executions API

The Executions API from Delphix — 15 operation(s) for executions.

OpenAPI Specification

delphix-executions-api-openapi.yml Raw ↑
openapi: 3.0.0
info:
  title: Delphix DCT Algorithms Executions 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: Executions
paths:
  /executions:
    get:
      tags:
      - Executions
      summary: Retrieve the list of masking executions.
      operationId: get_executions
      parameters:
      - $ref: '#/components/parameters/limit'
      - $ref: '#/components/parameters/cursor'
      - $ref: '#/components/parameters/executionsSortParam'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                title: ListExecutionsResponse
                properties:
                  items:
                    type: array
                    items:
                      $ref: '#/components/schemas/Execution'
                  response_metadata:
                    $ref: '#/components/schemas/PaginatedResponseMetadata'
  /executions/search:
    post:
      tags:
      - Executions
      summary: Search masking executions.
      operationId: search_executions
      x-filterable:
        fields:
          id:
            type: string
          engine_id:
            type: string
          engine_name:
            type: string
          job_orchestrator_id:
            type: string
          job_orchestrator_name:
            type: string
          masking_job_id:
            type: string
          masking_job_name:
            type: string
          compliance_job_type:
            type: string
          dct_managed:
            type: boolean
          source_connector_id:
            type: string
          source_connector_name:
            type: string
          target_connector_id:
            type: string
          target_connector_name:
            type: string
          status:
            type: string
          rows_masked:
            type: integer
          rows_total:
            type: integer
          bytes_processed:
            type: integer
          bytes_total:
            type: integer
          start_time:
            type: string
          submit_time:
            type: string
          end_time:
            type: string
          run_duration:
            type: integer
          queue_duration:
            type: integer
          total_duration:
            type: integer
          account_id:
            type: integer
          account_name:
            type: string
          hyperscale_instance_id:
            type: string
          hyperscale_engine_count:
            type: integer
          collection_execution_id:
            type: string
          owning_entity_id:
            type: string
          owning_entity_type:
            type: string
          task_events:
            type: array[object]
            fields:
              event:
                type: string
              status:
                type: string
          hyperscale_task_events:
            type: array[object]
            fields:
              name:
                type: string
              progress:
                type: number
              status:
                type: string
              processed_objects:
                type: integer
              processed_rows:
                type: integer
              total_constraints:
                type: integer
              processed_indexes:
                type: integer
              total_indexes:
                type: integer
              processed_triggers:
                type: integer
              total_triggers:
                type: integer
              start_time:
                type: string
              end_time:
                type: string
              errors:
                type: array[object]
                fields:
                  table_name:
                    type: string
                  error:
                    type: string
      parameters:
      - $ref: '#/components/parameters/limit'
      - $ref: '#/components/parameters/cursor'
      - $ref: '#/components/parameters/executionsSortParam'
      requestBody:
        $ref: '#/components/requestBodies/SearchBody'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                title: SearchExecutionsResponse
                properties:
                  items:
                    type: array
                    items:
                      $ref: '#/components/schemas/Execution'
                  response_metadata:
                    $ref: '#/components/schemas/PaginatedResponseMetadata'
  /executions/{executionId}:
    parameters:
    - $ref: '#/components/parameters/executionIdParam'
    get:
      summary: Retrieve an Execution by ID.
      operationId: get_execution_by_id
      tags:
      - Executions
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Execution'
  /executions/{executionId}/cancel:
    parameters:
    - $ref: '#/components/parameters/executionIdParam'
    post:
      summary: Cancel an Execution.
      operationId: cancel_execution
      tags:
      - Executions
      requestBody:
        required: false
        content:
          application/json:
            schema:
              x-body-name: cancel_execution
              $ref: '#/components/schemas/ExecutionCancelParameters'
      responses:
        '200':
          description: OK
  /executions/{executionId}/restart:
    parameters:
    - $ref: '#/components/parameters/executionIdParam'
    post:
      summary: Restart an Execution (Hyperscale only).
      operationId: restart_execution
      tags:
      - Executions
      responses:
        '200':
          description: Masking job execution restarted.
          content:
            application/json:
              schema:
                type: object
                title: RestartExecutionResponse
                properties:
                  job:
                    $ref: '#/components/schemas/Job'
                    description: The initiated job.
  /executions/{executionId}/cleanup:
    parameters:
    - $ref: '#/components/parameters/executionIdParam'
    post:
      summary: Cleanup an Execution (Hyperscale only).
      operationId: cleanup_execution
      tags:
      - Executions
      responses:
        '200':
          description: Masking job execution cleaned up.
          content:
            application/json:
              schema:
                type: object
                title: CleanupExecutionResponse
                properties:
                  job:
                    $ref: '#/components/schemas/Job'
                    description: The initiated job.
  /executions/{executionId}/events:
    parameters:
    - $ref: '#/components/parameters/executionIdParam'
    get:
      summary: Retrieve the list of events for a masking execution.
      operationId: get_execution_events
      parameters:
      - $ref: '#/components/parameters/limit'
      - $ref: '#/components/parameters/cursor'
      - $ref: '#/components/parameters/executionEventsSortParam'
      tags:
      - Executions
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                title: ListExecutionEventsResponse
                properties:
                  items:
                    type: array
                    items:
                      $ref: '#/components/schemas/ExecutionEvent'
                  response_metadata:
                    $ref: '#/components/schemas/PaginatedResponseMetadata'
  /executions/{executionId}/events/search:
    parameters:
    - $ref: '#/components/parameters/executionIdParam'
    post:
      tags:
      - Executions
      summary: Search masking executions events.
      operationId: search_execution_events
      parameters:
      - $ref: '#/components/parameters/limit'
      - $ref: '#/components/parameters/cursor'
      - $ref: '#/components/parameters/executionEventsSortParam'
      x-filterable:
        fields:
          id:
            type: string
          execution_id:
            type: string
          execution_component_id:
            type: string
          event_type:
            type: string
          severity:
            type: string
          cause:
            type: string
          count:
            type: integer
          timestamp:
            type: string
          masked_object_name:
            type: string
          algorithm_name:
            type: string
          exception_type:
            type: string
          exception_detail:
            type: string
      requestBody:
        $ref: '#/components/requestBodies/SearchBody'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                title: SearchExecutionEventsResponse
                properties:
                  items:
                    type: array
                    items:
                      $ref: '#/components/schemas/ExecutionEvent'
                  response_metadata:
                    $ref: '#/components/schemas/PaginatedResponseMetadata'
  /executions/{executionId}/log:
    parameters:
    - $ref: '#/components/parameters/executionIdParam'
    get:
      summary: Retrieve the masking execution log.
      description: Returns the execution log information for the given execution.
      operationId: get_execution_log
      tags:
      - Executions
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ExecutionLog'
        '404':
          description: Execution not found or log not available.
  /executions/{executionId}/execution-components:
    parameters:
    - $ref: '#/components/parameters/executionIdParam'
    get:
      summary: Get execution components for an execution.
      operationId: get_execution_components
      parameters:
      - $ref: '#/components/parameters/limit'
      - $ref: '#/components/parameters/cursor'
      - $ref: '#/components/parameters/executionComponentsSortParam'
      tags:
      - Executions
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                title: ExecutionComponentsListResponse
                properties:
                  items:
                    type: array
                    items:
                      $ref: '#/components/schemas/ExecutionComponent'
                  response_metadata:
                    $ref: '#/components/schemas/PaginatedResponseMetadata'
  /executions/{executionId}/execution-components/search:
    parameters:
    - $ref: '#/components/parameters/executionIdParam'
    post:
      tags:
      - Executions
      summary: Search execution components for an execution.
      operationId: search_execution_components
      parameters:
      - $ref: '#/components/parameters/limit'
      - $ref: '#/components/parameters/cursor'
      - $ref: '#/components/parameters/executionComponentsSortParam'
      x-filterable:
        fields:
          id:
            type: string
          name:
            type: string
          execution_id:
            type: string
          status:
            type: string
          rows_masked:
            type: integer
          rows_total:
            type: integer
          bytes_processed:
            type: integer
          bytes_total:
            type: integer
          start_time:
            type: string
          end_time:
            type: string
          non_conforming_data_count:
            type: integer
      requestBody:
        $ref: '#/components/requestBodies/SearchBody'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                title: ExecutionComponentsSearchResponse
                properties:
                  items:
                    type: array
                    items:
                      $ref: '#/components/schemas/ExecutionComponent'
                  response_metadata:
                    $ref: '#/components/schemas/PaginatedResponseMetadata'
  /executions/{executionId}/execution-components/{executionComponentId}:
    parameters:
    - $ref: '#/components/parameters/executionIdParam'
    - $ref: '#/components/parameters/executionComponentIdParam'
    get:
      summary: Get an execution component by ID.
      operationId: get_execution_component_by_id
      tags:
      - Executions
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ExecutionComponent'
  /executions/{executionId}/execution-components/{executionComponentId}/log:
    parameters:
    - $ref: '#/components/parameters/executionIdParam'
    - $ref: '#/components/parameters/executionComponentIdParam'
    get:
      summary: Get an execution component log.
      description: Returns the execution component log information for the given execution component.
      operationId: get_execution_component_log
      tags:
      - Executions
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ExecutionComponentLog'
        '404':
          description: Execution component not found or log not available.
  /executions/{executionId}/discovery-results:
    parameters:
    - $ref: '#/components/parameters/executionIdParam'
    get:
      summary: Retrieve the list of discovery results for a masking execution.
      operationId: get_discovery_results
      parameters:
      - $ref: '#/components/parameters/limit'
      - $ref: '#/components/parameters/cursor'
      - $ref: '#/components/parameters/discoveryResultSortParam'
      tags:
      - Executions
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                title: ListDiscoveryResultsResponse
                properties:
                  items:
                    type: array
                    items:
                      $ref: '#/components/schemas/DiscoveryResult'
                  response_metadata:
                    $ref: '#/components/schemas/PaginatedResponseMetadata'
  /executions/{executionId}/discovery-results/search:
    parameters:
    - $ref: '#/components/parameters/executionIdParam'
    post:
      tags:
      - Executions
      summary: Search discovery results associated with execution of a discovery job
      operationId: search_discovery_results
      parameters:
      - $ref: '#/components/parameters/limit'
      - $ref: '#/components/parameters/cursor'
      - $ref: '#/components/parameters/discoveryResultSortParam'
      x-filterable:
        fields:
          id:
            type: string
          table_name:
            type: string
          file_name:
            type: string
          column_name:
            type: string
          field_name:
            type: string
          data_class_name:
            type: string
          algorithm_name:
            type: string
          data_type:
            type: string
          confidence:
            type: integer
          is_profiler_writable:
            type: boolean
      requestBody:
        $ref: '#/components/requestBodies/SearchBody'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                title: SearchDiscoveryResultsResponse
                properties:
                  items:
                    type: array
                    items:
                      $ref: '#/components/schemas/DiscoveryResult'
                  response_metadata:
                    $ref: '#/components/schemas/PaginatedResponseMetadata'
components:
  parameters:
    discoveryResultSortParam:
      name: sort
      in: query
      description: The field to sort results by. A property name with a prepended '-' signifies a descending order.
      example: column_name
      required: false
      schema:
        type: string
        enum:
        - id
        - -id
        - table_name
        - -table_name
        - file_name
        - -file_name
        - column_name
        - -column_name
        - field_name
        - -field_name
        - data_class_name
        - -data_class_name
        - algorithm_name
        - -algorithm_name
        - data_type
        - -data_type
        - confidence
        - -confidence
        - is_profiler_writable
        - -is_profiler_writable
        nullable: true
        example: name
    executionComponentsSortParam:
      name: sort
      in: query
      description: The field to sort results by. A property name with a prepended '-' signifies a descending order.
      example: id
      required: false
      schema:
        type: string
        enum:
        - id
        - -id
        - name
        - -name
        - execution_id
        - -execution_id
        - status
        - -status
        - rows_masked
        - -rows_masked
        - rows_total
        - -rows_total
        - bytes_processed
        - -bytes_processed
        - bytes_total
        - -bytes_total
        - start_time
        - -start_time
        - end_time
        - -end_time
        - non_conforming_data_count
        - -non_conforming_data_count
        nullable: true
        example: id
    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
    executionEventsSortParam:
      name: sort
      in: query
      description: The field to sort results by. A property name with a prepended '-' signifies a descending order.
      example: id
      required: false
      schema:
        type: string
        enum:
        - id
        - -id
        - execution_id
        - -execution_id
        - execution_component_id
        - -execution_component_id
        - event_type
        - -event_type
        - severity
        - -severity
        - cause
        - -cause
        - count
        - -count
        - timestamp
        - -timestamp
        - masked_object_name
        - -masked_object_name
        - algorithm_name
        - -algorithm_name
        - exception_type
        - -exception_type
        - exception_detail
        - -exception_detail
        nullable: true
        example: id
    executionComponentIdParam:
      in: path
      name: executionComponentId
      schema:
        type: string
      required: true
      description: The ID of the Execution Component.
    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
    executionsSortParam:
      name: sort
      in: query
      description: The field to sort results by. A property name with a prepended '-' signifies a descending order.
      example: id
      required: false
      schema:
        type: string
        enum:
        - id
        - -id
        - engine_id
        - -engine_id
        - engine_name
        - -engine_name
        - job_orchestrator_id
        - -job_orchestrator_id
        - job_orchestrator_name
        - -job_orchestrator_name
        - masking_job_id
        - -masking_job_id
        - masking_job_name
        - -masking_job_name
        - compliance_job_type
        - -compliance_job_type
        - dct_managed
        - -dct_managed
        - source_connector_id
        - -source_connector_id
        - source_connector_name
        - -source_connector_name
        - target_connector_id
        - -target_connector_id
        - target_connector_name
        - -target_connector_name
        - status
        - -status
        - rows_masked
        - -rows_masked
        - rows_total
        - -rows_total
        - bytes_processed
        - -bytes_processed
        - bytes_total
        - -bytes_total
        - start_time
        - -start_time
        - end_time
        - -end_time
        - submit_time
        - -submit_time
        - run_duration
        - -run_duration
        - queue_duration
        - -queue_duration
        - total_duration
        - -total_duration
        - account_id
        - -account_id
        - account_name
        - -account_name
        - hyperscale_engine_count
        - -hyperscale_engine_count
        nullable: true
        example: -start_time
    executionIdParam:
      in: path
      name: executionId
      schema:
        type: string
        minLength: 1
      required: true
      description: The ID of the Execution.
  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
    Execution:
      description: The execution of a masking or discovery job.
      type: object
      properties:
        id:
          description: The Execution entity ID.
          type: string
          example: 414ed52c-fa89-455d-9fb9-9c2fa5115f80
        engine_id:
          description: The ID of the engine where this execution ran.
          type: string
          example: '1'
        hyperscale_instance_id:
          type: string
        engine_name:
          description: The name of the engine where this execution ran.
          type: string
          example: prod01
        job_orchestrator_id:
          description: The ID of the job orchestrator that is associated with this execution.
          type: string
        job_orchestrator_name:
          description: The name of the job orchestrator that is associated with this execution.
          type: string
        masking_job_id:
          description: The ID of the masking job that is being executed.
          type: string
          example: '2'
        masking_job_name:
          description: The name of the masking job that is being executed.
          type: string
          example: finance-masking-job
        compliance_job_type:
          description: The type of the compliance job being executed.
          type: string
          enum:
          - MASKING
          - DISCOVERY
          - TOKENIZATION
          - REIDENTIFICATION
          example: MASKING
        dct_managed:
          description: Indicates whether this execution is for a DCT-managed masking job.
          type: boolean
          example: true
        source_connector_id:
          description: The ID of the source connector. This field is only used for multi-tenant jobs that are also on-the-fly.
          type: string
          example: 1-DATABASE-2
        target_connector_id:
          description: The ID of the target connector. This field is only used for multi-tenant jobs.
          type: string
          example: 1-DATABASE-3
        source_connector_name:
          description: The name of the source connector. This field is only used for multi-tenant jobs that are also on-the-fly.
          type: string
          example: source-database
        target_connector_name:
          description: The name of the target connector. This field is only used for multi-tenant jobs.
          type: string
          example: target-database
        status:
          $ref: '#/components/schemas/ExecutionStatus'
        rows_masked:
          description: The number of rows masked or profiled so far by this execution. This is not applicable for JSON file type.
          type: integer
          format: int64
          example: 1000
        rows_total:
          description: The total number of rows that this execution should mask. This value is set to -1 while the total row count is being calculated. This is not applicable for JSON file type.
          type: integer
          format: int64
          example: 5000
        bytes_processed:
          description: The number of bytes masked so far by this execution. This is only applicable for JSON file type.
          type: integer
          format: int64
          example: 500
        bytes_total:
          description: The total number of bytes that this execution should mask. This value is set to -1 while the total byte count is being calculated. This is only applicable for JSON file type.
          type: integer
          format: int64
          example: 5000000
        start_time:
          description: The date and time that this execution was started.
          type: string
          format: date-time
          example: '2021-05-01T09:51:34.148000+00:00'
        submit_time:
          description: The date and time that this execution was submitted.
          type: string
          format: date-time
          example: '2021-05-01T08:51:34.148000+00:00'
        end_time:
          description: The date and time that this execution completed.
          type: string
          format: date-time
          example: '2021-05-01T11:51:34.148000+00:00'
        run_duration:
          description: The time this execution spent running, in milliseconds.
          type: integer
          format: int64
          example: 4000
        queue_duration:
          description: The time this execution spent in the queue, in milliseconds.
          type: integer
          format: int64
          example: 1000
        total_duration:
          description: The total time this execution took, in milliseconds.
          type: integer
          format: int64
          example: 5000
        account_id:
          description: The account id of the DCT user who started this execution.
          type: integer
          format: int64
          example: 3
        account_name:
          description: The account name of the DCT user who started this execution.
          type: string
          example: username
        task_events:
          description: The progression of steps or events performed by this execution. Only available for executions on masking engines that are version 6.0.14.0 and higher.
          type: array
          items:
            $ref: '#/components/schemas/TaskEvent'
          example:
          - event: Initializing
            status: SUCCEEDED
          - event: Job Completed
            status: FAILED
        hyperscale_task_events:
          type: array
          items:
            $ref: '#/components/schemas/HyperscaleTaskEvent'
        progress:
          description: Progress of the task (value between 0 and 1, Hyperscale executions only)
          type: number
          example: 0.34
        execution_components_total:
          description: The total number of execution components in this execution.
          type: integer
          format: int32
          example: 5
        execution_components_processed:
          description: The number of execution components processed so far in this execution.
          type: integer
          format: int32
          example: 3
        collection_execution_id:
          description: The id of the compliance job collection execution this execution is part of, if any
          type: string
          example: 54a0cbff-bdc6-49fd-8e71-e8b570524fe9
        data_collection_complete:
          description: Indicates whether all peripheral information associated with the execution, including execution components, execution events, logs and discovery results, has been fully collected and finalized.
          type: boolean
        owning_entity_id:
          description: The owning entity ID of the target connector.
          type: string
        owning_entity_type:
          description: The type of the owning entity, if any.
          type: string
          enum:
          - PAAS_INSTANCE
        hyperscale_engine_count:
          description: The number of hyperscale engines associated with this execution (Hyperscale executions only).
          type: integer
          format: int32
          example: 2
    DiscoveryResult:
      description: The result of sensitive data discovery on a single column or field
      type: object
      properties:
        id:
          description: The DCT local id of this discovery result
          type: string
          example: 1
        table_name:
          description: The name of the table to which the column belongs
          type: string
          example: cust_address
        file_name:
          description: The name of the file to which the discovery result applies
          type: string
          example: report.json
        column_name:
          description: The name the column to which the discovery result applies
          type: string
          example: ADDR_LINE_1
        field_name:
          description: The name the field to which the discovery result applies
          type: string
          example: customer name
        data_class_name:
          description: The data class selected for the column or field
          type: string
          example: FIRST_NAME
        algorithm_name:
          description: The name of the algorithm selected for the column or field
          type: string
          example: FIRST_NAME_SL
        data_type:
          description: The data type determined for the column or field
          type: string
          example: varchar
        confidence:
          description: The confidence of the discovery result, ranging from -100 to 100
          type: integer
          format: int32
          example: 85
        is_profiler_writable:
          description: Whether the corresponding ruleset column or field was configured to allow the discovery process to update the masking assignment
          type: boolean
    VirtualizationTaskEvent:
      deprecated: true
      properties:
        message_details:
          type: string
    ExecutionLog:
      description: A log containing warnings or errors associated with a job execution.
      allOf:
      - type: object
        properties:
          id:
            description: The ExecutionLog entity ID.
            type: string
            example: 1-LOG-1
          execution_id:
            description: The ID of the execution.
            type: string
            example: ea02f031-75d7-4c76-8747-2a7f04181451
          masking_job_id:
            description: The ID of the masking job that is being executed.
            type: string
            example: '2'
          status:
            $ref: '#/components/schemas/ExecutionStatus'
      - $ref: '#/components/schemas/ExecutionLogsDownloadProperties'
    Engine:
      properties:
        engine_id:
          type: string
          minLength: 1
          maxLength: 4000
        engine_name:
          type: string
          minLength: 1
          maxLength: 4000
    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
    JobTaskEvent:
      properties:
        message_details:
          type: string
    ExecutionComponent:
      description: An execution component associated with a job execution
      type: object
      properties:
        i

# --- truncated at 32 KB (54 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/delphix/refs/heads/main/openapi/delphix-executions-api-openapi.yml