openapi: 3.2.0 info: description: '# Authentication The Chef Automate API typically uses an API token passed in the header of your API request.' title: Chef Automate API Documentation Data Lifecycle API termsOfService: https://www.chef.io/terms-and-conditions-of-use/ contact: url: https://www.chef.io/support/ email: support@chef.io license: name: Apache 2.0 url: https://github.com/chef/automate/blob/main/LICENSE version: version not set x-logo: altText: Chef logo url: /images/chef-automate-logo.svg servers: - url: https://automate.chef.io tags: - name: DataLifecycle x-displayName: Data Lifecycle paths: /api/v0/data-lifecycle/compliance/config: put: tags: - DataLifecycle summary: SetComplianceConfig configures the compliance data lifecycle scheduler and jobs operationId: DataLifecycle_SetComplianceConfig responses: '200': description: A successful response. content: application/json: schema: $ref: '#/components/schemas/chef.automate.api.data_lifecycle.SetComplianceConfigResponse' default: description: An unexpected error response. content: application/json: schema: $ref: '#/components/schemas/grpc.gateway.runtime.Error' requestBody: content: application/json: schema: $ref: '#/components/schemas/chef.automate.api.data_lifecycle.SetComplianceConfigRequest' required: true /api/v0/data-lifecycle/compliance/run: post: tags: - DataLifecycle summary: RunCompliance runs the compliance data lifecycle jobs operationId: DataLifecycle_RunCompliance responses: '200': description: A successful response. content: application/json: schema: $ref: '#/components/schemas/chef.automate.api.data_lifecycle.RunComplianceResponse' default: description: An unexpected error response. content: application/json: schema: $ref: '#/components/schemas/grpc.gateway.runtime.Error' requestBody: content: application/json: schema: $ref: '#/components/schemas/chef.automate.api.data_lifecycle.RunComplianceRequest' required: true /api/v0/data-lifecycle/compliance/status: get: tags: - DataLifecycle summary: GetComplianceStatus returns the compliance job scheduler status operationId: DataLifecycle_GetComplianceStatus responses: '200': description: A successful response. content: application/json: schema: $ref: '#/components/schemas/chef.automate.api.data_lifecycle.GetComplianceStatusResponse' default: description: An unexpected error response. content: application/json: schema: $ref: '#/components/schemas/grpc.gateway.runtime.Error' /api/v0/data-lifecycle/config: put: tags: - DataLifecycle summary: SetConfig provides a singular endpoint for configuring all data lifecycle jobs operationId: DataLifecycle_SetConfig responses: '200': description: A successful response. content: application/json: schema: $ref: '#/components/schemas/chef.automate.api.data_lifecycle.SetConfigResponse' default: description: An unexpected error response. content: application/json: schema: $ref: '#/components/schemas/grpc.gateway.runtime.Error' requestBody: content: application/json: schema: $ref: '#/components/schemas/chef.automate.api.data_lifecycle.SetConfigRequest' required: true /api/v0/data-lifecycle/event-feed/config: put: tags: - DataLifecycle summary: SetEventFeedConfig configures the event feed data lifecycle scheduler and jobs operationId: DataLifecycle_SetEventFeedConfig responses: '200': description: A successful response. content: application/json: schema: $ref: '#/components/schemas/chef.automate.api.data_lifecycle.SetEventFeedConfigResponse' default: description: An unexpected error response. content: application/json: schema: $ref: '#/components/schemas/grpc.gateway.runtime.Error' requestBody: content: application/json: schema: $ref: '#/components/schemas/chef.automate.api.data_lifecycle.SetEventFeedConfigRequest' required: true /api/v0/data-lifecycle/event-feed/run: post: tags: - DataLifecycle summary: RunEventFeed runs the event feed data lifecycle jobs operationId: DataLifecycle_RunEventFeed responses: '200': description: A successful response. content: application/json: schema: $ref: '#/components/schemas/chef.automate.api.data_lifecycle.RunEventFeedResponse' default: description: An unexpected error response. content: application/json: schema: $ref: '#/components/schemas/grpc.gateway.runtime.Error' requestBody: content: application/json: schema: $ref: '#/components/schemas/chef.automate.api.data_lifecycle.RunEventFeedRequest' required: true /api/v0/data-lifecycle/event-feed/status: get: tags: - DataLifecycle summary: GetEventFeedStatus returns the event feed job scheduler status operationId: DataLifecycle_GetEventFeedStatus responses: '200': description: A successful response. content: application/json: schema: $ref: '#/components/schemas/chef.automate.api.data_lifecycle.GetEventFeedStatusResponse' default: description: An unexpected error response. content: application/json: schema: $ref: '#/components/schemas/grpc.gateway.runtime.Error' /api/v0/data-lifecycle/infra/config: put: tags: - DataLifecycle summary: SetInfraConfig configures the infra data lifecycle scheduler and jobs operationId: DataLifecycle_SetInfraConfig responses: '200': description: A successful response. content: application/json: schema: $ref: '#/components/schemas/chef.automate.api.data_lifecycle.SetInfraConfigResponse' default: description: An unexpected error response. content: application/json: schema: $ref: '#/components/schemas/grpc.gateway.runtime.Error' requestBody: content: application/json: schema: $ref: '#/components/schemas/chef.automate.api.data_lifecycle.SetInfraConfigRequest' required: true /api/v0/data-lifecycle/infra/run: post: tags: - DataLifecycle summary: RunInfra runs the infra data lifecycle jobs operationId: DataLifecycle_RunInfra responses: '200': description: A successful response. content: application/json: schema: $ref: '#/components/schemas/chef.automate.api.data_lifecycle.RunInfraResponse' default: description: An unexpected error response. content: application/json: schema: $ref: '#/components/schemas/grpc.gateway.runtime.Error' requestBody: content: application/json: schema: $ref: '#/components/schemas/chef.automate.api.data_lifecycle.RunInfraRequest' required: true /api/v0/data-lifecycle/infra/status: get: tags: - DataLifecycle summary: GetInfraStatus returns the infra job scheduler status operationId: DataLifecycle_GetInfraStatus responses: '200': description: A successful response. content: application/json: schema: $ref: '#/components/schemas/chef.automate.api.data_lifecycle.GetInfraStatusResponse' default: description: An unexpected error response. content: application/json: schema: $ref: '#/components/schemas/grpc.gateway.runtime.Error' /api/v0/data-lifecycle/run: post: tags: - DataLifecycle summary: Run runs all data lifecycle actions across all data lifecycle jobs operationId: DataLifecycle_Run responses: '200': description: A successful response. content: application/json: schema: $ref: '#/components/schemas/chef.automate.api.data_lifecycle.RunResponse' default: description: An unexpected error response. content: application/json: schema: $ref: '#/components/schemas/grpc.gateway.runtime.Error' requestBody: content: application/json: schema: $ref: '#/components/schemas/chef.automate.api.data_lifecycle.RunRequest' required: true /api/v0/data-lifecycle/services/config: put: tags: - DataLifecycle operationId: DataLifecycle_SetServicesConfig responses: '200': description: A successful response. content: application/json: schema: $ref: '#/components/schemas/chef.automate.api.data_lifecycle.SetServicesConfigResponse' default: description: An unexpected error response. content: application/json: schema: $ref: '#/components/schemas/grpc.gateway.runtime.Error' requestBody: content: application/json: schema: $ref: '#/components/schemas/chef.automate.api.data_lifecycle.SetServicesConfigRequest' required: true summary: Data lifecycle set services config x-summary-source: derived /api/v0/data-lifecycle/services/run: post: tags: - DataLifecycle operationId: DataLifecycle_RunServices responses: '200': description: A successful response. content: application/json: schema: $ref: '#/components/schemas/chef.automate.api.data_lifecycle.RunServicesResponse' default: description: An unexpected error response. content: application/json: schema: $ref: '#/components/schemas/grpc.gateway.runtime.Error' requestBody: content: application/json: schema: $ref: '#/components/schemas/chef.automate.api.data_lifecycle.RunServicesRequest' required: true summary: Data lifecycle run services x-summary-source: derived /api/v0/data-lifecycle/services/status: get: tags: - DataLifecycle summary: Services operationId: DataLifecycle_GetServicesStatus responses: '200': description: A successful response. content: application/json: schema: $ref: '#/components/schemas/chef.automate.api.data_lifecycle.GetServicesStatusResponse' default: description: An unexpected error response. content: application/json: schema: $ref: '#/components/schemas/grpc.gateway.runtime.Error' /api/v0/data-lifecycle/status: get: tags: - DataLifecycle summary: GetStatus returns the aggregate status across all data lifecycle jobs operationId: DataLifecycle_GetStatus responses: '200': description: A successful response. content: application/json: schema: $ref: '#/components/schemas/chef.automate.api.data_lifecycle.GetStatusResponse' default: description: An unexpected error response. content: application/json: schema: $ref: '#/components/schemas/grpc.gateway.runtime.Error' components: schemas: chef.automate.api.data_lifecycle.GetStatusResponse: type: object properties: compliance: $ref: '#/components/schemas/chef.automate.api.data_lifecycle.GetComplianceStatusResponse' event_feed: $ref: '#/components/schemas/chef.automate.api.data_lifecycle.GetEventFeedStatusResponse' infra: $ref: '#/components/schemas/chef.automate.api.data_lifecycle.GetInfraStatusResponse' services: $ref: '#/components/schemas/chef.automate.api.data_lifecycle.GetServicesStatusResponse' chef.automate.api.data_lifecycle.RunEventFeedRequest: type: object chef.automate.api.data_lifecycle.SetInfraConfigResponse: type: object chef.automate.api.data_lifecycle.SetInfraConfigRequest: type: object properties: job_settings: type: array items: $ref: '#/components/schemas/chef.automate.api.data_lifecycle.JobSettings' chef.automate.api.data_lifecycle.RunComplianceResponse: type: object chef.automate.api.data_lifecycle.GetInfraStatusResponse: type: object properties: jobs: type: array items: $ref: '#/components/schemas/chef.automate.api.data_lifecycle.JobStatus' chef.automate.api.data_lifecycle.PgPolicyUpdate: type: object properties: disabled: type: boolean policy_name: type: string chef.automate.api.data_lifecycle.RunInfraRequest: type: object chef.automate.api.data_lifecycle.PgPolicy: type: object properties: disabled: type: boolean name: type: string chef.automate.api.data_lifecycle.JobStatus: description: 'JobStatus presents the current configuration of job, when it will be executed, and details about it''s most recent execution.' type: object properties: disabled: type: boolean last_elapsed: type: string last_ended_at: type: string format: date-time last_enqueued_at: type: string format: date-time last_started_at: type: string format: date-time name: type: string next_due_at: type: string format: date-time purge_policies: $ref: '#/components/schemas/chef.automate.api.data_lifecycle.PurgePolicies' recurrence: type: string threshold: type: string grpc.gateway.runtime.Error: type: object properties: code: type: integer format: int32 details: type: array items: $ref: '#/components/schemas/google.protobuf.Any' error: type: string message: type: string chef.automate.api.data_lifecycle.RunServicesRequest: type: object chef.automate.api.data_lifecycle.GetServicesStatusResponse: type: object properties: jobs: type: array items: $ref: '#/components/schemas/chef.automate.api.data_lifecycle.JobStatus' chef.automate.api.data_lifecycle.GetEventFeedStatusResponse: type: object properties: jobs: type: array items: $ref: '#/components/schemas/chef.automate.api.data_lifecycle.JobStatus' chef.automate.api.data_lifecycle.PurgePolicyUpdate: type: object title: PurgePolicyUpdate is purge policy configuration update properties: elasticsearch: type: array items: $ref: '#/components/schemas/chef.automate.api.data_lifecycle.EsPolicyUpdate' postgres: type: array items: $ref: '#/components/schemas/chef.automate.api.data_lifecycle.PgPolicyUpdate' chef.automate.api.data_lifecycle.RunResponse: type: object chef.automate.api.data_lifecycle.RunInfraResponse: type: object google.protobuf.Any: type: object properties: type_url: type: string value: type: string format: byte chef.automate.api.data_lifecycle.SetComplianceConfigRequest: type: object properties: job_settings: type: array items: $ref: '#/components/schemas/chef.automate.api.data_lifecycle.JobSettings' chef.automate.api.data_lifecycle.SetServicesConfigResponse: type: object chef.automate.api.data_lifecycle.SetConfigResponse: type: object chef.automate.api.data_lifecycle.SetEventFeedConfigResponse: type: object chef.automate.api.data_lifecycle.SetServicesConfigRequest: type: object properties: job_settings: type: array items: $ref: '#/components/schemas/chef.automate.api.data_lifecycle.JobSettings' chef.automate.api.data_lifecycle.SetConfigRequest: type: object properties: compliance: $ref: '#/components/schemas/chef.automate.api.data_lifecycle.SetComplianceConfigRequest' event_feed: $ref: '#/components/schemas/chef.automate.api.data_lifecycle.SetEventFeedConfigRequest' infra: $ref: '#/components/schemas/chef.automate.api.data_lifecycle.SetInfraConfigRequest' services: $ref: '#/components/schemas/chef.automate.api.data_lifecycle.SetServicesConfigRequest' chef.automate.api.data_lifecycle.SetEventFeedConfigRequest: type: object properties: job_settings: type: array items: $ref: '#/components/schemas/chef.automate.api.data_lifecycle.JobSettings' chef.automate.api.data_lifecycle.RunServicesResponse: type: object chef.automate.api.data_lifecycle.PurgePolicies: type: object title: PurgePolicies are data lifecycle purge policies properties: elasticsearch: type: array items: $ref: '#/components/schemas/chef.automate.api.data_lifecycle.EsPolicy' postgres: type: array items: $ref: '#/components/schemas/chef.automate.api.data_lifecycle.PgPolicy' chef.automate.api.data_lifecycle.EsPolicyUpdate: type: object properties: disabled: type: boolean older_than_days: type: integer format: int32 policy_name: type: string chef.automate.api.data_lifecycle.RunComplianceRequest: type: object chef.automate.api.data_lifecycle.EsPolicy: type: object properties: custom_purge_field: type: string disabled: type: boolean index: type: string name: type: string older_than_days: type: integer format: int32 chef.automate.api.data_lifecycle.RunRequest: type: object chef.automate.api.data_lifecycle.RunEventFeedResponse: type: object chef.automate.api.data_lifecycle.JobSettings: type: object title: JobSettings are a job configuration setting update properties: disabled: type: boolean name: type: string purge_policies: $ref: '#/components/schemas/chef.automate.api.data_lifecycle.PurgePolicyUpdate' recurrence: type: string threshold: type: string chef.automate.api.data_lifecycle.GetComplianceStatusResponse: type: object properties: jobs: type: array items: $ref: '#/components/schemas/chef.automate.api.data_lifecycle.JobStatus' chef.automate.api.data_lifecycle.SetComplianceConfigResponse: type: object securitySchemes: APIToken: description: Authenticate with the Automate API using an API Token. type: apiKey name: api-token in: header x-tagGroups: - name: Compliance tags: - ReportingService - StatsService - JobsService - ProfilesService - Comp_Assets - name: Report Manager tags: - ReportManagerService - name: Infra tags: - ConfigMgmt - InfraProxy - name: Ingest tags: - ChefIngester - JobScheduler - name: Node Management tags: - NodeManagerService - NodesService - name: Event Feed tags: - EventFeedService - name: Secrets tags: - SecretsService - name: Applications tags: - service_groups - retention - ApplicationsService - name: Data Feed tags: - DatafeedService - name: Data Lifecycle tags: - DataLifecycle - name: Notifications tags: - Notifications - name: Content Delivery tags: - Cds - name: Audit and Settings tags: - UserSettingsService - name: System tags: - Gateway - Deployment - License - Telemetry - LegacyDataCollector - name: Identity tags: - users - teams - tokens - name: Access Management tags: - policies - roles - projects - rules - Authorization