openapi: 3.0.1 info: title: Coveo Activity Activities Reports API - Version 15 API description: API for Coveo Platform termsOfService: https://www.coveo.com/en/support/terms-agreements contact: name: Coveo url: https://connect.coveo.com/s/discussions version: 1.0.0 servers: - url: https://platform.cloud.coveo.com description: Coveo public API endpoint security: - oauth2: - full tags: - name: Reports API - Version 15 paths: /v15/reports: get: tags: - Reports API - Version 15 summary: Get the Persisted Reports of One or All Types operationId: get__v15_reports parameters: - name: type in: query description: The type of the report. Must be either 'explorer' or 'dashboard'. schema: type: string enum: - DASHBOARD - EXPLORER - EXPLORER,DASHBOARD - name: org in: query description: The name of the organization (Coveo Cloud V2 only) schema: type: string - name: includeConfig in: query description: Whether to include the detailed configuration of the report in the response. schema: type: boolean default: true responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/ReportsResponseV15' post: tags: - Reports API - Version 15 summary: Create a Report operationId: post__v15_reports parameters: - name: org in: query description: The name of the organization (Coveo Cloud V2 only) schema: type: string requestBody: description: The report configuration content: application/json: schema: $ref: '#/components/schemas/ReportModelV15' required: true responses: '201': description: Created content: application/json: schema: $ref: '#/components/schemas/ReportIdResponseV15' /v15/reports/{reportId}: get: tags: - Reports API - Version 15 summary: Get a Report operationId: get__v15_reports_{reportId} parameters: - name: reportId in: path description: The unique identifier of a report. This id is generated by the server when creating a report. required: true schema: type: string - name: org in: query description: The name of the organization (Coveo Cloud V2 only) schema: type: string - name: tz in: query description: Timezone used for calculations. schema: type: string responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/ReportResponseV15' put: tags: - Reports API - Version 15 summary: Update a Report operationId: put__v15_reports_{reportId} parameters: - name: reportId in: path description: The unique identifier of a report. This id is generated by the server when creating a report. required: true schema: type: string - name: org in: query description: The name of the organization (Coveo Cloud V2 only) schema: type: string requestBody: description: The report configuration content: application/json: schema: $ref: '#/components/schemas/ReportModelV15' required: true responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/ReportIdResponseV15' delete: tags: - Reports API - Version 15 summary: Delete a Report operationId: delete__v15_reports_{reportId} parameters: - name: reportId in: path description: The unique identifier of a report. This id is generated by the server when creating a report. required: true schema: type: string - name: org in: query description: The name of the organization (Coveo Cloud V2 only) schema: type: string responses: '204': description: No content /v15/reports/{reportId}/access: get: tags: - Reports API - Version 15 summary: Get the Users and Groups Who Can View a Report operationId: get__v15_reports_{reportId}_access parameters: - name: reportId in: path description: The unique identifier of a report. This id is generated by the server when creating a report. required: true schema: type: string - name: org in: query description: The name of the organization (Coveo Cloud V2 only) schema: type: string responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/ReportAccessResponseV15' put: tags: - Reports API - Version 15 summary: Set the Users and Groups Who Are Allowed to View a Report operationId: put__v15_reports_{reportId}_access parameters: - name: reportId in: path description: The unique identifier of a report. This id is generated by the server when creating a report. required: true schema: type: string - name: org in: query description: The name of the organization (Coveo Cloud V2 only) schema: type: string requestBody: description: The entities that are allowed to view the report. content: application/json: schema: $ref: '#/components/schemas/ReportAccessModelV15' required: true responses: '204': description: No content /v15/reports/monitoring/health: get: tags: - Reports API - Version 15 summary: Health Check for the Reports Service operationId: get__v15_reports_monitoring_health responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/StatusResponse' /v15/reports/status: get: tags: - Reports API - Version 15 summary: Get the Reports Service Status operationId: get__v15_reports_status responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/StatusResponse' /v15/reports/templates/{templateId}: get: tags: - Reports API - Version 15 summary: Get a Report Template operationId: get__v15_reports_templates_{templateId} parameters: - name: templateId in: path description: The unique identifier of a template. required: true schema: type: string - name: includeMetadata in: query description: Whether to include metadata about the report template. schema: type: boolean - name: org in: query description: The name of the organization (Coveo Cloud V2 only) schema: type: string responses: '200': description: OK content: application/json: schema: type: array items: $ref: '#/components/schemas/TemplateResponseV15' /v15/reports/templates: get: tags: - Reports API - Version 15 summary: Get Metadata About Available Report Templates operationId: get__v15_reports_templates parameters: - name: type in: query description: The type of the report. Must be either 'explorer' or 'dashboard'. required: true schema: type: string enum: - DASHBOARD - EXPLORER default: DASHBOARD - name: includeMetadata in: query description: Whether to include metadata about the report template. schema: type: boolean - name: org in: query description: The name of the organization (Coveo Cloud V2 only) schema: type: string responses: '200': description: OK content: application/json: schema: type: array items: $ref: '#/components/schemas/TemplateMetadataResponseV15' /v15/reports/{reportId}/users: get: tags: - Reports API - Version 15 summary: Get the Users Who Can View a Report operationId: get__v15_reports_{reportId}_users parameters: - name: reportId in: path description: The unique identifier of a report. This id is generated by the server when creating a report. required: true schema: type: string - name: org in: query description: The name of the organization (Coveo Cloud V2 only) schema: type: string responses: '200': description: OK content: application/json: schema: $ref: '#/components/schemas/ReportUsersResponseV15' put: tags: - Reports API - Version 15 summary: Set the Users Who Are Allowed to View a Report operationId: put__v15_reports_{reportId}_users parameters: - name: reportId in: path description: The unique identifier of a report. This id is generated by the server when creating a report. required: true schema: type: string - name: org in: query description: The name of the organization (Coveo Cloud V2 only) schema: type: string requestBody: description: The IDs of the allowed users. content: application/json: schema: uniqueItems: true type: array items: type: string required: true responses: '204': description: No content components: schemas: ReportsResponseV15: type: object properties: reports: uniqueItems: true type: array description: The reports the user can view. items: $ref: '#/components/schemas/ReportResponseV15' description: The reports the user can view. GroupResponseV15: type: object properties: groupId: type: string description: The group id. account: type: string description: The group account. filters: uniqueItems: true type: array description: The filters that are applied to the users of the group. items: type: string description: The filters that are applied to the users of the group. reports: uniqueItems: true type: array description: The reports the users of the group can view. items: type: string description: The reports the users of the group can view. description: A group of users. ReportIdResponseV15: type: object properties: id: type: string description: The report id. description: A report id. ReportAccessModelV15: type: object properties: accessType: type: string description: Whether the report is public or private. Allowed values are 'PUBLIC', 'PRIVATE'. enum: - PUBLIC - PRIVATE - PUBLIC - PRIVATE allowedUsers: uniqueItems: true type: array description: The ids of the users allowed to access the report. items: type: string description: The ids of the users allowed to access the report. allowedGroups: uniqueItems: true type: array description: The ids of the groups allowed to access the report. items: type: string description: The ids of the groups allowed to access the report. description: The access model of a report. ReportUsersResponseV15: type: object properties: access: type: string description: The access type of the report. Can be PUBLIC or PRIVATE. enum: - PUBLIC - PRIVATE allowedUsers: type: array description: The users allowed to access the specified report. items: $ref: '#/components/schemas/UserResponseV15' description: The users allowed to access the specified report. TemplateResponseV15: type: object properties: id: type: string description: The template id. configuration: type: object additionalProperties: type: object description: The JSON report configuration of the template. description: The JSON report configuration of the template. title: type: string description: The template title. description: type: string description: The template description. category: type: string description: The template category. description: Information about a template. ReportModelV15: required: - allAnalyticsViewer - configuration - displayName - type type: object properties: displayName: type: string description: The display name of the report. type: type: string description: The type of the report. Must be either 'explorer' or 'dashboard'. enum: - DASHBOARD - EXPLORER allAnalyticsViewer: type: boolean description: Whether the report should be available to all analytics viewer. configuration: type: object additionalProperties: type: object description: The configuration of the report. Must be a json. description: The configuration of the report. Must be a json. filters: uniqueItems: true type: array description: The ids of the persisted filters associated with the report. items: type: string description: The ids of the persisted filters associated with the report. description: The configuration of a report. StatusResponse: type: object description: Service's status information TemplateMetadataResponseV15: type: object properties: id: type: string description: The template id. title: type: string description: The template title. description: type: string description: The template description. category: type: string description: The template category. description: Information about a template. ReportResponseV15: type: object properties: id: type: string description: The report id. account: type: string description: The report account. displayName: type: string description: The report display name. type: type: string description: The report type. configuration: type: object additionalProperties: type: object description: The report configuration. description: The report configuration. allAnalyticsViewer: type: boolean description: Whether the report is available to all analytics viewer. filters: uniqueItems: true type: array description: List of associated filters. items: type: string description: List of associated filters. description: A report configuration. ReportAccessResponseV15: type: object properties: accessType: type: string description: The access type of the report. Can be PUBLIC or PRIVATE. enum: - PUBLIC - PRIVATE allowedUsers: type: array description: The users allowed to access the specified report. items: $ref: '#/components/schemas/UserResponseV15' allowedGroups: type: array description: The groups allowed to access the specified report. items: $ref: '#/components/schemas/GroupResponseV15' description: The users and groups allowed to access the report UserResponseV15: type: object properties: userId: type: string description: The user id. account: type: string description: The user account. filters: uniqueItems: true type: array description: The filters that are applied to the user items: type: string description: The filters that are applied to the user reports: uniqueItems: true type: array description: The reports the user can view. items: type: string description: The reports the user can view. description: A user. securitySchemes: oauth2: type: oauth2 flows: authorizationCode: authorizationUrl: https://platform.cloud.coveo.com/oauth/authorize tokenUrl: https://platform.cloud.coveo.com/oauth/token scopes: full: required