Extole Report Schedules API

The Report Schedules API from Extole — 14 operation(s) for report schedules.

OpenAPI Specification

extole-report-schedules-api-openapi.yml Raw ↑
openapi: 3.0.1
info:
  description: 'Consumer-to-Extole integration endpoints: consumer event submission, zone rendering, profile management, and SDK-backing operations for browser and native app environments.'
  title: Integration API - Consumer to Extole Audiences Report Schedules API
  version: '1.0'
servers:
- description: Production
  url: https://{brand}.extole.io
  variables:
    brand:
      default: yourcompany
      description: Your Extole client subdomain (e.g. 'mycompany' for mycompany.extole.io)
security:
- HEADER: []
- QUERY: []
- COOKIE: []
tags:
- name: Report Schedules
paths:
  /v6/report-runners-tags:
    get:
      description: Returns all distinct tags applied to report runners for the calling client. Use these values with the `having_any_tags` or `having_all_tags` filter on `GET /v7/report-runners` to retrieve runners by tag.
      operationId: listReportRunnerTags
      parameters:
      - in: query
        name: having_any_tags
        schema:
          type: string
      - in: query
        name: exclude_having_any_tags
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  type: string
                type: array
          description: Successful response
        '400':
          content:
            application/json:
              examples:
                binding_error:
                  $ref: '#/components/examples/binding_error'
                invalid_json:
                  $ref: '#/components/examples/invalid_json'
                invalid_limit:
                  $ref: '#/components/examples/invalid_limit'
                invalid_offset:
                  $ref: '#/components/examples/invalid_offset'
                invalid_parameter:
                  $ref: '#/components/examples/invalid_parameter'
                max_fetch_size_1000:
                  $ref: '#/components/examples/max_fetch_size_1000'
                missing_request_body:
                  $ref: '#/components/examples/missing_request_body'
                report_runner_invalid_aggregation_status:
                  $ref: '#/components/examples/report_runner_invalid_aggregation_status'
                report_runner_invalid_pause_status:
                  $ref: '#/components/examples/report_runner_invalid_pause_status'
                report_runner_invalid_slot_type:
                  $ref: '#/components/examples/report_runner_invalid_slot_type'
                report_runner_invalid_status:
                  $ref: '#/components/examples/report_runner_invalid_status'
                report_runner_invalid_type:
                  $ref: '#/components/examples/report_runner_invalid_type'
              schema:
                $ref: '#/components/schemas/RestExceptionResponse'
          description: Bad Request
        '401':
          content:
            application/json:
              examples:
                method_unauthorized:
                  $ref: '#/components/examples/method_unauthorized'
              schema:
                $ref: '#/components/schemas/RestExceptionResponse'
          description: Unauthorized
        '402':
          content:
            application/json:
              examples:
                payment_required:
                  $ref: '#/components/examples/payment_required'
              schema:
                $ref: '#/components/schemas/RestExceptionResponse'
          description: Payment Required
        '403':
          content:
            application/json:
              examples:
                access_denied:
                  $ref: '#/components/examples/access_denied'
                method_unauthorized:
                  $ref: '#/components/examples/method_unauthorized'
                missing_access_token:
                  $ref: '#/components/examples/missing_access_token'
              schema:
                $ref: '#/components/schemas/RestExceptionResponse'
          description: Forbidden
        '415':
          content:
            application/json:
              examples:
                unsupported_media_type:
                  $ref: '#/components/examples/unsupported_media_type'
              schema:
                $ref: '#/components/schemas/RestExceptionResponse'
          description: Unsupported Media Type
        '429':
          content:
            application/json:
              examples:
                too_many_requests:
                  $ref: '#/components/examples/too_many_requests'
              schema:
                $ref: '#/components/schemas/RestExceptionResponse'
          description: Too Many Requests
      summary: List report runner tags
      tags:
      - Report Schedules
      x-extole-bundle: management-expert
      x-extole-visibility: expert
  /v6/report-runners/views/detailed:
    get:
      operationId: getReportRunners
      parameters:
      - in: query
        name: type
        schema:
          type: string
      - in: query
        name: report_type
        schema:
          type: string
      - in: query
        name: display_name
        schema:
          type: string
      - in: query
        name: user_ids
        schema:
          items:
            type: string
          type: array
          uniqueItems: true
      - in: query
        name: having_any_tags
        schema:
          type: string
      - in: query
        name: having_all_tags
        schema:
          type: string
      - in: query
        name: exclude_having_any_tags
        schema:
          type: string
      - in: query
        name: exclude_having_all_tags
        schema:
          type: string
      - in: query
        name: search_query
        schema:
          type: string
      - in: query
        name: pause_status
        schema:
          type: string
      - in: query
        name: aggregation_status
        schema:
          type: string
      - in: query
        name: offset
        schema:
          type: string
      - in: query
        name: limit
        schema:
          type: string
      - in: query
        name: order_by
        schema:
          type: string
      - in: query
        name: order
        schema:
          type: string
      - in: query
        name: report_type_name
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/ReportRunnerViewResponse'
                type: array
          description: Successful response
        '400':
          content:
            application/json:
              examples:
                binding_error:
                  $ref: '#/components/examples/binding_error'
                invalid_json:
                  $ref: '#/components/examples/invalid_json'
                invalid_limit:
                  $ref: '#/components/examples/invalid_limit'
                invalid_offset:
                  $ref: '#/components/examples/invalid_offset'
                invalid_parameter:
                  $ref: '#/components/examples/invalid_parameter'
                max_fetch_size_1000:
                  $ref: '#/components/examples/max_fetch_size_1000'
                missing_request_body:
                  $ref: '#/components/examples/missing_request_body'
                report_runner_invalid_aggregation_status:
                  $ref: '#/components/examples/report_runner_invalid_aggregation_status'
                report_runner_invalid_pause_status:
                  $ref: '#/components/examples/report_runner_invalid_pause_status'
                report_runner_invalid_slot_type:
                  $ref: '#/components/examples/report_runner_invalid_slot_type'
                report_runner_invalid_status:
                  $ref: '#/components/examples/report_runner_invalid_status'
                report_runner_invalid_type:
                  $ref: '#/components/examples/report_runner_invalid_type'
              schema:
                $ref: '#/components/schemas/RestExceptionResponse'
          description: Bad Request
        '401':
          content:
            application/json:
              examples:
                method_unauthorized:
                  $ref: '#/components/examples/method_unauthorized'
              schema:
                $ref: '#/components/schemas/RestExceptionResponse'
          description: Unauthorized
        '402':
          content:
            application/json:
              examples:
                payment_required:
                  $ref: '#/components/examples/payment_required'
              schema:
                $ref: '#/components/schemas/RestExceptionResponse'
          description: Payment Required
        '403':
          content:
            application/json:
              examples:
                access_denied:
                  $ref: '#/components/examples/access_denied'
                method_unauthorized:
                  $ref: '#/components/examples/method_unauthorized'
                missing_access_token:
                  $ref: '#/components/examples/missing_access_token'
              schema:
                $ref: '#/components/schemas/RestExceptionResponse'
          description: Forbidden
        '415':
          content:
            application/json:
              examples:
                unsupported_media_type:
                  $ref: '#/components/examples/unsupported_media_type'
              schema:
                $ref: '#/components/schemas/RestExceptionResponse'
          description: Unsupported Media Type
        '429':
          content:
            application/json:
              examples:
                too_many_requests:
                  $ref: '#/components/examples/too_many_requests'
              schema:
                $ref: '#/components/schemas/RestExceptionResponse'
          description: Too Many Requests
      summary: Gets a filtered list of report runner views
      tags:
      - Report Schedules
      x-extole-bundle: management-expert
      x-extole-visibility: expert
  /v6/report-runners/{reportRunnerId}/accumulating-reports:
    get:
      operationId: getAccumulatingReports
      parameters:
      - description: The Extole unique report runner identifier.
        in: path
        name: reportRunnerId
        required: true
        schema:
          type: string
      - description: 'Optional filter for statuses, will return reports that have one of the specified values. Valid values: PENDING, IN_PROGRESS, DONE, FAILED, CANCELED, SFTP_DELIVERY_FAILED, EXPIRED'
        in: query
        name: statuses
        schema:
          nullable: true
          type: string
      - description: Optional filter for offset, defaults to 0.
        in: query
        name: offset
        schema:
          nullable: true
          type: string
      - description: Optional filter for limit, defaults to 100.
        in: query
        name: limit
        schema:
          nullable: true
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/ReportResponse'
                type: array
          description: Successful response
        '400':
          content:
            application/json:
              examples:
                binding_error:
                  $ref: '#/components/examples/binding_error'
                invalid_json:
                  $ref: '#/components/examples/invalid_json'
                invalid_limit:
                  $ref: '#/components/examples/invalid_limit'
                invalid_offset:
                  $ref: '#/components/examples/invalid_offset'
                invalid_parameter:
                  $ref: '#/components/examples/invalid_parameter'
                max_fetch_size_1000:
                  $ref: '#/components/examples/max_fetch_size_1000'
                missing_request_body:
                  $ref: '#/components/examples/missing_request_body'
                report_runner_invalid_aggregation_status:
                  $ref: '#/components/examples/report_runner_invalid_aggregation_status'
                report_runner_invalid_pause_status:
                  $ref: '#/components/examples/report_runner_invalid_pause_status'
                report_runner_invalid_slot_type:
                  $ref: '#/components/examples/report_runner_invalid_slot_type'
                report_runner_invalid_status:
                  $ref: '#/components/examples/report_runner_invalid_status'
                report_runner_invalid_type:
                  $ref: '#/components/examples/report_runner_invalid_type'
              schema:
                $ref: '#/components/schemas/RestExceptionResponse'
          description: Bad Request
        '401':
          content:
            application/json:
              examples:
                method_unauthorized:
                  $ref: '#/components/examples/method_unauthorized'
              schema:
                $ref: '#/components/schemas/RestExceptionResponse'
          description: Unauthorized
        '402':
          content:
            application/json:
              examples:
                payment_required:
                  $ref: '#/components/examples/payment_required'
              schema:
                $ref: '#/components/schemas/RestExceptionResponse'
          description: Payment Required
        '403':
          content:
            application/json:
              examples:
                access_denied:
                  $ref: '#/components/examples/access_denied'
                method_unauthorized:
                  $ref: '#/components/examples/method_unauthorized'
                missing_access_token:
                  $ref: '#/components/examples/missing_access_token'
              schema:
                $ref: '#/components/schemas/RestExceptionResponse'
          description: Forbidden
        '415':
          content:
            application/json:
              examples:
                unsupported_media_type:
                  $ref: '#/components/examples/unsupported_media_type'
              schema:
                $ref: '#/components/schemas/RestExceptionResponse'
          description: Unsupported Media Type
        '429':
          content:
            application/json:
              examples:
                too_many_requests:
                  $ref: '#/components/examples/too_many_requests'
              schema:
                $ref: '#/components/schemas/RestExceptionResponse'
          description: Too Many Requests
      summary: Gets a list of accumulating reports
      tags:
      - Report Schedules
      x-extole-bundle: management-expert
      x-extole-visibility: expert
  /v6/report-runners/{reportRunnerId}/latest:
    get:
      description: Returns the most recent completed report produced by the specified report runner.
      operationId: getLatestReportForRunner
      parameters:
      - in: path
        name: reportRunnerId
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ReportResponse'
          description: Successful response
        '400':
          content:
            application/json:
              examples:
                binding_error:
                  $ref: '#/components/examples/binding_error'
                invalid_json:
                  $ref: '#/components/examples/invalid_json'
                invalid_parameter:
                  $ref: '#/components/examples/invalid_parameter'
                missing_request_body:
                  $ref: '#/components/examples/missing_request_body'
              schema:
                $ref: '#/components/schemas/RestExceptionResponse'
          description: Bad Request
        '401':
          content:
            application/json:
              examples:
                method_unauthorized:
                  $ref: '#/components/examples/method_unauthorized'
              schema:
                $ref: '#/components/schemas/RestExceptionResponse'
          description: Unauthorized
        '402':
          content:
            application/json:
              examples:
                payment_required:
                  $ref: '#/components/examples/payment_required'
              schema:
                $ref: '#/components/schemas/RestExceptionResponse'
          description: Payment Required
        '403':
          content:
            application/json:
              examples:
                access_denied:
                  $ref: '#/components/examples/access_denied'
                method_unauthorized:
                  $ref: '#/components/examples/method_unauthorized'
                missing_access_token:
                  $ref: '#/components/examples/missing_access_token'
              schema:
                $ref: '#/components/schemas/RestExceptionResponse'
          description: Forbidden
        '415':
          content:
            application/json:
              examples:
                unsupported_media_type:
                  $ref: '#/components/examples/unsupported_media_type'
              schema:
                $ref: '#/components/schemas/RestExceptionResponse'
          description: Unsupported Media Type
        '429':
          content:
            application/json:
              examples:
                too_many_requests:
                  $ref: '#/components/examples/too_many_requests'
              schema:
                $ref: '#/components/schemas/RestExceptionResponse'
          description: Too Many Requests
      summary: Get the latest report for a report runner
      tags:
      - Report Schedules
      x-extole-bundle: management-expert
      x-extole-visibility: expert
  /v6/report-runners/{reportRunnerId}/latest/download{format}:
    get:
      description: Downloads the output of the most recent completed report produced by the specified report runner. Append a format extension to select the download format.
      operationId: downloadLatestReportForRunner
      parameters:
      - in: header
        name: Content-Type
        schema:
          type: string
      - in: path
        name: format
        required: true
        schema:
          nullable: true
          pattern: (\.csv|\.json|\.jsonl|\.xlsx|\.psv|\.headless_csv|\.headless_psv)?
          type: string
      - in: path
        name: reportRunnerId
        required: true
        schema:
          type: string
      - in: query
        name: limit
        schema:
          nullable: true
          type: string
      - in: query
        name: offset
        schema:
          nullable: true
          type: string
      - in: query
        name: filename
        schema:
          nullable: true
          type: string
      responses:
        '200':
          content:
            '*/*': {}
          description: Successful response
        '400':
          content:
            application/json:
              examples:
                binding_error:
                  $ref: '#/components/examples/binding_error'
                invalid_json:
                  $ref: '#/components/examples/invalid_json'
                invalid_limit:
                  $ref: '#/components/examples/invalid_limit'
                invalid_offset:
                  $ref: '#/components/examples/invalid_offset'
                invalid_parameter:
                  $ref: '#/components/examples/invalid_parameter'
                max_fetch_size_1000:
                  $ref: '#/components/examples/max_fetch_size_1000'
                missing_request_body:
                  $ref: '#/components/examples/missing_request_body'
                report_content_by_tags_not_found:
                  $ref: '#/components/examples/report_content_by_tags_not_found'
                report_content_format_by_tags_not_found:
                  $ref: '#/components/examples/report_content_format_by_tags_not_found'
                report_content_format_not_found:
                  $ref: '#/components/examples/report_content_format_not_found'
                report_content_not_found:
                  $ref: '#/components/examples/report_content_not_found'
                report_content_not_supported:
                  $ref: '#/components/examples/report_content_not_supported'
                report_filter_missing:
                  $ref: '#/components/examples/report_filter_missing'
                report_not_found:
                  $ref: '#/components/examples/report_not_found'
                report_preview_not_available:
                  $ref: '#/components/examples/report_preview_not_available'
              schema:
                $ref: '#/components/schemas/RestExceptionResponse'
          description: Bad Request
        '401':
          content:
            application/json:
              examples:
                method_unauthorized:
                  $ref: '#/components/examples/method_unauthorized'
              schema:
                $ref: '#/components/schemas/RestExceptionResponse'
          description: Unauthorized
        '402':
          content:
            application/json:
              examples:
                payment_required:
                  $ref: '#/components/examples/payment_required'
              schema:
                $ref: '#/components/schemas/RestExceptionResponse'
          description: Payment Required
        '403':
          content:
            application/json:
              examples:
                access_denied:
                  $ref: '#/components/examples/access_denied'
                method_unauthorized:
                  $ref: '#/components/examples/method_unauthorized'
                missing_access_token:
                  $ref: '#/components/examples/missing_access_token'
              schema:
                $ref: '#/components/schemas/RestExceptionResponse'
          description: Forbidden
        '415':
          content:
            application/json:
              examples:
                unsupported_media_type:
                  $ref: '#/components/examples/unsupported_media_type'
              schema:
                $ref: '#/components/schemas/RestExceptionResponse'
          description: Unsupported Media Type
        '429':
          content:
            application/json:
              examples:
                too_many_requests:
                  $ref: '#/components/examples/too_many_requests'
              schema:
                $ref: '#/components/schemas/RestExceptionResponse'
          description: Too Many Requests
      summary: Download the latest report for a report runner
      tags:
      - Report Schedules
      x-extole-bundle: management-expert
      x-extole-visibility: expert
  /v6/report-runners/{reportRunnerId}/reports:
    get:
      operationId: getReports
      parameters:
      - description: The Extole unique report runner identifier.
        in: path
        name: reportRunnerId
        required: true
        schema:
          type: string
      - description: 'Optional filter for types, will return reports that have one of the specified values. Valid values: EXECUTED, NOT_EXECUTED, ROLLING, INDIVIDUAL, EMPTY_SLOT, ACCUMULATING'
        in: query
        name: types
        schema:
          nullable: true
          type: string
      - description: 'Optional filter for statuses, will return reports that have one of the specified values. Valid values: PENDING, IN_PROGRESS, DONE, FAILED, CANCELED, SFTP_DELIVERY_FAILED, EXPIRED'
        in: query
        name: statuses
        schema:
          nullable: true
          type: string
      - description: Optional filter for offset, defaults to 0.
        in: query
        name: offset
        schema:
          nullable: true
          type: string
      - description: Optional filter for limit, defaults to 100.
        in: query
        name: limit
        schema:
          nullable: true
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/BaseReportRunnerReportResponse'
                type: array
          description: Successful response
        '400':
          content:
            application/json:
              examples:
                binding_error:
                  $ref: '#/components/examples/binding_error'
                invalid_json:
                  $ref: '#/components/examples/invalid_json'
                invalid_limit:
                  $ref: '#/components/examples/invalid_limit'
                invalid_offset:
                  $ref: '#/components/examples/invalid_offset'
                invalid_parameter:
                  $ref: '#/components/examples/invalid_parameter'
                max_fetch_size_1000:
                  $ref: '#/components/examples/max_fetch_size_1000'
                missing_request_body:
                  $ref: '#/components/examples/missing_request_body'
                report_runner_invalid_aggregation_status:
                  $ref: '#/components/examples/report_runner_invalid_aggregation_status'
                report_runner_invalid_pause_status:
                  $ref: '#/components/examples/report_runner_invalid_pause_status'
                report_runner_invalid_slot_type:
                  $ref: '#/components/examples/report_runner_invalid_slot_type'
                report_runner_invalid_status:
                  $ref: '#/components/examples/report_runner_invalid_status'
                report_runner_invalid_type:
                  $ref: '#/components/examples/report_runner_invalid_type'
              schema:
                $ref: '#/components/schemas/RestExceptionResponse'
          description: Bad Request
        '401':
          content:
            application/json:
              examples:
                method_unauthorized:
                  $ref: '#/components/examples/method_unauthorized'
              schema:
                $ref: '#/components/schemas/RestExceptionResponse'
          description: Unauthorized
        '402':
          content:
            application/json:
              examples:
                payment_required:
                  $ref: '#/components/examples/payment_required'
              schema:
                $ref: '#/components/schemas/RestExceptionResponse'
          description: Payment Required
        '403':
          content:
            application/json:
              examples:
                access_denied:
                  $ref: '#/components/examples/access_denied'
                method_unauthorized:
                  $ref: '#/components/examples/method_unauthorized'
                missing_access_token:
                  $ref: '#/components/examples/missing_access_token'
              schema:
                $ref: '#/components/schemas/RestExceptionResponse'
          description: Forbidden
        '415':
          content:
            application/json:
              examples:
                unsupported_media_type:
                  $ref: '#/components/examples/unsupported_media_type'
              schema:
                $ref: '#/components/schemas/RestExceptionResponse'
          description: Unsupported Media Type
        '429':
          content:
            application/json:
              examples:
                too_many_requests:
                  $ref: '#/components/examples/too_many_requests'
              schema:
                $ref: '#/components/schemas/RestExceptionResponse'
          description: Too Many Requests
      summary: Gets a filtered list of reports executed by the report runner.Results are sorted by schedule date in descending order.
      tags:
      - Report Schedules
      x-extole-bundle: management-expert
      x-extole-visibility: expert
  /v6/report-runners/{reportRunnerId}/views/detailed:
    get:
      operationId: getReportRunner
      parameters:
      - description: The Extole unique report runner identifier.
        in: path
        name: reportRunnerId
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ReportRunnerViewResponse'
          description: Successful response
        '400':
          content:
            application/json:
              examples:
                binding_error:
                  $ref: '#/components/examples/binding_error'
                invalid_json:
                  $ref: '#/components/examples/invalid_json'
                invalid_parameter:
                  $ref: '#/components/examples/invalid_parameter'
                missing_request_body:
                  $ref: '#/components/examples/missing_request_body'
              schema:
                $ref: '#/components/schemas/RestExceptionResponse'
          description: Bad Request
        '401':
          content:
            application/json:
              examples:
                method_unauthorized:
                  $ref: '#/components/examples/method_unauthorized'
              schema:
                $ref: '#/components/schemas/RestExceptionResponse'
          description: Unauthorized
        '402':
          content:
            application/json:
              examples:
                payment_required:
                  $ref: '#/components/examples/payment_required'
              schema:
                $ref: '#/components/schemas/RestExceptionResponse'
          description: Payment Required
        '403':
          content:
            application/json:
              examples:
                access_denied:
                  $ref: '#/components/examples/access_denied'
                method_unauthorized:
                  $ref: '#/components/examples/method_unauthorized'
                missing_access_token:
                  $ref: '#/components/examples/missing_access_token'
              schema:
                $ref: '#/components/schemas/RestExceptionResponse'
          description: Forbidden
        '415':
          content:
            application/json:
              examples:
                unsupported_media_type:
                  $ref: '#/components/examples/unsupported_media_type'
              schema:
                $ref: '#/components/schemas/RestExceptionResponse'
          description: Unsupported Media Type
        '429':
          content:
            application/json:
              examples:
                too_many_requests:
                  $ref: '#/components/examples/too_many_requests'
              schema:
                $ref: '#/components/schemas/RestExceptionResponse'
          description: Too Many Requests
      summary: Get report runner view for the specified id.
      tags:
      - Report Schedules
      x-extole-bundle: management-expert
      x-extole-visibility: expert
  /v6/report-runners/scheduled/{reportRunnerId}/generate-missing-reports:
    post:
      description: Triggers generation of any missing report slots for the specified scheduled report runner, up to the optional limit.
      operationId: generateMissingReports
      parameters:
      - description: The Extole unique report runner identifier.
        in: path
        name: reportRunnerId
        required: true
        schema:
          type: string
      - in: query
        name: slot
        schema:
          $ref: '#/components/schemas/ZonedDateTime'
      - in: query
        name: limit
        schema:
          format: int32
          type: integer
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/ReportResponse'
                type: array
          description: Successful response
        '400':
          content:
            application/json:
              examples:
                binding_error:
                  $ref: '#/components/examples/binding_error'
                invalid_json:
                  $ref: '#/components/examples/invalid_json'
                invalid_parameter:
                  $ref: '#/components/examples/invalid_parameter'
                missing_request_body:
                  $ref: '#/components/examples/missing_request_body'
                report_runner_invalid_aggregation_status:
                  $ref: '#/components/examples/report_runner_invalid_aggregation_status'
                report_runner_invalid_parameter:
                  $ref: '#/components/examples/repor

# --- truncated at 32 KB (134 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/extole/refs/heads/main/openapi/extole-report-schedules-api-openapi.yml