openapi: 3.0.1 info: title: Analytics.Conceptual.Service.Interfaces.Public.V1 AnnotationService BillableSummaryReports API description: Analytics.Conceptual.Service.Interfaces.Public version: V1 servers: - url: /Relativity.REST/api description: The URL prefix for all Kepler services tags: - name: BillableSummaryReports paths: /v4/billable-summary-reports/file: get: tags: - BillableSummaryReports summary: Get a billable summary report file description: This endpoint retrieves a billable summary report file based on the container name and report date. Returns 403 if the caller does not have access to the requested container. parameters: - name: Container in: query required: true schema: type: string - name: Date in: query required: true schema: pattern: ^\d{8}$ type: string responses: '200': description: Success content: text/plain: schema: type: string format: binary application/json: schema: type: string format: binary text/json: schema: type: string format: binary '400': description: Bad Request content: text/plain: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' application/json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' text/json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' '401': description: Unauthorized content: text/plain: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' application/json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' text/json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' '403': description: Forbidden content: text/plain: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' application/json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' text/json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' '404': description: Not Found content: text/plain: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' application/json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' text/json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' /v4/billable-summary-reports: get: tags: - BillableSummaryReports summary: Get billable summary reports list description: This endpoint retrieves a paginated list of all available billable summary reports. parameters: - name: start in: query schema: type: integer format: int32 - name: limit in: query schema: type: integer format: int32 responses: '200': description: Success content: text/plain: schema: $ref: '#/components/schemas/BillableSummaryReportPageResponse' application/json: schema: $ref: '#/components/schemas/BillableSummaryReportPageResponse' text/json: schema: $ref: '#/components/schemas/BillableSummaryReportPageResponse' '400': description: Bad Request content: text/plain: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' application/json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' text/json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' '401': description: Unauthorized content: text/plain: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' application/json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' text/json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' /v4/billable-summary-reports/latest: get: tags: - BillableSummaryReports summary: Get latest billable summary report per container description: Returns the most recent billable summary report for each unique container the caller has access to. responses: '200': description: Success content: text/plain: schema: $ref: '#/components/schemas/BillableSummaryReportListResponse' application/json: schema: $ref: '#/components/schemas/BillableSummaryReportListResponse' text/json: schema: $ref: '#/components/schemas/BillableSummaryReportListResponse' '400': description: Bad Request content: text/plain: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' application/json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' text/json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' '401': description: Unauthorized content: text/plain: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' application/json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' text/json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' /v4/billable-summary-reports/directory-details: post: tags: - BillableSummaryReports summary: Get billable summary report directory details description: Retrieves details for a specific directory inside a billable summary report based on the container, report date, and path. Send the request body as JSON with container, date, and path properties. Returns 403 if the caller does not have access to the requested container. requestBody: content: application/json: schema: $ref: '#/components/schemas/BillableSummaryReportDirectoryDetailsRequest' text/json: schema: $ref: '#/components/schemas/BillableSummaryReportDirectoryDetailsRequest' application/*+json: schema: $ref: '#/components/schemas/BillableSummaryReportDirectoryDetailsRequest' responses: '200': description: Success content: text/plain: schema: $ref: '#/components/schemas/BillableSummaryReportDirectoryDetailsResponse' application/json: schema: $ref: '#/components/schemas/BillableSummaryReportDirectoryDetailsResponse' text/json: schema: $ref: '#/components/schemas/BillableSummaryReportDirectoryDetailsResponse' '400': description: Bad Request content: text/plain: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' application/json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' text/json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' '401': description: Unauthorized content: text/plain: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' application/json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' text/json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' '403': description: Forbidden content: text/plain: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' application/json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' text/json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' '404': description: Not Found content: text/plain: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' application/json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' text/json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' '429': description: Too Many Requests content: text/plain: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' application/json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' text/json: schema: $ref: '#/components/schemas/Microsoft.AspNetCore.Mvc.ProblemDetails' components: schemas: BillableSummaryReportListResponse: type: object properties: reports: type: array items: $ref: '#/components/schemas/BillableSummaryReport' nullable: true additionalProperties: false BillableSummaryReportDirectoryDetailsRequest: required: - container - date - path type: object properties: container: type: string minLength: 1 date: type: string pattern: ^\d{8}$ path: type: string description: Path within the container. Use an empty string ("") to target the container root. A value of "/" is normalized to the empty string and is therefore also treated as the container root. additionalProperties: false BillableSummaryReportDirectoryDetailsResponse: type: object properties: name: type: string nullable: true level: type: integer format: int32 sizeBytes: type: integer format: int64 files: type: integer format: int32 createdDateUtc: type: string format: date-time nullable: true lastModifiedDateUtc: type: string format: date-time nullable: true additionalProperties: false Microsoft.AspNetCore.Mvc.ProblemDetails: type: object properties: type: type: string nullable: true title: type: string nullable: true status: type: integer format: int32 nullable: true detail: type: string nullable: true instance: type: string nullable: true additionalProperties: {} BillableSummaryReportPageResponse: type: object properties: reports: type: array items: $ref: '#/components/schemas/BillableSummaryReport' nullable: true totalCount: type: integer format: int32 additionalProperties: false BillableSummaryReport: type: object properties: container: type: string nullable: true date: type: string format: date-time additionalProperties: false