@ministryofjustice/hmpps-digital-prison-reporting-frontend
Version:
The Digital Prison Reporting Frontend contains templates and code to help display data effectively in UI applications.
1,722 lines (1,721 loc) • 74.5 kB
TypeScript
/**
* This file was auto-generated by openapi-typescript.
* Do not make direct changes to the file.
*/
export interface paths {
'/reports/tableExpiryState': {
parameters: {
query?: never
header?: never
path?: never
cookie?: never
}
get?: never
put?: never
/** @description Checks the list of table IDs provided for existence in Redshift and returns a list of the table IDs along with their expiration state. */
post: operations['getResultTableExpiryState']
delete?: never
options?: never
head?: never
patch?: never
trace?: never
}
'/missingRequest/{reportId}/{variantId}': {
parameters: {
query?: never
header?: never
path?: never
cookie?: never
}
get?: never
put?: never
/** @description Submit a request for a missing report */
post: operations['requestMissing']
delete?: never
options?: never
head?: never
patch?: never
trace?: never
}
'/reports/{reportId}/{reportVariantId}': {
parameters: {
query?: never
header?: never
path?: never
cookie?: never
}
/** @description Returns the dataset for the given report ID and report variant ID filtered by the filters provided in the query. */
get: operations['configuredApiDataset']
put?: never
post?: never
delete?: never
options?: never
head?: never
patch?: never
trace?: never
}
'/reports/{reportId}/{reportVariantId}/tables/{tableId}/result': {
parameters: {
query?: never
header?: never
path?: never
cookie?: never
}
/** @description Returns the resulting rows of the executed statement in a paginated fashion which has been stored in a dedicated table. */
get: operations['getQueryExecutionResult']
put?: never
post?: never
delete?: never
options?: never
head?: never
patch?: never
trace?: never
}
'/reports/{reportId}/{reportVariantId}/tables/{tableId}/result/summary/{summaryId}': {
parameters: {
query?: never
header?: never
path?: never
cookie?: never
}
/** @description Returns a summary of a request, which has been stored in a dedicated table. */
get: operations['getSummaryQueryExecutionResult']
put?: never
post?: never
delete?: never
options?: never
head?: never
patch?: never
trace?: never
}
'/reports/{reportId}/{reportVariantId}/tables/{tableId}/download': {
parameters: {
query?: never
header?: never
path?: never
cookie?: never
}
/** @description Streams the entire result set of the async query execution as a csv file. */
get: operations['downloadCsv']
put?: never
post?: never
delete?: never
options?: never
head?: never
patch?: never
trace?: never
}
'/reports/{reportId}/{reportVariantId}/tables/{tableId}/count': {
parameters: {
query?: never
header?: never
path?: never
cookie?: never
}
/** @description Returns the number of rows of the table which contains the result of a previously executed query. Allows filtering and it is aimed at supporting the interactive journey. */
get: operations['getInteractiveExternalTableRowCount']
put?: never
post?: never
delete?: never
options?: never
head?: never
patch?: never
trace?: never
}
'/reports/{reportId}/{reportVariantId}/statements/{statementId}/status': {
parameters: {
query?: never
header?: never
path?: never
cookie?: never
}
/**
* @description Returns the status of the statement execution based on the statement ID provided.The following status values can be returned:
* ABORTED - The query run was stopped by the user.
* ALL - A status value that includes all query statuses. This value can be used to filter results.
* FAILED - The query run failed.
* FINISHED - The query has finished running.
* PICKED - The query has been chosen to be run.
* STARTED - The query run has started.
* SUBMITTED - The query was submitted, but not yet processed.
* Note: When the status is FAILED the error field of the response will be populated.ResultRows is the number of rows returned from the SQL statement. A -1 indicates the value is null.ResultSize is the size in bytes of the returned results. A -1 indicates the value is null.
* For Athena:
* Athena automatically retries your queries in cases of certain transient errors. As a result, you may see the query state transition from STARTED or FAILED to SUBMITTED.
*/
get: operations['getQueryExecutionStatus']
put?: never
post?: never
delete?: never
options?: never
head?: never
patch?: never
trace?: never
}
'/reports/{reportId}/{reportVariantId}/download': {
parameters: {
query?: never
header?: never
path?: never
cookie?: never
}
/** @description Streams the entire result set of the sync query execution as a csv file. */
get: operations['downloadCsv_1']
put?: never
post?: never
delete?: never
options?: never
head?: never
patch?: never
trace?: never
}
'/reports/{reportId}/{reportVariantId}/count': {
parameters: {
query?: never
header?: never
path?: never
cookie?: never
}
/** @description Returns the number of records for the given report ID and report variant ID filtered by the filters provided in the query. */
get: operations['configuredApiCount']
put?: never
post?: never
delete?: never
options?: never
head?: never
patch?: never
trace?: never
}
'/reports/{reportId}/dashboards/{dashboardId}': {
parameters: {
query?: never
header?: never
path?: never
cookie?: never
}
/** @description Returns the dataset for the given report ID and dashboard ID filtered by the filters provided in the query. */
get: operations['configuredApiDatasetForDashboard']
put?: never
post?: never
delete?: never
options?: never
head?: never
patch?: never
trace?: never
}
'/reports/{reportId}/dashboards/{dashboardId}/tables/{tableId}/result': {
parameters: {
query?: never
header?: never
path?: never
cookie?: never
}
/** @description Returns the resulting rows of the executed statement in a paginated fashion which has been stored in a dedicated table. */
get: operations['getDashboardQueryExecutionResult']
put?: never
post?: never
delete?: never
options?: never
head?: never
patch?: never
trace?: never
}
'/reports/{reportId}/dashboards/{dashboardId}/statements/{statementId}/status': {
parameters: {
query?: never
header?: never
path?: never
cookie?: never
}
/**
* @description Returns the status of the dashboard statement execution based on the statement ID provided.The following status values can be returned:
* ABORTED - The query run was stopped by the user.
* ALL - A status value that includes all query statuses. This value can be used to filter results.
* FAILED - The query run failed.
* FINISHED - The query has finished running.
* PICKED - The query has been chosen to be run.
* STARTED - The query run has started.
* SUBMITTED - The query was submitted, but not yet processed.
* Note: When the status is FAILED the error field of the response will be populated.ResultRows is the number of rows returned from the SQL statement. A -1 indicates the value is null.ResultSize is the size in bytes of the returned results. A -1 indicates the value is null.
* For Athena:
* Athena automatically retries your queries in cases of certain transient errors. As a result, you may see the query state transition from STARTED or FAILED to SUBMITTED.
*/
get: operations['getDashboardExecutionStatus']
put?: never
post?: never
delete?: never
options?: never
head?: never
patch?: never
trace?: never
}
'/report/tables/{tableId}/count': {
parameters: {
query?: never
header?: never
path?: never
cookie?: never
}
/** @description Returns the number of rows of the table which contains the result of a previously executed query. */
get: operations['getExternalTableRowCount']
put?: never
post?: never
delete?: never
options?: never
head?: never
patch?: never
trace?: never
}
'/productCollections': {
parameters: {
query?: never
header?: never
path?: never
cookie?: never
}
/** @description Gets all product collections */
get: operations['getCollections']
put?: never
post?: never
delete?: never
options?: never
head?: never
patch?: never
trace?: never
}
'/productCollections/{id}': {
parameters: {
query?: never
header?: never
path?: never
cookie?: never
}
/** @description Gets product collection by id */
get: operations['getCollections_1']
put?: never
post?: never
delete?: never
options?: never
head?: never
patch?: never
trace?: never
}
'/definitions': {
parameters: {
query?: never
header?: never
path?: never
cookie?: never
}
/** @description Gets summaries of all report definitions */
get: operations['definitions']
put?: never
post?: never
delete?: never
options?: never
head?: never
patch?: never
trace?: never
}
'/definitions/{reportId}': {
parameters: {
query?: never
header?: never
path?: never
cookie?: never
}
/** @description Gets report definition summary */
get: operations['definitionSummary']
put?: never
post?: never
delete?: never
options?: never
head?: never
patch?: never
trace?: never
}
'/definitions/{reportId}/{variantId}': {
parameters: {
query?: never
header?: never
path?: never
cookie?: never
}
/** @description Gets report definition containing a single variant. */
get: operations['definition']
put?: never
post?: never
delete?: never
options?: never
head?: never
patch?: never
trace?: never
}
'/definitions/{dataProductDefinitionId}/dashboards/{dashboardId}': {
parameters: {
query?: never
header?: never
path?: never
cookie?: never
}
/** @description Gets the metric dashboard definition. */
get: operations['dashboardDefinition']
put?: never
post?: never
delete?: never
options?: never
head?: never
patch?: never
trace?: never
}
'/async/reports/{reportId}/{reportVariantId}': {
parameters: {
query?: never
header?: never
path?: never
cookie?: never
}
/** @description Executes asynchronously the dataset query for the given report and stores the result into an external table.The response returned contains the table ID and the execution ID. This is the asynchronous version of the /reports/{reportId}/{reportVariantId} API. */
get: operations['asyncConfiguredApiExecuteQuery']
put?: never
post?: never
delete?: never
options?: never
head?: never
patch?: never
trace?: never
}
'/async/dashboards/{reportId}/{dashboardId}': {
parameters: {
query?: never
header?: never
path?: never
cookie?: never
}
/** @description Executes asynchronously the dataset query for the given dashboard and stores the result into an external table.The response returned contains the table ID and the execution ID. */
get: operations['asyncExecuteDashboard']
put?: never
post?: never
delete?: never
options?: never
head?: never
patch?: never
trace?: never
}
'/reports/{reportId}/{reportVariantId}/statements/{statementId}': {
parameters: {
query?: never
header?: never
path?: never
cookie?: never
}
get?: never
put?: never
post?: never
/** @description Cancels the execution of a running query. */
delete: operations['cancelReportQueryExecution']
options?: never
head?: never
patch?: never
trace?: never
}
'/reports/{reportId}/dashboards/{dashboardId}/statements/{statementId}': {
parameters: {
query?: never
header?: never
path?: never
cookie?: never
}
get?: never
put?: never
post?: never
/** @description Cancels the execution of a running query. */
delete: operations['cancelDashboardQueryExecution']
options?: never
head?: never
patch?: never
trace?: never
}
}
export type webhooks = Record<string, never>
export interface components {
schemas: {
ErrorResponse: {
/** Format: int32 */
status: number
/** Format: int32 */
errorCode?: number | null
userMessage?: string | null
developerMessage?: string | null
moreInfo?: string | null
}
ResultTableExpiryStateRequest: {
tableIds: string[]
}
ResultTableExpiryState: {
tableId: string
expired: boolean
}
MissingReportSubmission: {
userId: string
reportId: string
reportVariantId: string
reason?: string | null
/** Format: int32 */
id?: number | null
}
Count: {
/**
* Format: int64
* @description The total number of records
* @example 501
*/
count: number
}
StatementExecutionStatus: {
/**
* @description The status of the statement execution.
* @example FINISHED
* @example SUBMITTED
* @example STARTED
* @example PICKED
* @example FAILED
* @example ALL
* @example ABORTED
*/
status: string
/**
* Format: int64
* @description The amount of time in nanoseconds that the statement ran.
* @example 10562762848
*/
duration: number
/**
* Format: int64
* @description The number of rows returned from the query.
* @example 10
*/
resultRows: number
/**
* Format: int64
* @description The size in bytes of the returned results. A -1 indicates the value is null.
* @example 0
*/
resultSize?: number | null
/** @description Contains a short description of the error that occurred. */
error?: string | null
/**
* Format: int32
* @description Specific to Athena queries. An integer value that specifies the category of a query failure error. The following list shows the category for each integer value.
* 1 - System
* 2 - User
* 3 - Other
* @example 1
* @example 2
* @example 3
*/
errorCategory?: number | null
/** @description Specific to Athena queries. Further detail about the status of the query. */
stateChangeReason?: string | null
}
ProductCollectionSummary: {
id: string
name: string
version: string
ownerName: string
}
ProductCollectionDTO: {
id: string
name: string
version: string
ownerName: string
products: components['schemas']['ProductCollectionProduct'][]
}
ProductCollectionProduct: {
productId: string
}
DashboardDefinitionSummary: {
id: string
name: string
description?: string | null
/** @enum {string|null} */
loadType?: 'sync' | 'async' | null
}
ReportDefinitionSummary: {
id: string
name: string
description?: string | null
variants: components['schemas']['VariantDefinitionSummary'][]
dashboards?: components['schemas']['DashboardDefinitionSummary'][] | null
authorised: boolean
}
VariantDefinitionSummary: {
id: string
name: string
description?: string | null
isMissing: boolean
/** @enum {string|null} */
loadType?: 'sync' | 'async' | null
}
ChildVariantDefinition: {
id: string
name: string
resourceName: string
specification?: components['schemas']['Specification'] | null
joinFields: string[]
}
DynamicFilterOption: {
/** Format: int32 */
minimumLength?: number | null
}
FieldDefinition: {
name: string
display: string
/** @enum {string|null} */
wordWrap?: 'none' | 'normal' | 'break-words' | null
filter?: components['schemas']['FilterDefinition'] | null
sortable: boolean
defaultsort: boolean
/** @enum {string|null} */
sortDirection?: 'asc' | 'desc' | null
/** @enum {string} */
type: 'boolean' | 'date' | 'double' | 'HTML' | 'long' | 'string' | 'time' | 'timestamp'
mandatory: boolean
visible: boolean
calculated: boolean
header: boolean
/** @enum {string} */
fieldSource: 'specfield' | 'paramfield'
}
FilterDefinition: {
/** @enum {string} */
type:
| 'Radio'
| 'Select'
| 'multiselect'
| 'daterange'
| 'autocomplete'
| 'text'
| 'date'
| 'granulardaterange'
| 'autocompletemulti'
mandatory: boolean
pattern?: string | null
staticOptions?: components['schemas']['FilterOption'][] | null
dynamicOptions?: components['schemas']['DynamicFilterOption'] | null
defaultValue?: string | null
min?: string | null
max?: string | null
interactive?: boolean | null
/** @enum {string|null} */
defaultGranularity?: 'hourly' | 'daily' | 'weekly' | 'monthly' | 'quarterly' | 'annually' | null
/** @enum {string|null} */
defaultQuickFilterValue?:
| 'today'
| 'yesterday'
| 'last-seven-days'
| 'last-thirty-days'
| 'last-month'
| 'last-full-month'
| 'last-ninety-days'
| 'last-three-months'
| 'last-full-three-months'
| 'last-year'
| 'last-full-year'
| 'tomorrow'
| 'next-seven-days'
| 'next-thirty-days'
| 'next-month'
| 'next-full-month'
| 'next-ninety-days'
| 'next-three-months'
| 'next-full-three-months'
| 'next-year'
| 'next-full-year'
| null
/** Format: int32 */
index?: number | null
/** Format: int32 */
minSelected?: number | null
/** Format: int32 */
maxSelected?: number | null
}
FilterOption: {
name: string
display: string
}
ReportSummary: {
id: string
/** @enum {string} */
template: 'table-header' | 'table-footer' | 'section-header' | 'section-footer' | 'page-header' | 'page-footer'
fields: components['schemas']['SummaryField'][]
}
SingleVariantReportDefinition: {
id: string
name: string
description?: string | null
variant: components['schemas']['VariantDefinition']
}
Specification: {
/** @enum {string} */
template:
| 'list'
| 'list-section'
| 'list-tab'
| 'summary'
| 'summary-section'
| 'parent-child'
| 'parent-child-section'
| 'row-section'
| 'row-section-child'
fields: components['schemas']['FieldDefinition'][]
sections: string[]
}
SummaryField: {
name: string
display?: string | null
/** @enum {string|null} */
type?: 'boolean' | 'date' | 'double' | 'HTML' | 'long' | 'string' | 'time' | 'timestamp' | null
header?: boolean | null
mergeRows?: boolean | null
}
VariantDefinition: {
id: string
name: string
resourceName: string
description?: string | null
specification?: components['schemas']['Specification'] | null
classification?: string | null
printable?: boolean | null
summaries?: components['schemas']['ReportSummary'][] | null
interactive?: boolean | null
childVariants?: components['schemas']['ChildVariantDefinition'][] | null
}
DashboardBucketDefinition: {
/** Format: int64 */
min?: number | null
/** Format: int64 */
max?: number | null
hexColour?: string | null
}
DashboardDefinition: {
id: string
name: string
description?: string | null
sections: components['schemas']['DashboardSectionDefinition'][]
filterFields?: components['schemas']['FieldDefinition'][] | null
}
DashboardOptionDefinition: {
useRagColour?: boolean | null
baseColour?: string | null
buckets?: components['schemas']['DashboardBucketDefinition'][] | null
showLatest?: boolean | null
columnsAsList?: boolean | null
horizontal?: boolean | null
xStacked?: boolean | null
yStacked?: boolean | null
xstacked?: boolean
ystacked?: boolean
}
DashboardSectionDefinition: {
id: string
display: string
description?: string | null
visualisations: components['schemas']['DashboardVisualisationDefinition'][]
}
DashboardVisualisationColumnDefinition: {
id: string
display?: string | null
/** @enum {string|null} */
aggregate?: 'sum' | 'average' | null
/** @enum {string|null} */
unit?: 'NUMBER' | 'PERCENTAGE' | null
displayValue?: boolean | null
axis?: string | null
optional?: boolean | null
/** @enum {string|null} */
type?: 'boolean' | 'date' | 'double' | 'HTML' | 'long' | 'string' | 'time' | 'timestamp' | null
}
DashboardVisualisationColumnsDefinition: {
keys?: components['schemas']['DashboardVisualisationColumnDefinition'][] | null
measures: components['schemas']['DashboardVisualisationColumnDefinition'][]
filters?: components['schemas']['ValueVisualisationColumnDefinition'][] | null
expectNulls: boolean
}
DashboardVisualisationDefinition: {
id: string
variantId?: string
/** @enum {string} */
type:
| 'list'
| 'doughnut'
| 'bar'
| 'bar-timeseries'
| 'line'
| 'scorecard'
| 'scorecard-group'
| 'matrix-timeseries'
| 'line-timeseries'
display: string
description?: string | null
columns: components['schemas']['DashboardVisualisationColumnsDefinition']
options?: components['schemas']['DashboardOptionDefinition'] | null
}
ValueVisualisationColumnDefinition: {
id: string
equals?: string | null
}
StatementExecutionResponse: {
tableId: string
executionId: string
}
StatementCancellationResponse: {
/**
* @description A value that indicates whether the cancel statement succeeded (true).
* @example true
* @example false
*/
cancellationSucceeded: boolean
}
}
responses: never
parameters: never
requestBodies: never
headers: never
pathItems: never
}
export type $defs = Record<string, never>
export interface operations {
getResultTableExpiryState: {
parameters: {
query?: never
header?: never
path?: never
cookie?: never
}
requestBody: {
content: {
'application/json': components['schemas']['ResultTableExpiryStateRequest']
}
}
responses: {
/** @description OK */
200: {
headers: {
[name: string]: unknown
}
content: {
'application/json': components['schemas']['ResultTableExpiryState'][]
}
}
/** @description Bad Request */
400: {
headers: {
[name: string]: unknown
}
content: {
'application/json': components['schemas']['ErrorResponse']
}
}
/** @description Forbidden */
403: {
headers: {
[name: string]: unknown
}
content: {
'application/json': components['schemas']['ErrorResponse']
}
}
/** @description Gone */
410: {
headers: {
[name: string]: unknown
}
content: {
'application/json': components['schemas']['ErrorResponse']
}
}
/** @description Too Many Requests */
429: {
headers: {
[name: string]: unknown
}
content: {
'application/json': components['schemas']['ErrorResponse']
}
}
}
}
requestMissing: {
parameters: {
query?: never
header?: never
path: {
reportId: string
/**
* @description The ID of the variant definition.
* @example list
*/
variantId: string
}
cookie?: never
}
requestBody?: {
content: {
'application/json': string
}
}
responses: {
/** @description OK */
200: {
headers: {
[name: string]: unknown
}
content: {
'application/json': components['schemas']['MissingReportSubmission']
}
}
/** @description Bad Request */
400: {
headers: {
[name: string]: unknown
}
content: {
'application/json': components['schemas']['ErrorResponse']
}
}
/** @description Forbidden */
403: {
headers: {
[name: string]: unknown
}
content: {
'application/json': components['schemas']['ErrorResponse']
}
}
/** @description Gone */
410: {
headers: {
[name: string]: unknown
}
content: {
'application/json': components['schemas']['ErrorResponse']
}
}
/** @description Too Many Requests */
429: {
headers: {
[name: string]: unknown
}
content: {
'application/json': components['schemas']['ErrorResponse']
}
}
}
}
configuredApiDataset: {
parameters: {
query: {
selectedPage?: number
pageSize?: number
sortColumn?: string
sortedAsc?: boolean
/**
* @description The filter query parameters have to start with the prefix "filters." followed by the name of the filter.
* For range filters, like date for instance, these need to be followed by a .start or .end suffix accordingly.
* For multiselect filters, these are passed as one query parameter per filter with a comma separated list of values:
* filters.someMultiselectFilter=a,b,c
* @example {
* "filters.date.start": "2023-04-25",
* "filters.date.end": "2023-05-30",
* "filters.someMultiselectFilter": "a,b,c"
* }
*/
filters: {
[key: string]: string
}
/**
* @description This optional parameter sets the path of the directory of the data product definition files your application will use.
* "This query parameter is intended to be used in conjunction with the `dpr.lib.dataProductDefinitions.host` property to retrieve definition files from another application by using a web client.
* @example definitions/prisons/orphanage
*/
dataProductDefinitionsPath?: string
}
header?: never
path: {
reportId: string
reportVariantId: string
}
cookie?: never
}
requestBody?: never
responses: {
/** @description Bad Request */
400: {
headers: {
[name: string]: unknown
}
content: {
'application/json': components['schemas']['ErrorResponse']
}
}
/** @description Forbidden */
403: {
headers: {
[name: string]: unknown
}
content: {
'application/json': components['schemas']['ErrorResponse']
}
}
/** @description Gone */
410: {
headers: {
[name: string]: unknown
}
content: {
'application/json': components['schemas']['ErrorResponse']
}
}
/** @description Too Many Requests */
429: {
headers: {
[name: string]: unknown
}
content: {
'application/json': components['schemas']['ErrorResponse']
}
}
/** @description default response */
default: {
headers: {
/** @description Provides additional information about why no data has been returned. */
'x-no-data-warning'?: string
[name: string]: unknown
}
content: {
'application/json': {
[key: string]: unknown
}[]
}
}
}
}
getQueryExecutionResult: {
parameters: {
query: {
dataProductDefinitionsPath?: string
selectedPage?: number
pageSize?: number
/**
* @description The filter query parameters have to start with the prefix "filters." followed by the name of the filter.
* For range filters, like date for instance, these need to be followed by a .start or .end suffix accordingly.
* For multiselect filters, these are passed as one query parameter per filter with a comma separated list of values:
* filters.someMultiselectFilter=a,b,c
* @example {
* "filters.date.start": "2023-04-25",
* "filters.date.end": "2023-05-30",
* "filters.someMultiselectFilter": "a,b,c"
* }
*/
filters: {
[key: string]: string
}
sortColumn?: string
sortedAsc?: boolean
}
header?: never
path: {
reportId: string
reportVariantId: string
tableId: string
}
cookie?: never
}
requestBody?: never
responses: {
/** @description OK */
200: {
headers: {
[name: string]: unknown
}
content: {
'application/json': {
[key: string]: unknown
}[]
}
}
/** @description Bad Request */
400: {
headers: {
[name: string]: unknown
}
content: {
'application/json': components['schemas']['ErrorResponse']
}
}
/** @description Forbidden */
403: {
headers: {
[name: string]: unknown
}
content: {
'application/json': components['schemas']['ErrorResponse']
}
}
/** @description Gone */
410: {
headers: {
[name: string]: unknown
}
content: {
'application/json': components['schemas']['ErrorResponse']
}
}
/** @description Too Many Requests */
429: {
headers: {
[name: string]: unknown
}
content: {
'application/json': components['schemas']['ErrorResponse']
}
}
}
}
getSummaryQueryExecutionResult: {
parameters: {
query: {
dataProductDefinitionsPath?: string
/**
* @description The filter query parameters have to start with the prefix "filters." followed by the name of the filter.
* For range filters, like date for instance, these need to be followed by a .start or .end suffix accordingly.
* For multiselect filters, these are passed as one query parameter per filter with a comma separated list of values:
* filters.someMultiselectFilter=a,b,c
* @example {
* "filters.date.start": "2023-04-25",
* "filters.date.end": "2023-05-30",
* "filters.someMultiselectFilter": "a,b,c"
* }
*/
filters: {
[key: string]: string
}
}
header?: never
path: {
reportId: string
reportVariantId: string
tableId: string
summaryId: string
}
cookie?: never
}
requestBody?: never
responses: {
/** @description OK */
200: {
headers: {
[name: string]: unknown
}
content: {
'application/json': {
[key: string]: unknown
}[]
}
}
/** @description Bad Request */
400: {
headers: {
[name: string]: unknown
}
content: {
'application/json': components['schemas']['ErrorResponse']
}
}
/** @description Forbidden */
403: {
headers: {
[name: string]: unknown
}
content: {
'application/json': components['schemas']['ErrorResponse']
}
}
/** @description Gone */
410: {
headers: {
[name: string]: unknown
}
content: {
'application/json': components['schemas']['ErrorResponse']
}
}
/** @description Too Many Requests */
429: {
headers: {
[name: string]: unknown
}
content: {
'application/json': components['schemas']['ErrorResponse']
}
}
}
}
downloadCsv: {
parameters: {
query: {
dataProductDefinitionsPath?: string
/**
* @description The filter query parameters have to start with the prefix "filters." followed by the name of the filter.
* For range filters, like date for instance, these need to be followed by a .start or .end suffix accordingly.
* For multiselect filters, these are passed as one query parameter per filter with a comma separated list of values:
* filters.someMultiselectFilter=a,b,c
* @example {
* "filters.date.start": "2023-04-25",
* "filters.date.end": "2023-05-30",
* "filters.someMultiselectFilter": "a,b,c"
* }
*/
filters: {
[key: string]: string
}
/** @description List of column names to include in the generated report. If not provided all the columns will be returned. */
columns?: string[]
sortColumn?: string
sortedAsc?: boolean
}
header?: never
path: {
reportId: string
reportVariantId: string
tableId: string
}
cookie?: never
}
requestBody?: never
responses: {
/** @description OK */
200: {
headers: {
[name: string]: unknown
}
content?: never
}
/** @description Bad Request */
400: {
headers: {
[name: string]: unknown
}
content: {
'application/json': components['schemas']['ErrorResponse']
}
}
/** @description Forbidden */
403: {
headers: {
[name: string]: unknown
}
content: {
'application/json': components['schemas']['ErrorResponse']
}
}
/** @description Gone */
410: {
headers: {
[name: string]: unknown
}
content: {
'application/json': components['schemas']['ErrorResponse']
}
}
/** @description Too Many Requests */
429: {
headers: {
[name: string]: unknown
}
content: {
'application/json': components['schemas']['ErrorResponse']
}
}
}
}
getInteractiveExternalTableRowCount: {
parameters: {
query: {
filters: {
[key: string]: string
}
dataProductDefinitionsPath?: string
}
header?: never
path: {
tableId: string
reportId: string
reportVariantId: string
}
cookie?: never
}
requestBody?: never
responses: {
/** @description Bad Request */
400: {
headers: {
[name: string]: unknown
}
content: {
'application/json': components['schemas']['ErrorResponse']
}
}
/** @description Forbidden */
403: {
headers: {
[name: string]: unknown
}
content: {
'application/json': components['schemas']['ErrorResponse']
}
}
/** @description Gone */
410: {
headers: {
[name: string]: unknown
}
content: {
'application/json': components['schemas']['ErrorResponse']
}
}
/** @description Too Many Requests */
429: {
headers: {
[name: string]: unknown
}
content: {
'application/json': components['schemas']['ErrorResponse']
}
}
/** @description default response */
default: {
headers: {
/** @description Provides additional information about why no data has been returned. */
'x-no-data-warning'?: string
[name: string]: unknown
}
content: {
'application/json': components['schemas']['Count']
}
}
}
}
getQueryExecutionStatus: {
parameters: {
query?: {
/**
* @description This optional parameter sets the path of the directory of the data product definition files your application will use.
* "This query parameter is intended to be used in conjunction with the `dpr.lib.dataProductDefinitions.host` property to retrieve definition files from another application by using a web client.
* @example definitions/prisons/orphanage
*/
dataProductDefinitionsPath?: string
/**
* @deprecated
* @description External table ID.
* @example reports._6b3c6dfb_f601_4795_8ee5_2ad65b7fb283
*/
tableId?: string
}
header?: never
path: {
reportId: string
reportVariantId: string
statementId: string
}
cookie?: never
}
requestBody?: never
responses: {
/** @description OK */
200: {
headers: {
[name: string]: unknown
}
content: {
'application/json': components['schemas']['StatementExecutionStatus']
}
}
/** @description Bad Request */
400: {
headers: {
[name: string]: unknown
}
content: {
'application/json': components['schemas']['ErrorResponse']
}
}
/** @description Forbidden */
403: {
headers: {
[name: string]: unknown
}
content: {
'application/json': components['schemas']['ErrorResponse']
}
}
/** @description Gone */
410: {
headers: {
[name: string]: unknown
}
content: {
'application/json': components['schemas']['ErrorResponse']
}
}
/** @description Too Many Requests */
429: {
headers: {
[name: string]: unknown
}
content: {
'application/json': components['schemas']['ErrorResponse']
}
}
}
}
downloadCsv_1: {
parameters: {
query: {
dataProductDefinitionsPath?: string
/**
* @description The filter query parameters have to start with the prefix "filters." followed by the name of the filter.
* For range filters, like date for instance, these need to be followed by a .start or .end suffix accordingly.
* For multiselect filters, these are passed as one query parameter per filter with a comma separated list of values:
* filters.someMultiselectFilter=a,b,c
* @example {
* "filters.date.start": "2023-04-25",
* "filters.date.end": "2023-05-30",
* "filters.someMultiselectFilter": "a,b,c"
* }
*/
filters: {
[key: string]: string
}
/** @description List of column names to include in the generated report. If not provided all the columns will be returned. */
columns?: string[]
sortColumn?: string
sortedAsc?: boolean
}
header?: never
path: {
reportId: string
reportVariantId: string
}
cookie?: never
}
requestBody?: never
responses: {
/** @description OK */
200: {
headers: {
[name: string]: unknown
}
content?: never
}
/** @description Bad Request */
400: {
headers: {
[name: string]: unknown
}
content: {
'application/json': components['schemas']['ErrorResponse']
}
}
/** @description Forbidden */
403: {
headers: {
[name: string]: unknown
}
content: {
'application/json': components['schemas']['ErrorResponse']
}
}
/** @description Gone */
410: {
headers: {
[name: string]: unknown
}
content: {
'application/json': components['schemas']['ErrorResponse']
}
}
/** @description Too Many Requests */
429: {
headers: {
[name: string]: unknown
}
content: {
'application/json': components['schemas']['ErrorResponse']
}
}
}
}
configuredApiCount: {
parameters: {
query: {
/**
* @description The filter query parameters have to start with the prefix "filters." followed by the name of the filter.
* For range filters, like date for instance, these need to be followed by a .start or .end suffix accordingly.
* For multiselect filters, these are passed as one query parameter per filter with a comma separated list of values:
* filters.someMultiselectFilter=a,b,c
* @example {
* "filters.date.start": "2023-04-25",
* "filters.date.end": "2023-05-30",
* "filters.someMultiselectFilter": "a,b,c"
* }
*/
filters: {
[key: string]: string
}
/**
* @description This optional parameter sets the path of the directory of the data product definition files your application will use.
* "This query parameter is intended to be used in conjunction with the `dpr.lib.dataProductDefinitions.host` property to retrieve definition files from another application by using a web client.
* @example definitions/prisons/orphanage
*/
dataProductDefinitionsPath?: string
}
header?: never
path: {
reportId: string
reportVariantId: string
}
cookie?: never
}
requestBody?: never
responses: {
/** @description Bad Request */
400: {
headers: {
[name: string]: unknown
}
content: {
'application/json': components['schemas']['ErrorResponse']
}
}
/** @description Forbidden */
403: {
headers: {
[name: string]: unknown
}
content: {
'application/json': components['schemas']['ErrorResponse']
}
}
/** @description Gone */
410: {
headers: {
[name: string]: unknown
}
content: {
'application/json': components['schemas']['ErrorResponse']
}
}
/** @description Too Many Requests */
429: {
headers: {
[name: string]: unknown
}
content: {
'application/json': components['schemas']['ErrorResponse']
}
}
/** @description default response */
default: {
headers: {
/** @description Provides additional information about why no data has been returned. */
'x-no-data-warning'?: string
[name: string]: unknown
}
content: {
'application/json': components['schemas']['Count']
}
}
}
}
configuredApiDatasetForDashboard: {
parameters: {
query: {
selectedPage?: number
pageSize?: number
sortColumn?: string
sortedAsc?: boolean
/**
* @description The filter query parameters have to start with the prefix "filters." followed by the name of the filter.
* For range filters, like date for instance, these need to be followed by a .start or .end suffix accordingly.
* For multiselect filters, these are passed as one query parameter per filter with a comma separated list of values:
* filters.someMultiselectFilter=a,b,c
* @example {
* "filters.date.start": "2023-04-25",
* "filters.date.end": "2023-05-30",
* "filters.someMultiselectFilter": "a,b,c"
* }
*/
filters: {
[key: string]: string
}
/**
* @description This optional parameter sets the path of the directory of the data product definition files your application will use.
* "This query parameter is intended to be used in conjunction with the `dpr.lib.dataProductDefinitions.host` property to retrieve definition files from another application by using a web client.
* @example definitions/prisons/orphanage
*/
dataProductDefinitionsPath?: string
}
header?: never
path: {
reportId: string
dashboardId: string
}
cookie?: never
}
requestBody?: never
responses: {
/** @description Bad Request */
400: {
headers: {
[name: string]: unknown
}
content: {
'application/json': components['schemas']['ErrorResponse']
}
}
/** @description Forbidden */
403: {
headers: {
[name: string]: unknown
}
content: {
'application/json': components['schemas']['ErrorResponse']
}
}
/** @description Gone */
410: {
headers: {
[name: string]: unknown
}
content: {
'application/json': components['schemas']['ErrorResponse']
}
}
/** @description Too Many Requests */
429: {
headers: {
[name: string]: unknown
}
content: {
'application/json': components['schemas']['ErrorResponse']
}
}
/** @description default response */
default: {
headers: {
/** @description Provides additional information about why no data has been returned. */
'x-no-data-warning'?: string
[name: string]: unknown
}
content: {
'application/json': {
[key: string]: unknown
}[]
}
}
}
}
getDashboardQueryExecutionResult: {
parameters: {
query: {
dataProductDefinitionsPath?: string
selectedPage?: number
pageSize?: number
/**
* @description The filter query parameters have to start with the prefix "filters." followed by the name of the filter.
* For range filters, like date for instance, these need to be followed by a .start or .end suffix accordingly.
* For multiselect filters, these are passed as one query parameter per filter with a comma separated list of values:
* filters.someMultiselectFilter=a,b,c
* @example {
* "filters.date.start": "2023-04-25",
* "filters.date.end": "2023-05-30",
* "filters.someMultiselectFilter": "a,b,c"
* }
*/
filters: {
[key: string]: string
}
}
header?: never
path: {
reportId: string
dashboardId: string
tableId: string
}
cookie?: never
}
requestBody?: never
responses: {
/** @description OK */
200: {
headers: {
[name: string]: unknown
}
content: {
'application/json': {
[key: string]: unknown
}[][]
}
}
/** @description Bad Request */
400: {
headers: {
[name: string]: unknown
}
content: {
'application/json': components['schemas']['ErrorResponse']
}
}
/** @description Forbidden */
403: {
headers: {
[name: string]: unknown
}
content: {
'application/json': components['schemas']['ErrorResponse']
}
}
/** @description Gone */
410: {
headers: {
[name: string]: unknown
}
content: {
'application/json': components['schemas']['ErrorResponse']
}
}
/** @description Too Many Requests */
429: {
headers: {
[name: string]: unknown
}
content: {
'application/json': components['schemas']['ErrorResponse']
}
}
}
}
getDashboardExecutionStatus: {
parameters: {
query?: {
/**
* @description This optional parameter sets the path of the directory of the data product definition files your application will use.
* "This query parameter is intended to be used in conjunction with the `dpr.lib.dataProductDefinitions.host` property to retrieve definition files from another application by using a web client.
* @example definitions/prisons/orphanage
*/
dataProductDefinitionsPath?: string
/**
* @deprecated
* @description External table ID.
* @example reports._