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/report_runner_invalid_parameter' report_runner_invalid_pause_status: $ref: '#/components/examples/report_runner_invalid_pause_status' report_runner_invalid_slot: $ref: '#/components/examples/report_runner_invalid_slot' 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' report_runner_no_execution_time_range: $ref: '#/components/examples/report_runner_no_execution_time_range' report_runner_paused: $ref: '#/components/examples/report_runner_paused' report_runner_slots_not_supported: $ref: '#/components/examples/report_runner_slots_not_supported' report_runner_wrong_type: $ref: '#/components/examples/report_runner_wrong_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: Generate missing reports for a scheduled report runner tags: - Report Schedules x-extole-bundle: management-expert x-extole-visibility: expert /v6/report-runners/{reportRunnerId}/run: post: operationId: run_2 parameters: - description: The Extole unique report runner identifier. in: path name: reportRunnerId required: true schema: type: string requestBody: content: application/json: example: slot: slot schema: $ref: '#/components/schemas/ReportRunnerSlotsRequest' responses: '200': content: application/json: schema: $ref: '#/components/schemas/BaseReportRunnerReportResponse' 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_display_name_empty: $ref: '#/components/examples/report_display_name_empty' report_display_name_too_long: $ref: '#/components/examples/report_display_name_too_long' report_invalid_formats: $ref: '#/components/examples/report_invalid_formats' report_invalid_operation: $ref: '#/components/examples/report_invalid_operation' report_invalid_parameter: $ref: '#/components/examples/report_invalid_parameter' report_invalid_scopes: $ref: '#/components/examples/report_invalid_scopes' report_invalid_sftp_server: $ref: '#/components/examples/report_invalid_sftp_server' report_missing_aggregation_parameter: $ref: '#/components/examples/report_missing_aggregation_parameter' report_missing_parameters: $ref: '#/components/examples/report_missing_parameters' report_name_illegal_character: $ref: '#/components/examples/report_name_illegal_character' report_runner_invalid_parameter: $ref: '#/components/examples/report_runner_invalid_parameter' report_runner_invalid_slot: $ref: '#/components/examples/report_runner_invalid_slot' report_runner_no_execution_time_range: $ref: '#/components/examples/report_runner_no_execution_time_range' report_runner_paused: $ref: '#/components/examples/report_runner_paused' report_runner_slots_not_supported: $ref: '#/components/examples/report_runner_slots_not_supported' report_tags_too_long: $ref: '#/components/examples/report_tags_too_long' report_type_missing: $ref: '#/components/examples/report_type_missing' report_update_invalid: $ref: '#/components/examples/report_update_invalid' 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: Execute report runner for the specified id. Will return existing report if there is any currently in progress or generate a new one otherwise. tags: - Report Schedules x-extole-bundle: management-expert x-extole-visibility: expert /v6/report-runners/scheduled/{reportRunnerId}/reports: delete: operationId: deleteReports 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' 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_parameter: $ref: '#/components/examples/report_runner_invalid_parameter' report_runner_invalid_slot: $ref: '#/components/examples/report_runner_invalid_slot' report_runner_no_execution_time_range: $ref: '#/components/examples/report_runner_no_execution_time_range' report_runner_paused: $ref: '#/components/examples/report_runner_paused' report_runner_slots_not_supported: $ref: '#/components/examples/report_runner_slots_not_supported' 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: Delete reports belonging to the specified report runner id tags: - Report Schedules x-extole-bundle: management-expert x-extole-visibility: expert /v7/report-runners: get: description: Returns report runners for the calling client, filtered and ordered by the supplied query parameters. Report runners are scheduled report execution definitions that run a report type on a recurring schedule and deliver output to a configured destination (e.g. SFTP). Use `GET /v7/report-runners/template` to retrieve the available runner templates. operationId: listReportRunners 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/ReportRunnerResponse' 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 runners tags: - Report Schedules x-extole-bundle: management x-extole-visibility: visible post: description: Creates a new report runner definition and schedules it for execution. Returns the persisted report runner with its server-assigned id. The runner begins executing on its first scheduled interval after creation. operationId: createReportRunner requestBody: content: application/json: example: component_ids: - component_id component_references: - component_id: component_id socket_names: - socket_name deliver_empty_reports_to_sftp: true enabled: true execution_policy: AWAIT_DATA expiration_ms: 1 formats: - CSV merging_configuration: deliverable_type: deliverable_type formats: - CSV sort_by: - sort_by unique_by: - unique_by name: name parameters: parameters_key: parameters_key pause_info: description: description paused: true report_name_pattern: report_name_pattern report_type: report_type scopes: - CLIENT_ADMIN sftp_report_name_pattern: sftp_report_name_pattern sftp_server_id: sftp_server_id tags: - tag type: REFRESHING schema: $ref: '#/components/schemas/ReportRunnerCreateRequest' responses: '200': content: application/json: schema: $ref: '#/components/schemas/ReportRunnerResponse' description: Created report runner. '400': content: application/json: examples: report_runner_frequency_missing: $ref: '#/components/examples/report_runner_frequency_missing' report_runner_missing_parameters: $ref: '#/components/examples/report_runner_missing_parameters' report_runner_name_exists: $ref: '#/components/examples/report_runner_name_exists' report_runner_name_missing: $ref: '#/components/examples/report_runner_name_missing' report_runner_start_date_missing: $ref: '#/components/examples/report_runner_start_date_missing' report_runner_type_field_missing: $ref: '#/components/examples/report_runner_type_field_missing' report_runner_type_not_found: $ref: '#/components/examples/report_runner_type_not_found' schema: $ref: '#/components/schemas/RestExceptionResponse' description: Validation failed. The named examples below cover this operation's most common rejections; other 400 causes are auto-derived from the request body - inspect the response `code` field for the specific error. '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: Create a report runner tags: - Report Schedules x-extole-bundle: management x-extole-visibility: visible /v7/report-runners/template: get: description: Returns the available report runner templates for the calling client. Templates are pre-configured runner definitions that can be duplicated via `POST /v7/report-runners/{id}/duplicate` to create new runners with minimal configuration. operationId: listReportRunnerTemplates responses: '200': content: application/json: schema: items: $ref: '#/components/schemas/ReportRunnerResponse' 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' 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 templates tags: - Report Schedules x-extole-bundle: management x-extole-visibility: visible /v7/report-runners/{reportRunnerId}: get: description: Returns the full report runner definition for the supplied id, including its schedule, report type, parameters, formats, and delivery configuration. Returns `404 report_runner_not_found` if the id does not exist. 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/ReportRunnerResponse' description: Report runner. '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 '404': content: application/json: examples: report_runner_not_found: $ref: '#/components/examples/report_runner_not_found' description: Report runner was not found. The supplied id does not match any report runner accessible to the calling client. '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 a report runner tags: - Report Schedules x-extole-bundle: management x-extole-visibility: visible put: description: Applies a partial update to the supplied report runner. Only the fields present in the body are changed; omitted fields are left intact. Returns the persisted report runner after the update. Returns `404 report_runner_not_found` if the id does not exist. Locked runners (`report_runner_locked`) must be updated via deployment tooling. operationId: updateReportRunner parameters: - description: The Extole unique report runner identifier. in: path name: reportRunnerId required: true schema: type: string requestBody: content: application/json: example: component_ids: - component_id component_references: - component_id: component_id socket_names: - socket_name deliver_empty_reports_to_sftp: true enabled: true execution_policy: AWAIT_DATA expiration_ms: 1 formats: - CSV merging_configuration: deliverable_type: deliverable_type formats: - CSV sort_by: - sort_by unique_by: - unique_by name: name parameters: parameters_key: parameters_key pause_info: description: description paused: true report_name_pattern: report_name_pattern report_type: report_type scopes: - CLIENT_ADMIN sftp_report_name_pattern: sftp_report_name_pattern sftp_server_id: sftp_server_id tags: - tag type: REFRESHING schema: $ref: '#/components/schemas/ReportRunnerUpdateRequest' responses: '200': content: application/json: schema: $ref: '#/components/schemas/ReportRunnerResponse' description: Updated report runner. '400': content: application/json: examples: report_runner_invalid_formats: $ref: '#/components/examples/report_runner_invalid_formats' report_runner_locked: $ref: '#/components/examples/report_runner_locked' report_runner_name_exists: $ref: '#/components/examples/report_runner_name_exists' schema: $ref: '#/components/schemas/RestExceptionResponse' description: Validation failed. The named examples below cover this operation's most common rejections; other 400 causes are auto-derived from the request body - inspect the response `code` field for the specific error. '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 '404': content: application/json: examples: report_runner_not_found: $ref: '#/components/examples/report_runner_not_found' description: Report runner was not found. The supplied id does not match any report runner accessible to the calling client. '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: Update a report runner tags: - Report Schedules x-extole-bundle: management x-extole-visibility: visible delete: description: Permanently deletes the supplied report runner and cancels all pending executions. Returns the deleted record on success. Returns `404 report_runner_not_found` if the id does not exist. Locked runners cannot be deleted via the REST API. operationId: deleteReportRunner 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/ReportRunnerResponse' description: Deleted report runner. '400': content: application/json: examples: report_runner_locked: $ref: '#/components/examples/report_runner_locked' schema: $ref: '#/components/schemas/RestExceptionResponse' description: Validation failed. The named examples below cover this operation's most common rejections; other 400 causes are auto-derived from the request body - inspect the response `code` field for the specific error. '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 '404': content: application/json: examples: report_runner_not_found: $ref: '#/components/examples/report_runner_not_found' description: Report runner was not found. The supplied id does not match any report runner accessible to the calling client. '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: Delete a report runner tags: - Report Schedules x-extole-bundle: management x-extole-visibility: visible /v7/report-runners/{reportRunnerId}/duplicate: post: description: Creates a new report runner by duplicating the supplied one. The body provides the overrides to apply to the copy; fields absent from the body are copied from the source. Set `allow_duplicate=true` to allow creating a runner with the same name as an existing one. Returns the new report runner. operationId: duplicateReportRunner parameters: - in: path name: reportRunnerId required: true schema: type: string - in: query name: allow_duplicate schema: nullable: true type: boolean requestBody: content: application/json: example: component_ids: - component_id component_references: - component_id: component_id socket_names: - socket_name deliver_empty_reports_to_sftp: true enabled: true execution_policy: AWAIT_DATA expiration_ms: 1 formats: - CSV merging_configuration: deliverable_type: deliverable_type formats: - CSV sort_by: - sort_by unique_by: - unique_by name: name parameters: parameters_key: parameters_key pause_info: description: description paused: true report_name_pattern: report_name_pattern report_type: report_type scopes: - CLIENT_ADMIN sftp_report_name_pattern: sftp_report_name_pattern sftp_server_id: sftp_server_id tags: - tag type: REFRESHING schema: $ref: '#/components/schemas/ReportRunnerUpdateRequest' responses: '200': content: application/json: schema: $ref: '#/components/schemas/ReportRunnerResponse' description: Duplicated report runner. '400': content: application/json: examples: report_runner_name_exists: $ref: '#/components/examples/report_runner_name_exists' schema: $ref: '#/components/schemas/RestExceptionResponse' description: Validation failed. The named examples below cover this operation's most common rejections; other 400 causes are auto-derived from the request body - inspect the response `code` field for the specific error. '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 '404': content: application/json: examples: report_runner_not_found: $ref: '#/components/examples/report_runner_not_found' description: Report runner was not found. The supplied id does not match any report runner accessible to the calling client. '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: Duplicate a report runner tags: - Report Schedules x-extole-bundle: management x-extole-visibility: visible components: schemas: PauseInfoResponse: properties: description: type: string updated_date: $ref: '#/components/schemas/Instant' user_id: type: string type: object ReportParameterDetailsResponse: properties: category: nullable: true type: string display_name: type: string is_required: type: boolean name: type: string order: format: int32 type: integer type: $ref: '#/components/schemas/ReportParameterTypeResponse' type: object ReportParameterResponse: properties: details: $ref: '#/components/schemas/ReportParameterDetailsResponse' value: type: string type: object RefreshingReportRunnerUpdateRequest: allOf: - $ref: '#/components/schemas/ReportRunnerUpdateRequestBase' - properties: deliver_empty_reports_to_sftp: nullable: true type: boolean expiration_ms: format: int64 type: integer merging_configuration: $ref: '#/components/schemas/MergingConfigurationRequest' pause_info: $ref: '#/components/schemas/PauseInfoRequest' sftp_server_id: nullable: true type: string type: enum: - REFRESHING type: string type: object required: - type type: object SftpReportNamePatternInReportRunnerCreateRequestBase: description: Choose between static or dynamic sftp report name pattern oneOf: - allOf: - type: string - not: anyOf: - pattern: ^handlebars@runtime:.* type: string - pattern: ^javascript@runtime:.* type: string type: string description: Static sftp report name pattern title: Static Value - description: Handlebars expression with [ReportRunnerExecutionContext](https://github.com/extole/extole-specification/blob/main/openapi/expression-context/com/extole/api/report_runner/ReportRunnerExecutionContext.d.ts). example: handlebars@runtime:{{sftpReportNamePattern}} externalDocs: description: ReportRunnerExecutionContext url: https://github.com/extole/extole-specification/blob/main/openapi/expression-context/com/extole/api/report_runner/ReportRunnerExecutionContext.d.ts pattern: ^handlebars@runtime:.* title: Runtime - Handlebars type: string - description: Javascript expression with [ReportRunnerExecutionContext](https://github.com/extole/extole-specification/blob/main/openapi/expression-context/com/extole/api/report_runner/ReportRunnerExecutionContext.d.ts). example: javascript@runtime:function() { return context.get('sftpReportNamePattern');} externalDocs: description: ReportRunnerExecutionContext url: https://github.com/extole/extole-specification/blob/main/openapi/expression-context/com/extole/api/report_runner/ReportRunnerExecutionContext.d.ts pattern: ^javascript@runtime:.* title: Runtime - Javascript type: string IndividualReportRunnerReportResponse: allOf: - $ref: '#/components/schemas/BaseReportRunnerReportResponseBase' - properties: completed_date: $ref: '#/components/schemas/ZonedDateTime' created_date: $ref: '#/components/schemas/ZonedDateTime' download_uri: nullable: true type: string error_code: nullable: true type: string executor_type: enum: - DASHBOARD - SPARK - SQL type: string format: enum: - CSV - HEADLESS_CSV - HEADLESS_PSV - JSON - JSONL - PSV - XLSX type: string formats: items: enum: - CSV - HEADLESS_CSV - HEADLESS_PSV - JSON - JSONL - PSV - XLSX type: string type: array report_id: type: string scopes: items: enum: - CLIENT_ADMIN - CLIENT_SUPERUSER - CONSUMER_PUBLIC type: string nullable: true type: array uniqueItems: true sftp_report_name: nullable: true type: string sftp_server_id: nullable: true type: string started_date: $ref: '#/components/schemas/ZonedDateTime' status: enum: - CANCELED - DONE - EXPIRED - FAILED - IN_PROGRESS - PENDING - PENDING_DATA - SFTP_DELIVERY_FAILED type: string type: enum: - EXECUTED type: string user_id: type: string visible: type: boolean type: object required: - completed_date - created_date - display_name - download_uri - error_code - executor_type - format - formats - name - parameters - report_id - report_type - scopes - sftp_report_name - sftp_server_id - slot - started_date - status - tags - type - user_id - visible type: object ReportRunnerCreateRequestBase: properties: component_ids: items: type: string type: array component_references: items: $ref: '#/components/schemas/ComponentReferenceRequest' type: array deliver_empty_reports_to_sftp: nullable: true type: boolean enabled: type: boolean execution_policy: enum: - AWAIT_DATA - IMMEDIATE type: string formats: items: enum: - CSV - HEADLESS_CSV - HEADLESS_PSV - JSON - JSONL - PSV - XLSX type: string type: array merging_configuration: $ref: '#/components/schemas/MergingConfigurationRequest' name: type: string parameters: additionalProperties: type: string type: object pause_info: $ref: '#/components/schemas/PauseInfoRequest' report_name_pattern: $ref: '#/components/schemas/ReportNamePatternInReportRunnerCreateRequestBase' report_type: type: string scopes: items: enum: - CLIENT_ADMIN - CLIENT_SUPERUSER - CONSUMER_PUBLIC type: string type: array uniqueItems: true sftp_report_name_pattern: $ref: '#/components/schemas/SftpReportNamePatternInReportRunnerCreateRequestBase' sftp_server_id: nullable: true type: string tags: items: type: string type: array uniqueItems: true type: enum: - REFRESHING - SCHEDULED type: string type: object ReportRunnerSlotsRequest: properties: slot: type: string required: - slot type: object PauseInfoRequest: properties: description: nullable: true type: string paused: type: boolean type: object ReportRunnerViewResponse: discriminator: mapping: REFRESHING: '#/components/schemas/RefreshingReportRunnerViewResponse' SCHEDULED: '#/components/schemas/ScheduledReportRunnerViewResponse' propertyName: type oneOf: - $ref: '#/components/schemas/RefreshingReportRunnerViewResponse' - $ref: '#/components/schemas/ScheduledReportRunnerViewResponse' required: - created_date - execution_policy - formats - id - merging_configuration - name - next_execution_date - parameters - paused - report_type_name - scopes - sftp_server_id - tags - type - updated_date - user_id ScheduledReportRunnerCreateRequest: allOf: - $ref: '#/components/schemas/ReportRunnerCreateRequestBase' - properties: deliver_empty_reports_to_sftp: nullable: true type: boolean frequency: enum: - DAILY - HOURLY - LOGIN - MONTHLY - QUARTERLY - WEEKLY type: string legacy_sftp_report_name_format: type: boolean merging_configuration: $ref: '#/components/schemas/MergingConfigurationRequest' pause_info: $ref: '#/components/schemas/PauseInfoRequest' schedule_start_date: $ref: '#/components/schemas/ZonedDateTime' sftp_server_id: nullable: true type: string type: enum: - SCHEDULED type: string type: object required: - name - report_type - schedule_start_date - type type: object ReportRunnerCreateRequest: description: Body of a `POST /v7/report-runners` request. discriminator: mapping: REFRESHING: '#/components/schemas/RefreshingReportRunnerCreateRequest' SCHEDULED: '#/components/schemas/ScheduledReportRunnerCreateRequest' propertyName: type oneOf: - $ref: '#/components/schemas/RefreshingReportRunnerCreateRequest' - $ref: '#/components/schemas/ScheduledReportRunnerCreateRequest' required: - name - report_type - type RefreshingReportRunnerCreateRequest: allOf: - $ref: '#/components/schemas/ReportRunnerCreateRequestBase' - properties: deliver_empty_reports_to_sftp: nullable: true type: boolean expiration_ms: format: int64 type: integer merging_configuration: $ref: '#/components/schemas/MergingConfigurationRequest' pause_info: $ref: '#/components/schemas/PauseInfoRequest' sftp_server_id: nullable: true type: string type: enum: - REFRESHING type: string type: object required: - name - report_type - type type: object AccumulatingReportRunnerReportResponse: allOf: - $ref: '#/components/schemas/BaseReportRunnerReportResponseBase' - properties: completed_date: $ref: '#/components/schemas/ZonedDateTime' created_date: $ref: '#/components/schemas/ZonedDateTime' download_uri: nullable: true type: string error_code: nullable: true type: string executor_type: enum: - DASHBOARD - SPARK - SQL type: string format: enum: - CSV - HEADLESS_CSV - HEADLESS_PSV - JSON - JSONL - PSV - XLSX type: string formats: items: enum: - CSV - HEADLESS_CSV - HEADLESS_PSV - JSON - JSONL - PSV - XLSX type: string type: array report_id: type: string scopes: items: enum: - CLIENT_ADMIN - CLIENT_SUPERUSER - CONSUMER_PUBLIC type: string nullable: true type: array uniqueItems: true sftp_report_name: nullable: true type: string sftp_server_id: nullable: true type: string started_date: $ref: '#/components/schemas/ZonedDateTime' status: enum: - CANCELED - DONE - EXPIRED - FAILED - IN_PROGRESS - PENDING - PENDING_DATA - SFTP_DELIVERY_FAILED type: string type: enum: - ROLLING type: string user_id: type: string visible: type: boolean type: object required: - completed_date - created_date - display_name - download_uri - error_code - executor_type - format - formats - name - parameters - report_id - report_type - scopes - sftp_report_name - sftp_server_id - slot - started_date - status - tags - type - user_id - visible type: object ReportRunnerResponseBase: properties: component_ids: items: type: string type: array component_references: items: $ref: '#/components/schemas/ComponentReferenceResponse' type: array created_date: $ref: '#/components/schemas/ZonedDateTime' deliver_empty_reports_to_sftp: type: boolean enabled: type: boolean execution_policy: enum: - AWAIT_DATA - IMMEDIATE type: string formats: items: enum: - CSV - HEADLESS_CSV - HEADLESS_PSV - JSON - JSONL - PSV - XLSX type: string type: array id: readOnly: true type: string merging_configuration: $ref: '#/components/schemas/MergingConfigurationResponse' name: type: string parameters: additionalProperties: $ref: '#/components/schemas/ReportParameterResponse' type: object pause_info: $ref: '#/components/schemas/PauseInfoResponse' paused: $ref: '#/components/schemas/PauseInfoResponse' report_name_pattern: $ref: '#/components/schemas/ReportNamePatternInReportRunnerResponseBase' report_type: type: string report_type_name: type: string scopes: items: enum: - CLIENT_ADMIN - CLIENT_SUPERUSER - CONSUMER_PUBLIC type: string type: array uniqueItems: true sftp_report_name_pattern: $ref: '#/components/schemas/SftpReportNamePatternInReportRunnerResponseBase' sftp_server_id: nullable: true type: string tags: items: type: string type: array uniqueItems: true type: type: string updated_date: $ref: '#/components/schemas/ZonedDateTime' user_id: type: string type: object RefreshingReportRunnerResponse: allOf: - $ref: '#/components/schemas/ReportRunnerResponseBase' - properties: expiration_ms: format: int64 type: integer id: readOnly: true type: string type: enum: - REFRESHING type: string type: object required: - component_ids - component_references - created_date - deliver_empty_reports_to_sftp - enabled - execution_policy - expiration_ms - formats - id - merging_configuration - name - parameters - pause_info - paused - report_name_pattern - report_type - report_type_name - scopes - sftp_report_name_pattern - sftp_server_id - tags - type - updated_date - user_id type: object Instant: description: '[RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339#section-5.6) UTC date-time with a `Z` suffix. Precision up to milliseconds.' example: '2025-10-24T09:00:00.000Z' pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(\.\d{1,3})?Z$ type: string ReportParameterTypeResponse: properties: name: enum: - AUDIENCE_ID - AUDIENCE_IDS - AUDIENCE_MEMBERSHIPS_METRIC_MAPPING - AUDIENCE_MEMBERSHIPS_ROW_MAPPINGS - AUDIENCE_MEMBERS_ROW_MAPPINGS - BOOLEAN - CAMPAIGN_ID - CAMPAIGN_IDS - CHANNEL_MAPPING - CLIENT_EVENT_METRIC_MAPPINGS - CLIENT_ID - CLIENT_IDS - DATE - DATE_RANGE - DECIMAL - EMAIL_NAMES - ENUM - ENUM_LIST - EQUALITY - FILTER_MAPPINGS - FLOWS - FLOW_FILTER - GRANULAR_TIME_RANGE - ID - IDS - INPUT_RECORD_METRIC_MAPPING - INPUT_RECORD_ROW_MAPPINGS - INTEGER - LONG - MESSAGE_SUMMARY_METRIC_MAPPINGS - METRIC_MAPPINGS - MODEL_CONFIGURATION_METRIC_MAPPING - NORMALIZED_EMAIL - NOT_ARCHIVED_CAMPAIGN_ID - PERSON_DIMENSION_MAPPINGS - PERSON_MAPPINGS - PROGRAM_LABEL - PROGRAM_LABELS - REGEX - REWARD_EVENT_METRIC_MAPPINGS - REWARD_ROW_MAPPINGS - REWARD_SUPPLIER_DISPLAY_TYPES - REWARD_SUPPLIER_IDS - REWARD_SUPPLIER_TYPES - ROW_MAPPINGS - SORT_ORDER_MAPPINGS - SORT_ORDER_MAPPINGS_ON_STEPS - STEP - STEPS - STEP_COLUMN_LIST - STRING - STRING_LIST - TIERS - TIME - TIME_RANGE - WEBHOOK_DISPATCH_METRIC_MAPPING - WEBHOOK_DISPATCH_ROW_MAPPINGS - WEBHOOK_METRIC_MAPPING - WEBHOOK_ROW_MAPPINGS type: string value_type: enum: - DYNAMIC - STATIC nullable: true type: string values: items: type: string nullable: true type: array uniqueItems: true type: object ReportNamePatternInReportRunnerUpdateRequestBase: description: Choose between static or dynamic report name pattern oneOf: - allOf: - type: string - not: anyOf: - pattern: ^handlebars@runtime:.* type: string - pattern: ^javascript@runtime:.* type: string type: string description: Static report name pattern title: Static Value - description: Handlebars expression with [ReportRunnerExecutionContext](https://github.com/extole/extole-specification/blob/main/openapi/expression-context/com/extole/api/report_runner/ReportRunnerExecutionContext.d.ts). example: handlebars@runtime:{{reportNamePattern}} externalDocs: description: ReportRunnerExecutionContext url: https://github.com/extole/extole-specification/blob/main/openapi/expression-context/com/extole/api/report_runner/ReportRunnerExecutionContext.d.ts pattern: ^handlebars@runtime:.* title: Runtime - Handlebars type: string - description: Javascript expression with [ReportRunnerExecutionContext](https://github.com/extole/extole-specification/blob/main/openapi/expression-context/com/extole/api/report_runner/ReportRunnerExecutionContext.d.ts). example: javascript@runtime:function() { return context.get('reportNamePattern');} externalDocs: description: ReportRunnerExecutionContext url: https://github.com/extole/extole-specification/blob/main/openapi/expression-context/com/extole/api/report_runner/ReportRunnerExecutionContext.d.ts pattern: ^javascript@runtime:.* title: Runtime - Javascript type: string BaseReportRunnerReportResponseBase: properties: display_name: type: string name: type: string parameters: additionalProperties: $ref: '#/components/schemas/ReportParameterResponse' type: object report_type: type: string slot: type: string tags: items: type: string type: array uniqueItems: true type: type: string type: object NotExecutedReportRunnerReportResponse: allOf: - $ref: '#/components/schemas/BaseReportRunnerReportResponseBase' - properties: type: enum: - NOT_EXECUTED type: string required: - display_name - name - parameters - report_type - slot - tags - type type: object SftpReportNamePatternInReportRunnerResponseBase: description: 'The sftp report name pattern as configured: a literal value, or an expression (type:string) when defined dynamically.' oneOf: - allOf: - type: string - not: anyOf: - pattern: ^handlebars@runtime:.* type: string - pattern: ^javascript@runtime:.* type: string type: string description: Literal sftp report name pattern title: Static Value - description: Handlebars expression with [ReportRunnerExecutionContext](https://github.com/extole/extole-specification/blob/main/openapi/expression-context/com/extole/api/report_runner/ReportRunnerExecutionContext.d.ts). example: handlebars@runtime:{{sftpReportNamePattern}} externalDocs: description: ReportRunnerExecutionContext url: https://github.com/extole/extole-specification/blob/main/openapi/expression-context/com/extole/api/report_runner/ReportRunnerExecutionContext.d.ts pattern: ^handlebars@runtime:.* title: Runtime - Handlebars type: string - description: Javascript expression with [ReportRunnerExecutionContext](https://github.com/extole/extole-specification/blob/main/openapi/expression-context/com/extole/api/report_runner/ReportRunnerExecutionContext.d.ts). example: javascript@runtime:function() { return context.get('sftpReportNamePattern');} externalDocs: description: ReportRunnerExecutionContext url: https://github.com/extole/extole-specification/blob/main/openapi/expression-context/com/extole/api/report_runner/ReportRunnerExecutionContext.d.ts pattern: ^javascript@runtime:.* title: Runtime - Javascript type: string ReportNamePatternInReportRunnerCreateRequestBase: description: Choose between static or dynamic report name pattern oneOf: - allOf: - type: string - not: anyOf: - pattern: ^handlebars@runtime:.* type: string - pattern: ^javascript@runtime:.* type: string type: string description: Static report name pattern title: Static Value - description: Handlebars expression with [ReportRunnerExecutionContext](https://github.com/extole/extole-specification/blob/main/openapi/expression-context/com/extole/api/report_runner/ReportRunnerExecutionContext.d.ts). example: handlebars@runtime:{{reportNamePattern}} externalDocs: description: ReportRunnerExecutionContext url: https://github.com/extole/extole-specification/blob/main/openapi/expression-context/com/extole/api/report_runner/ReportRunnerExecutionContext.d.ts pattern: ^handlebars@runtime:.* title: Runtime - Handlebars type: string - description: Javascript expression with [ReportRunnerExecutionContext](https://github.com/extole/extole-specification/blob/main/openapi/expression-context/com/extole/api/report_runner/ReportRunnerExecutionContext.d.ts). example: javascript@runtime:function() { return context.get('reportNamePattern');} externalDocs: description: ReportRunnerExecutionContext url: https://github.com/extole/extole-specification/blob/main/openapi/expression-context/com/extole/api/report_runner/ReportRunnerExecutionContext.d.ts pattern: ^javascript@runtime:.* title: Runtime - Javascript type: string ReportRunnerUpdateRequestBase: properties: component_ids: items: type: string type: array component_references: items: $ref: '#/components/schemas/ComponentReferenceRequest' type: array deliver_empty_reports_to_sftp: nullable: true type: boolean enabled: type: boolean execution_policy: enum: - AWAIT_DATA - IMMEDIATE type: string formats: items: enum: - CSV - HEADLESS_CSV - HEADLESS_PSV - JSON - JSONL - PSV - XLSX type: string type: array merging_configuration: $ref: '#/components/schemas/MergingConfigurationRequest' name: type: string parameters: additionalProperties: type: string type: object pause_info: $ref: '#/components/schemas/PauseInfoRequest' report_name_pattern: $ref: '#/components/schemas/ReportNamePatternInReportRunnerUpdateRequestBase' report_type: type: string scopes: items: enum: - CLIENT_ADMIN - CLIENT_SUPERUSER - CONSUMER_PUBLIC type: string type: array uniqueItems: true sftp_report_name_pattern: $ref: '#/components/schemas/SftpReportNamePatternInReportRunnerUpdateRequestBase' sftp_server_id: nullable: true type: string tags: items: type: string type: array uniqueItems: true type: enum: - REFRESHING - SCHEDULED type: string type: object SftpReportNamePatternInReportRunnerUpdateRequestBase: description: Choose between static or dynamic sftp report name pattern oneOf: - allOf: - type: string - not: anyOf: - pattern: ^handlebars@runtime:.* type: string - pattern: ^javascript@runtime:.* type: string type: string description: Static sftp report name pattern title: Static Value - description: Handlebars expression with [ReportRunnerExecutionContext](https://github.com/extole/extole-specification/blob/main/openapi/expression-context/com/extole/api/report_runner/ReportRunnerExecutionContext.d.ts). example: handlebars@runtime:{{sftpReportNamePattern}} externalDocs: description: ReportRunnerExecutionContext url: https://github.com/extole/extole-specification/blob/main/openapi/expression-context/com/extole/api/report_runner/ReportRunnerExecutionContext.d.ts pattern: ^handlebars@runtime:.* title: Runtime - Handlebars type: string - description: Javascript expression with [ReportRunnerExecutionContext](https://github.com/extole/extole-specification/blob/main/openapi/expression-context/com/extole/api/report_runner/ReportRunnerExecutionContext.d.ts). example: javascript@runtime:function() { return context.get('sftpReportNamePattern');} externalDocs: description: ReportRunnerExecutionContext url: https://github.com/extole/extole-specification/blob/main/openapi/expression-context/com/extole/api/report_runner/ReportRunnerExecutionContext.d.ts pattern: ^javascript@runtime:.* title: Runtime - Javascript type: string ReportRunnerResponse: discriminator: mapping: REFRESHING: '#/components/schemas/RefreshingReportRunnerResponse' SCHEDULED: '#/components/schemas/ScheduledReportRunnerResponse' propertyName: type oneOf: - $ref: '#/components/schemas/RefreshingReportRunnerResponse' - $ref: '#/components/schemas/ScheduledReportRunnerResponse' required: - component_ids - component_references - created_date - deliver_empty_reports_to_sftp - enabled - execution_policy - formats - id - merging_configuration - name - parameters - pause_info - paused - report_name_pattern - report_type - report_type_name - scopes - sftp_report_name_pattern - sftp_server_id - tags - type - updated_date - user_id ReportResponse: properties: completed_date: nullable: true type: string display_name: type: string download_uri: nullable: true type: string formats: items: enum: - CSV - HEADLESS_CSV - HEADLESS_PSV - JSON - JSONL - PSV - XLSX type: string type: array name: type: string report_id: type: string report_type: type: string tags: items: type: string type: array uniqueItems: true required: - completed_date - display_name - download_uri - formats - name - report_id - report_type - tags type: object ReportRunnerUpdateRequest: description: Body of a `PUT /v7/report-runners/{reportRunnerId}` request. discriminator: mapping: REFRESHING: '#/components/schemas/RefreshingReportRunnerUpdateRequest' SCHEDULED: '#/components/schemas/ScheduledReportRunnerUpdateRequest' propertyName: type oneOf: - $ref: '#/components/schemas/RefreshingReportRunnerUpdateRequest' - $ref: '#/components/schemas/ScheduledReportRunnerUpdateRequest' required: - type ZonedDateTime: description: '[RFC 3339](https://datatracker.ietf.org/doc/html/rfc3339#section-5.6) or [RFC 9557](https://datatracker.ietf.org/doc/html/rfc9557#section-4) date-time with a numeric [UTC offset](https://datatracker.ietf.org/doc/html/rfc3339#section-5.6) and an optional [IANA time-zone](https://datatracker.ietf.org/doc/html/rfc9557#section-4) suffix in square brackets. Precision up to milliseconds.' example: '2025-10-24T02:00:00-07:00' pattern: ^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}(\.\d{1,3})?(Z|[+-](?:[01][0-9]|2[0-3]):[0-5][0-9])(\[[^\]]+\])?$ type: string RestExceptionResponse: description: Represents the API error response properties: code: description: Specific error code for this error type, documented per endpoint type: string http_status_code: description: HTTP status code that was returned with this error, useful if client get response code format: int32 type: integer message: description: User readable English description of the error type: string parameters: additionalProperties: description: Attributes related to the error, varies be error code, documented per endpoint type: object description: Attributes related to the error, varies be error code, documented per endpoint type: object unique_id: description: Unique id associated with this error, useful for discussions with Extole type: string required: - code - http_status_code - message - parameters - unique_id type: object ScheduledReportRunnerUpdateRequest: allOf: - $ref: '#/components/schemas/ReportRunnerUpdateRequestBase' - properties: deliver_empty_reports_to_sftp: nullable: true type: boolean frequency: enum: - DAILY - HOURLY - LOGIN - MONTHLY - QUARTERLY - WEEKLY type: string legacy_sftp_report_name_format: type: boolean merging_configuration: $ref: '#/components/schemas/MergingConfigurationRequest' pause_info: $ref: '#/components/schemas/PauseInfoRequest' schedule_start_date: $ref: '#/components/schemas/ZonedDateTime' sftp_server_id: nullable: true type: string type: enum: - SCHEDULED type: string type: object required: - type type: object NewEntriesOnlyReportRunnerReportResponse: allOf: - $ref: '#/components/schemas/BaseReportRunnerReportResponseBase' - properties: completed_date: $ref: '#/components/schemas/ZonedDateTime' created_date: $ref: '#/components/schemas/ZonedDateTime' download_uri: nullable: true type: string error_code: nullable: true type: string executor_type: enum: - DASHBOARD - SPARK - SQL type: string format: enum: - CSV - HEADLESS_CSV - HEADLESS_PSV - JSON - JSONL - PSV - XLSX type: string formats: items: enum: - CSV - HEADLESS_CSV - HEADLESS_PSV - JSON - JSONL - PSV - XLSX type: string type: array report_id: type: string scopes: items: enum: - CLIENT_ADMIN - CLIENT_SUPERUSER - CONSUMER_PUBLIC type: string nullable: true type: array uniqueItems: true sftp_report_name: nullable: true type: string sftp_server_id: nullable: true type: string started_date: $ref: '#/components/schemas/ZonedDateTime' status: enum: - CANCELED - DONE - EXPIRED - FAILED - IN_PROGRESS - PENDING - PENDING_DATA - SFTP_DELIVERY_FAILED type: string type: enum: - NEW_ENTRIES type: string user_id: type: string visible: type: boolean type: object required: - completed_date - created_date - display_name - download_uri - error_code - executor_type - format - formats - name - parameters - report_id - report_type - scopes - sftp_report_name - sftp_server_id - slot - started_date - status - tags - type - user_id - visible type: object ComponentReferenceResponse: properties: component_id: type: string socket_names: items: type: string type: array type: object ScheduledReportRunnerResponse: allOf: - $ref: '#/components/schemas/ReportRunnerResponseBase' - properties: frequency: enum: - DAILY - HOURLY - LOGIN - MONTHLY - QUARTERLY - WEEKLY type: string id: readOnly: true type: string legacy_sftp_report_name_format: type: boolean schedule_start_date: $ref: '#/components/schemas/ZonedDateTime' type: enum: - SCHEDULED type: string type: object required: - component_ids - component_references - created_date - deliver_empty_reports_to_sftp - enabled - execution_policy - formats - frequency - id - legacy_sftp_report_name_format - merging_configuration - name - parameters - pause_info - paused - report_name_pattern - report_type - report_type_name - schedule_start_date - scopes - sftp_report_name_pattern - sftp_server_id - tags - type - updated_date - user_id type: object ReportNamePatternInReportRunnerResponseBase: description: 'The report name pattern as configured: a literal value, or an expression (type:string) when defined dynamically.' oneOf: - allOf: - type: string - not: anyOf: - pattern: ^handlebars@runtime:.* type: string - pattern: ^javascript@runtime:.* type: string type: string description: Literal report name pattern title: Static Value - description: Handlebars expression with [ReportRunnerExecutionContext](https://github.com/extole/extole-specification/blob/main/openapi/expression-context/com/extole/api/report_runner/ReportRunnerExecutionContext.d.ts). example: handlebars@runtime:{{reportNamePattern}} externalDocs: description: ReportRunnerExecutionContext url: https://github.com/extole/extole-specification/blob/main/openapi/expression-context/com/extole/api/report_runner/ReportRunnerExecutionContext.d.ts pattern: ^handlebars@runtime:.* title: Runtime - Handlebars type: string - description: Javascript expression with [ReportRunnerExecutionContext](https://github.com/extole/extole-specification/blob/main/openapi/expression-context/com/extole/api/report_runner/ReportRunnerExecutionContext.d.ts). example: javascript@runtime:function() { return context.get('reportNamePattern');} externalDocs: description: ReportRunnerExecutionContext url: https://github.com/extole/extole-specification/blob/main/openapi/expression-context/com/extole/api/report_runner/ReportRunnerExecutionContext.d.ts pattern: ^javascript@runtime:.* title: Runtime - Javascript type: string ComponentReferenceRequest: properties: component_id: type: string socket_names: items: type: string type: array type: object BaseReportRunnerReportResponse: discriminator: mapping: EXECUTED: '#/components/schemas/IndividualReportRunnerReportResponse' NEW_ENTRIES: '#/components/schemas/NewEntriesOnlyReportRunnerReportResponse' NOT_EXECUTED: '#/components/schemas/NotExecutedReportRunnerReportResponse' ROLLING: '#/components/schemas/AccumulatingReportRunnerReportResponse' propertyName: type oneOf: - $ref: '#/components/schemas/IndividualReportRunnerReportResponse' - $ref: '#/components/schemas/NewEntriesOnlyReportRunnerReportResponse' - $ref: '#/components/schemas/NotExecutedReportRunnerReportResponse' - $ref: '#/components/schemas/AccumulatingReportRunnerReportResponse' required: - display_name - name - parameters - report_type - slot - tags - type ReportRunnerViewResponseBase: properties: created_date: $ref: '#/components/schemas/ZonedDateTime' execution_policy: enum: - AWAIT_DATA - IMMEDIATE type: string formats: items: enum: - CSV - HEADLESS_CSV - HEADLESS_PSV - JSON - JSONL - PSV - XLSX type: string type: array id: readOnly: true type: string merging_configuration: $ref: '#/components/schemas/MergingConfigurationResponse' name: type: string next_execution_date: $ref: '#/components/schemas/ZonedDateTime' parameters: additionalProperties: $ref: '#/components/schemas/ReportParameterResponse' type: object paused: $ref: '#/components/schemas/PauseInfoResponse' report_type_name: type: string scopes: items: enum: - CLIENT_ADMIN - CLIENT_SUPERUSER - CONSUMER_PUBLIC type: string type: array uniqueItems: true sftp_server_id: nullable: true type: string tags: items: type: string type: array uniqueItems: true type: type: string updated_date: $ref: '#/components/schemas/ZonedDateTime' user_id: type: string type: object ScheduledReportRunnerViewResponse: allOf: - $ref: '#/components/schemas/ReportRunnerViewResponseBase' - properties: frequency: enum: - DAILY - HOURLY - LOGIN - MONTHLY - QUARTERLY - WEEKLY type: string id: readOnly: true type: string legacy_sftp_report_name_format: type: boolean schedule_start_date: $ref: '#/components/schemas/ZonedDateTime' type: enum: - SCHEDULED type: string type: object required: - created_date - execution_policy - formats - frequency - id - legacy_sftp_report_name_format - merging_configuration - name - next_execution_date - parameters - paused - report_type_name - schedule_start_date - scopes - sftp_server_id - tags - type - updated_date - user_id type: object RefreshingReportRunnerViewResponse: allOf: - $ref: '#/components/schemas/ReportRunnerViewResponseBase' - properties: expiration_ms: format: int64 type: integer id: readOnly: true type: string type: enum: - REFRESHING type: string type: object required: - created_date - execution_policy - expiration_ms - formats - id - merging_configuration - name - next_execution_date - parameters - paused - report_type_name - scopes - sftp_server_id - tags - type - updated_date - user_id type: object MergingConfigurationResponse: properties: deliverable_type: enum: - ACCUMULATING - INDIVIDUAL - NEW_ENTRIES type: string formats: items: enum: - CSV - HEADLESS_CSV - HEADLESS_PSV - JSON - JSONL - PSV - XLSX type: string type: array uniqueItems: true sort_by: items: type: string type: array unique_by: items: type: string type: array type: object MergingConfigurationRequest: properties: deliverable_type: type: string formats: items: enum: - CSV - HEADLESS_CSV - HEADLESS_PSV - JSON - JSONL - PSV - XLSX type: string type: array uniqueItems: true sort_by: items: type: string type: array unique_by: items: type: string type: array type: object examples: report_not_found: summary: report_not_found value: code: report_not_found http_status_code: 400 message: Report not found parameters: {} unique_id: 00000000-0000-0000-0000-000000000000 report_invalid_operation: summary: report_invalid_operation value: code: report_invalid_operation http_status_code: 400 message: Current report state doesn't allow the specified operation parameters: {} unique_id: 00000000-0000-0000-0000-000000000000 report_runner_missing_parameters: summary: report_runner_missing_parameters value: code: report_runner_missing_parameters http_status_code: 400 message: Report runner is missing parameters parameters: {} unique_id: 00000000-0000-0000-0000-000000000000 report_runner_invalid_type: summary: report_runner_invalid_type value: code: report_runner_invalid_type http_status_code: 400 message: Report runner type is invalid parameters: {} unique_id: 00000000-0000-0000-0000-000000000000 report_missing_aggregation_parameter: summary: report_missing_aggregation_parameter value: code: report_missing_aggregation_parameter http_status_code: 400 message: Report must have at least one aggregating function parameters: {} unique_id: 00000000-0000-0000-0000-000000000000 report_content_not_supported: summary: report_content_not_supported value: code: report_content_not_supported http_status_code: 400 message: Report content type not supported parameters: {} unique_id: 00000000-0000-0000-0000-000000000000 report_content_not_found: summary: report_content_not_found value: code: report_content_not_found http_status_code: 400 message: Report content exceed max size parameters: {} unique_id: 00000000-0000-0000-0000-000000000000 report_invalid_parameter: summary: report_invalid_parameter value: code: report_invalid_parameter http_status_code: 400 message: Report parameter(s) of invalid format parameters: {} unique_id: 00000000-0000-0000-0000-000000000000 report_runner_paused: summary: report_runner_paused value: code: report_runner_paused http_status_code: 400 message: Report runner is paused parameters: {} unique_id: 00000000-0000-0000-0000-000000000000 report_runner_invalid_parameter: summary: report_runner_invalid_parameter value: code: report_runner_invalid_parameter http_status_code: 400 message: Report runner parameter(s) of invalid format parameters: {} unique_id: 00000000-0000-0000-0000-000000000000 binding_error: summary: binding_error value: code: binding_error http_status_code: 400 message: Argument is not of the expected type parameters: {} unique_id: 00000000-0000-0000-0000-000000000000 too_many_requests: summary: too_many_requests value: code: too_many_requests http_status_code: 429 message: The server is unable to process your request at the moment, please retry later. parameters: {} unique_id: 00000000-0000-0000-0000-000000000000 invalid_parameter: summary: invalid_parameter value: code: invalid_parameter http_status_code: 400 message: Parameter is invalid. parameters: {} unique_id: 00000000-0000-0000-0000-000000000000 report_invalid_formats: summary: report_invalid_formats value: code: report_invalid_formats http_status_code: 400 message: Report formats not supported parameters: {} unique_id: 00000000-0000-0000-0000-000000000000 report_runner_invalid_status: summary: report_runner_invalid_status value: code: report_runner_invalid_status http_status_code: 400 message: Report runner status is invalid parameters: {} unique_id: 00000000-0000-0000-0000-000000000000 max_fetch_size_1000: summary: max_fetch_size_1000 value: code: max_fetch_size_1000 http_status_code: 400 message: Maximum allowed difference between limit and offset should be 1000 parameters: {} unique_id: 00000000-0000-0000-0000-000000000000 report_runner_name_missing: summary: report_runner_name_missing value: code: report_runner_name_missing http_status_code: 400 message: Report runner name is missing parameters: {} unique_id: 00000000-0000-0000-0000-000000000000 report_type_missing: summary: report_type_missing value: code: report_type_missing http_status_code: 400 message: Report type is missing parameters: {} unique_id: 00000000-0000-0000-0000-000000000000 report_display_name_empty: summary: report_display_name_empty value: code: report_display_name_empty http_status_code: 400 message: Report display name is empty parameters: {} unique_id: 00000000-0000-0000-0000-000000000000 report_runner_type_not_found: summary: report_runner_type_not_found value: code: report_runner_type_not_found http_status_code: 400 message: Report runner type not found parameters: {} unique_id: 00000000-0000-0000-0000-000000000000 missing_access_token: summary: missing_access_token value: code: missing_access_token http_status_code: 403 message: No access_token was provided with this request. parameters: {} unique_id: 00000000-0000-0000-0000-000000000000 payment_required: summary: payment_required value: code: payment_required http_status_code: 402 message: The access_token provided is associated with an unpaid account. parameters: {} unique_id: 00000000-0000-0000-0000-000000000000 invalid_offset: summary: invalid_offset value: code: invalid_offset http_status_code: 400 message: Offset should be a non negative integer parameters: {} unique_id: 00000000-0000-0000-0000-000000000000 report_filter_missing: summary: report_filter_missing value: code: report_filter_missing http_status_code: 400 message: Report tags is required parameters: {} unique_id: 00000000-0000-0000-0000-000000000000 method_unauthorized: summary: method_unauthorized value: code: method_unauthorized http_status_code: 401 message: Unauthorized access to this endpoint parameters: {} unique_id: 00000000-0000-0000-0000-000000000000 report_runner_name_exists: summary: report_runner_name_exists value: code: report_runner_name_exists http_status_code: 400 message: Report runner name already exists parameters: {} unique_id: 00000000-0000-0000-0000-000000000000 report_content_by_tags_not_found: summary: report_content_by_tags_not_found value: code: report_content_by_tags_not_found http_status_code: 400 message: Report content by tags could not be downloaded parameters: {} unique_id: 00000000-0000-0000-0000-000000000000 report_invalid_scopes: summary: report_invalid_scopes value: code: report_invalid_scopes http_status_code: 400 message: Report scopes invalid parameters: {} unique_id: 00000000-0000-0000-0000-000000000000 report_runner_invalid_pause_status: summary: report_runner_invalid_pause_status value: code: report_runner_invalid_pause_status http_status_code: 400 message: Report runner pause status is invalid parameters: {} unique_id: 00000000-0000-0000-0000-000000000000 access_denied: summary: access_denied value: code: access_denied http_status_code: 403 message: The access_token provided is not permitted to access the specified resource. parameters: {} unique_id: 00000000-0000-0000-0000-000000000000 report_invalid_sftp_server: summary: report_invalid_sftp_server value: code: report_invalid_sftp_server http_status_code: 400 message: Invalid SFTP server parameters: {} unique_id: 00000000-0000-0000-0000-000000000000 report_runner_invalid_slot_type: summary: report_runner_invalid_slot_type value: code: report_runner_invalid_slot_type http_status_code: 400 message: Report runner slot type is invalid parameters: {} unique_id: 00000000-0000-0000-0000-000000000000 report_runner_locked: summary: report_runner_locked value: code: report_runner_locked http_status_code: 400 message: Report runner is locked and cannot be edited via rest api parameters: {} unique_id: 00000000-0000-0000-0000-000000000000 invalid_json: summary: invalid_json value: code: invalid_json http_status_code: 400 message: JSON is invalid parameters: {} unique_id: 00000000-0000-0000-0000-000000000000 report_runner_not_found: summary: report_runner_not_found value: code: report_runner_not_found http_status_code: 404 message: Report Runner not found parameters: {} unique_id: 00000000-0000-0000-0000-000000000000 report_content_format_by_tags_not_found: summary: report_content_format_by_tags_not_found value: code: report_content_format_by_tags_not_found http_status_code: 400 message: Report content format by tags not found parameters: {} unique_id: 00000000-0000-0000-0000-000000000000 report_runner_no_execution_time_range: summary: report_runner_no_execution_time_range value: code: report_runner_no_execution_time_range http_status_code: 400 message: Report runner has no valid execution time ranges to run parameters: {} unique_id: 00000000-0000-0000-0000-000000000000 report_runner_type_field_missing: summary: report_runner_type_field_missing value: code: report_runner_type_field_missing http_status_code: 400 message: Report runner request is missing type field parameters: {} unique_id: 00000000-0000-0000-0000-000000000000 unsupported_media_type: summary: unsupported_media_type value: code: unsupported_media_type http_status_code: 415 message: Request had an unsupported or no media type parameters: {} unique_id: 00000000-0000-0000-0000-000000000000 report_missing_parameters: summary: report_missing_parameters value: code: report_missing_parameters http_status_code: 400 message: Report is missing parameters parameters: {} unique_id: 00000000-0000-0000-0000-000000000000 report_runner_invalid_slot: summary: report_runner_invalid_slot value: code: report_runner_invalid_slot http_status_code: 400 message: Report runner slot of invalid format parameters: {} unique_id: 00000000-0000-0000-0000-000000000000 report_runner_start_date_missing: summary: report_runner_start_date_missing value: code: report_runner_start_date_missing http_status_code: 400 message: Report runner start date is missing parameters: {} unique_id: 00000000-0000-0000-0000-000000000000 report_runner_slots_not_supported: summary: report_runner_slots_not_supported value: code: report_runner_slots_not_supported http_status_code: 400 message: Report runner slots is not supported parameters: {} unique_id: 00000000-0000-0000-0000-000000000000 report_name_illegal_character: summary: report_name_illegal_character value: code: report_name_illegal_character http_status_code: 400 message: Report name can only contain alphanumeric, space, dash, parenthesis, slash, colon, comma, period, underscore, dollar and percentage parameters: {} unique_id: 00000000-0000-0000-0000-000000000000 report_tags_too_long: summary: report_tags_too_long value: code: report_tags_too_long http_status_code: 400 message: Tags are too long parameters: {} unique_id: 00000000-0000-0000-0000-000000000000 report_content_format_not_found: summary: report_content_format_not_found value: code: report_content_format_not_found http_status_code: 400 message: Report content format not found parameters: {} unique_id: 00000000-0000-0000-0000-000000000000 report_runner_frequency_missing: summary: report_runner_frequency_missing value: code: report_runner_frequency_missing http_status_code: 400 message: Report runner frequency is missing parameters: {} unique_id: 00000000-0000-0000-0000-000000000000 report_preview_not_available: summary: report_preview_not_available value: code: report_preview_not_available http_status_code: 400 message: Report preview for requested format is not available parameters: {} unique_id: 00000000-0000-0000-0000-000000000000 report_runner_invalid_aggregation_status: summary: report_runner_invalid_aggregation_status value: code: report_runner_invalid_aggregation_status http_status_code: 400 message: Report runner aggregation status is invalid parameters: {} unique_id: 00000000-0000-0000-0000-000000000000 report_update_invalid: summary: report_update_invalid value: code: report_update_invalid http_status_code: 400 message: Report update invalid parameters: {} unique_id: 00000000-0000-0000-0000-000000000000 report_runner_wrong_type: summary: report_runner_wrong_type value: code: report_runner_wrong_type http_status_code: 400 message: Report Runner of wrong type parameters: {} unique_id: 00000000-0000-0000-0000-000000000000 missing_request_body: summary: missing_request_body value: code: missing_request_body http_status_code: 400 message: Missing request body parameters: {} unique_id: 00000000-0000-0000-0000-000000000000 report_display_name_too_long: summary: report_display_name_too_long value: code: report_display_name_too_long http_status_code: 400 message: Report display name is too long parameters: {} unique_id: 00000000-0000-0000-0000-000000000000 report_runner_invalid_formats: summary: report_runner_invalid_formats value: code: report_runner_invalid_formats http_status_code: 400 message: Report runner formats not supported parameters: {} unique_id: 00000000-0000-0000-0000-000000000000 invalid_limit: summary: invalid_limit value: code: invalid_limit http_status_code: 400 message: Limit should be a non negative integer parameters: {} unique_id: 00000000-0000-0000-0000-000000000000 securitySchemes: COOKIE: in: cookie name: extole_token type: apiKey HEADER: in: header name: Authorization type: apiKey x-bearer-format: bearer QUERY: in: query name: access_token type: apiKey x-tagGroups: - name: Integration API - Consumer to Extole tags: - Authentication - Content - Email - Events - Persons - Profile Assets - Profiles