openapi: 3.2.0 info: title: Certificate Manager - SaaS Certificate Expiration Reports… version: '1.0' servers: - description: US Region url: https://api.venafi.cloud - description: EU Region url: https://api.eu.venafi.cloud - description: AU Region url: https://api.au.venafi.cloud - description: UK Region url: https://api.uk.venafi.cloud - description: SG Region url: https://api.sg.venafi.cloud - description: CA Region url: https://api.ca.venafi.cloud tags: - name: Certificate Expiration Reports paths: /v1/expirationreports/tenantconfiguration: get: description: Retrieve the certificate expiration reports configuration for the current tenant operationId: get-v1-tenant-expiration-reports-configuration responses: '200': content: application/json: examples: simple: $ref: '#/components/examples/TenantExpirationReportsConfigurationExample' schema: $ref: '#/components/schemas/TenantExpirationReportsConfiguration' description: Success '400': description: BadRequest '401': description: Unauthorized '500': description: InternalServerError security: - tppl-api-key: [] summary: Retrieve the certificate expiration reports configuration tags: - Certificate Expiration Reports x-rbac: cm-only: true permissions: access_type: read description: Ability to get the certificate expiration reports configuration name: ngts.expiration_report_tenant_configuration.get roles: - PKIAdmin put: description: Update the certificate expiration reports configuration for the current tenant operationId: put-v1-tenant-expiration-reports-configuration requestBody: content: application/json: examples: simple: $ref: '#/components/examples/TenantExpirationReportsConfigurationExample' schema: $ref: '#/components/schemas/TenantExpirationReportsConfiguration' description: The options to apply required: true responses: '200': content: application/json: examples: simple: $ref: '#/components/examples/TenantExpirationReportsConfigurationExample' schema: $ref: '#/components/schemas/TenantExpirationReportsConfiguration' description: Success. The tenant configuration was successfully updated. '400': description: BadRequest '401': description: Unauthorized '500': description: InternalServerError security: - tppl-api-key: [] summary: Update the certificate expiration reports configuration tags: - Certificate Expiration Reports x-rbac: cm-only: true permissions: access_type: write description: Ability to update the certificate expiration reports configuration name: ngts.expiration_report_tenant_configuration.update roles: - PKIAdmin /v1/expirationreports/trigger: post: description: The certificate reports job is normally scheduled per the tenant configuration. This operation attempts to start the process for the current tenant now. operationId: post-v1-run-reports responses: '204': description: Success. The reports check process was triggered. security: - tppl-api-key: [] summary: Attempt to initiate the certificate reports process tags: - Certificate Expiration Reports x-rbac: cm-only: true permissions: access_type: write description: Ability to initiate the certificate reports process name: ngts.expiration_report.trigger roles: - PKIAdmin components: schemas: Role1: enum: - SYSTEM_ADMIN - OUTAGE_DETECTION_PLATFORM_ADMIN - OUTAGE_DETECTION_PKI_ADMIN - OUTAGE_DETECTION_RESOURCE_OWNER - OUTAGE_DETECTION_GUEST type: string TenantExpirationReportsConfiguration: properties: additionalRecipients: description: A list of users and/or teams who should be added as recipients. example: - id: 22153ae0-4352-11ee-b95c-3531a284802b type: User - id: 22153ae0-4352-11ee-b95c-12345abcd123 type: Team items: $ref: '#/components/schemas/Recipient' type: array uniqueItems: true channels: description: A list of channels that should be used to deliver the notification. example: - email items: $ref: '#/components/schemas/Channel' minItems: 1 type: array uniqueItems: true enabled: description: If true, then the system will send reports providing details of certificates which are nearing expiration. example: true type: boolean expiringWithinDays: description: Any certificates which will expire within the number of days specified here will be included in the report. example: 30 type: integer ignoreAfterDays: description: Any certificates which have expired for more than the specified days will be excluded in the report. example: 30 type: integer roles: description: All users with the specified VaaS roles will be added as a report recipient. example: - SYSTEM_ADMIN items: $ref: '#/components/schemas/Role1' type: array uniqueItems: true schedule: description: A cron string representing the desired schedule for delivering reports. Note that currently reports may not be sent more than once per day. The `hour` and `minute` fields of the cron schedule will be ignored. example: 0 0 * * Mon type: string type: object Recipient: properties: id: description: The ID of a user or team who should be included as a recipient. format: UUID type: string type: description: The type of the recipient. enum: - User - Team type: string required: - type - id type: object Channel: enum: - email type: string examples: TenantExpirationReportsConfigurationExample: value: additionalRecipients: - id: 22153ae0-4352-11ee-b95c-3531a284802b type: User - id: 22153ae0-4352-11ee-b95c-12345abcd123 type: Team channels: - email enabled: true expiringWithinDays: 30 ignoreAfterDays: 30 roles: - SYSTEM_ADMIN schedule: 0 0 * * Mon securitySchemes: service-account: in: header name: service-account type: apiKey tppl-api-key: in: header name: tppl-api-key type: apiKey x-readme: samples-languages: - curl - go - java - javascript - node - python