Query structured spec data via REST or MCP. Get exactly what your agent needs.
https://circleci.com/api/v2
/context
List all contexts for an owner.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| owner-id | query | optional | string | The unique ID of the owner of the context. Specify either this or owner-slug. |
| owner-slug | query | optional | string | A string that represents an organization. Specify either this or owner-id. Cannot be used for accounts. |
| owner-type | query | optional | string | The type of the owner. Defaults to "organization". Accounts are only used as context owners in server. |
| page-token | query | optional | string | A token to retrieve the next page of results. |
GET /context
/context
Creates a new context.
{
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ContextCreateNewContextRequest"
}
}
}
}
POST /context
/context/{context-id}
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| context-id | path | required | string | ID of the context (UUID) |
DELETE /context/{context-id}
/context/{context-id}
Returns basic information about a context.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| context-id | path | required | string | ID of the context (UUID) |
GET /context/{context-id}
/context/{context-id}/environment-variable
List information about environment variables in a context, not including their values.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| context-id | path | required | string | ID of the context (UUID) |
| page-token | query | optional | string | A token to retrieve the next page of results. |
GET /context/{context-id}/environment-variable
/context/{context-id}/environment-variable/{env-var-name}
Delete an environment variable from a context.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| env-var-name | path | required | string | The name of the environment variable |
| context-id | path | required | string | ID of the context (UUID) |
DELETE /context/{context-id}/environment-variable/{env-var-name}
/context/{context-id}/environment-variable/{env-var-name}
Create or update an environment variable within a context. Returns information about the environment variable, not including its value.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| context-id | path | required | string | ID of the context (UUID) |
| env-var-name | path | required | string | The name of the environment variable |
{
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ContextUpdateEnvironmentVariableRequest"
}
}
}
}
PUT /context/{context-id}/environment-variable/{env-var-name}
/context/{context_id}/restrictions
[__EXPERIMENTAL__] Gets a list of project restrictions associated with a context.
GET /context/{context_id}/restrictions
/context/{context_id}/restrictions
[__EXPERIMENTAL__] Creates project restriction on a context.
{
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ContextCreateRestrictionRequest"
},
"example": {
"project_id": "405d8375-3514-403b-8c43-83ae74cfe0e9",
"restriction_type": "project",
"restriction_value": "405d8375-3514-403b-8c43-83ae74cfe0e9"
}
}
},
"required": true
}
POST /context/{context_id}/restrictions
/context/{context_id}/restrictions/{restriction_id}
[__EXPERIMENTAL__] Deletes a project restriction on a context.
DELETE /context/{context_id}/restrictions/{restriction_id}
/insights/pages/{project-slug}/summary
Get summary metrics and trends for a project at workflow and branch level. Workflow runs going back at most 90 days are included in the aggregation window. Trends are only supported upto last 30 days. Please note that Insights is not a financial reporting tool and should not be used for precise credit reporting. Credit reporting from Insights does not use the same source of truth as the billing information that is found in the Plan Overview page in the CircleCI UI, nor does the underlying data have the same data accuracy guarantees as the billing information in the CircleCI UI. This may lead to discrepancies between credits reported from Insights and the billing information in the Plan Overview page of the CircleCI UI. For precise credit reporting, always use the Plan Overview page in the CircleCI UI.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| project-slug | path | required | string | Project slug in the form `vcs-slug/org-name/repo-name`. The `/` characters may be URL-escaped. For projects that use GitLab or GitHub App, use `circleci` as the `vcs-slug`, replace `org-name` with the organization ID (found in Organization Settings), and replace `repo-name` with the project ID (found in Project Settings). |
| reporting-window | query | optional | string | The time window used to calculate summary metrics. If not provided, defaults to last-90-days |
| branches | query | optional | object | The names of VCS branches to include in branch-level workflow metrics. |
| workflow-names | query | optional | object | The names of workflows to include in workflow-level metrics. |
GET /insights/pages/{project-slug}/summary
/insights/time-series/{project-slug}/workflows/{workflow-name}/jobs
Get timeseries data for all jobs within a workflow. Hourly granularity data is only retained for 48 hours while daily granularity data is retained for 90 days.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| project-slug | path | required | string | Project slug in the form `vcs-slug/org-name/repo-name`. The `/` characters may be URL-escaped. For projects that use GitLab or GitHub App, use `circleci` as the `vcs-slug`, replace `org-name` with the organization ID (found in Organization Settings), and replace `repo-name` with the project ID (found in Project Settings). |
| workflow-name | path | required | string | The name of the workflow. |
| branch | query | optional | string | The name of a vcs branch. If not passed we will scope the API call to the default branch. |
| granularity | query | optional | string | The granularity for which to query timeseries data. |
| start-date | query | optional | string | Include only executions that started at or after this date. This must be specified if an end-date is provided. |
| end-date | query | optional | string | Include only executions that started before this date. This date can be at most 90 days after the start-date. |
GET /insights/time-series/{project-slug}/workflows/{workflow-name}/jobs
/insights/{org-slug}/summary
Gets aggregated summary metrics with trends for the entire org. Also gets aggregated metrics and trends for each project belonging to the org.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| org-slug | path | required | string | Org slug in the form `vcs-slug/org-name`. The `/` characters may be URL-escaped. |
| reporting-window | query | optional | string | The time window used to calculate summary metrics. If not provided, defaults to last-90-days |
| project-names | query | optional | object | List of project names. |
GET /insights/{org-slug}/summary
/insights/{project-slug}/branches
Get a list of all branches for a specified project. The list will only contain branches currently available within Insights. The maximum number of branches returned by this endpoint is 5,000.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| project-slug | path | required | string | Project slug in the form `vcs-slug/org-name/repo-name`. The `/` characters may be URL-escaped. For projects that use GitLab or GitHub App, use `circleci` as the `vcs-slug`, replace `org-name` with the organization ID (found in Organization Settings), and replace `repo-name` with the project ID (found in Project Settings). |
| workflow-name | query | optional | string | The name of a workflow. If not passed we will scope the API call to the project. |
GET /insights/{project-slug}/branches
/insights/{project-slug}/flaky-tests
Get a list of flaky tests for a given project. Flaky tests are branch agnostic. A flaky test is a test that passed and failed in the same commit.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| project-slug | path | required | string | Project slug in the form `vcs-slug/org-name/repo-name`. The `/` characters may be URL-escaped. For projects that use GitLab or GitHub App, use `circleci` as the `vcs-slug`, replace `org-name` with the organization ID (found in Organization Settings), and replace `repo-name` with the project ID (found in Project Settings). |
GET /insights/{project-slug}/flaky-tests
/insights/{project-slug}/workflows
Get summary metrics for a project's workflows. Workflow runs going back at most 90 days are included in the aggregation window. Metrics are refreshed daily, and thus may not include executions from the last 24 hours. Please note that Insights is not a financial reporting tool and should not be used for precise credit reporting. Credit reporting from Insights does not use the same source of truth as the billing information that is found in the Plan Overview page in the CircleCI UI, nor does the underlying data have the same data accuracy guarantees as the billing information in the CircleCI UI. This may lead to discrepancies between credits reported from Insights and the billing information in the Plan Overview page of the CircleCI UI. For precise credit reporting, always use the Plan Overview page in the CircleCI UI.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| project-slug | path | required | string | Project slug in the form `vcs-slug/org-name/repo-name`. The `/` characters may be URL-escaped. For projects that use GitLab or GitHub App, use `circleci` as the `vcs-slug`, replace `org-name` with the organization ID (found in Organization Settings), and replace `repo-name` with the project ID (found in Project Settings). |
| page-token | query | optional | string | A token to retrieve the next page of results. |
| all-branches | query | optional | boolean | Whether to retrieve data for all branches combined. Use either this parameter OR the branch name parameter. |
| branch | query | optional | string | The name of a vcs branch. If not passed we will scope the API call to the default branch. |
| reporting-window | query | optional | string | The time window used to calculate summary metrics. If not provided, defaults to last-90-days |
GET /insights/{project-slug}/workflows
/insights/{project-slug}/workflows/{workflow-name}
Get recent runs of a workflow. Runs going back at most 90 days are returned. Please note that Insights is not a financial reporting tool and should not be used for precise credit reporting. Credit reporting from Insights does not use the same source of truth as the billing information that is found in the Plan Overview page in the CircleCI UI, nor does the underlying data have the same data accuracy guarantees as the billing information in the CircleCI UI. This may lead to discrepancies between credits reported from Insights and the billing information in the Plan Overview page of the CircleCI UI. For precise credit reporting, always use the Plan Overview page in the CircleCI UI.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| project-slug | path | required | string | Project slug in the form `vcs-slug/org-name/repo-name`. The `/` characters may be URL-escaped. For projects that use GitLab or GitHub App, use `circleci` as the `vcs-slug`, replace `org-name` with the organization ID (found in Organization Settings), and replace `repo-name` with the project ID (found in Project Settings). |
| workflow-name | path | required | string | The name of the workflow. |
| all-branches | query | optional | boolean | Whether to retrieve data for all branches combined. Use either this parameter OR the branch name parameter. |
| branch | query | optional | string | The name of a vcs branch. If not passed we will scope the API call to the default branch. |
| page-token | query | optional | string | A token to retrieve the next page of results. |
| start-date | query | optional | string | Include only executions that started at or after this date. This must be specified if an end-date is provided. |
| end-date | query | optional | string | Include only executions that started before this date. This date can be at most 90 days after the start-date. |
GET /insights/{project-slug}/workflows/{workflow-name}
/insights/{project-slug}/workflows/{workflow-name}/jobs
Get summary metrics for a project workflow's jobs. Job runs going back at most 90 days are included in the aggregation window. Metrics are refreshed daily, and thus may not include executions from the last 24 hours. Please note that Insights is not a financial reporting tool and should not be used for precise credit reporting. Credit reporting from Insights does not use the same source of truth as the billing information that is found in the Plan Overview page in the CircleCI UI, nor does the underlying data have the same data accuracy guarantees as the billing information in the CircleCI UI. This may lead to discrepancies between credits reported from Insights and the billing information in the Plan Overview page of the CircleCI UI. For precise credit reporting, always use the Plan Overview page in the CircleCI UI.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| project-slug | path | required | string | Project slug in the form `vcs-slug/org-name/repo-name`. The `/` characters may be URL-escaped. For projects that use GitLab or GitHub App, use `circleci` as the `vcs-slug`, replace `org-name` with the organization ID (found in Organization Settings), and replace `repo-name` with the project ID (found in Project Settings). |
| workflow-name | path | required | string | The name of the workflow. |
| page-token | query | optional | string | A token to retrieve the next page of results. |
| all-branches | query | optional | boolean | Whether to retrieve data for all branches combined. Use either this parameter OR the branch name parameter. |
| branch | query | optional | string | The name of a vcs branch. If not passed we will scope the API call to the default branch. |
| reporting-window | query | optional | string | The time window used to calculate summary metrics. If not provided, defaults to last-90-days |
GET /insights/{project-slug}/workflows/{workflow-name}/jobs
/insights/{project-slug}/workflows/{workflow-name}/summary
Get the metrics and trends for a particular workflow on a single branch or all branches
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| project-slug | path | required | string | Project slug in the form `vcs-slug/org-name/repo-name`. The `/` characters may be URL-escaped. For projects that use GitLab or GitHub App, use `circleci` as the `vcs-slug`, replace `org-name` with the organization ID (found in Organization Settings), and replace `repo-name` with the project ID (found in Project Settings). |
| workflow-name | path | required | string | The name of the workflow. |
| all-branches | query | optional | boolean | Whether to retrieve data for all branches combined. Use either this parameter OR the branch name parameter. |
| branch | query | optional | string | The name of a vcs branch. If not passed we will scope the API call to the default branch. |
GET /insights/{project-slug}/workflows/{workflow-name}/summary
/insights/{project-slug}/workflows/{workflow-name}/test-metrics
Get test metrics for a project's workflows. Currently tests metrics are calculated based on 10 most recent workflow runs.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| project-slug | path | required | string | Project slug in the form `vcs-slug/org-name/repo-name`. The `/` characters may be URL-escaped. For projects that use GitLab or GitHub App, use `circleci` as the `vcs-slug`, replace `org-name` with the organization ID (found in Organization Settings), and replace `repo-name` with the project ID (found in Project Settings). |
| workflow-name | path | required | string | The name of the workflow. |
| branch | query | optional | string | The name of a vcs branch. If not passed we will scope the API call to the default branch. |
| all-branches | query | optional | boolean | Whether to retrieve data for all branches combined. Use either this parameter OR the branch name parameter. |
GET /insights/{project-slug}/workflows/{workflow-name}/test-metrics
/project/{project-slug}/job/{job-number}
Returns job details.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| job-number | path | required | The number of the job. | |
| project-slug | path | required | string | Project slug in the form `vcs-slug/org-name/repo-name`. The `/` characters may be URL-escaped. For projects that use GitLab or GitHub App, use `circleci` as the `vcs-slug`, replace `org-name` with the organization ID (found in Organization Settings), and replace `repo-name` with the project ID (found in Project Settings). |
GET /project/{project-slug}/job/{job-number}
/project/{project-slug}/job/{job-number}/cancel
Cancel job with a given job number.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| job-number | path | required | The number of the job. | |
| project-slug | path | required | string | Project slug in the form `vcs-slug/org-name/repo-name`. The `/` characters may be URL-escaped. For projects that use GitLab or GitHub App, use `circleci` as the `vcs-slug`, replace `org-name` with the organization ID (found in Organization Settings), and replace `repo-name` with the project ID (found in Project Settings). |
POST /project/{project-slug}/job/{job-number}/cancel
/project/{project-slug}/{job-number}/artifacts
Returns a job's artifacts.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| job-number | path | required | The number of the job. | |
| project-slug | path | required | string | Project slug in the form `vcs-slug/org-name/repo-name`. The `/` characters may be URL-escaped. For projects that use GitLab or GitHub App, use `circleci` as the `vcs-slug`, replace `org-name` with the organization ID (found in Organization Settings), and replace `repo-name` with the project ID (found in Project Settings). |
GET /project/{project-slug}/{job-number}/artifacts
/project/{project-slug}/{job-number}/tests
Get test metadata for a build. In the rare case where there is more than 250MB of test data on the job, no results will be returned.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| job-number | path | required | The number of the job. | |
| project-slug | path | required | string | Project slug in the form `vcs-slug/org-name/repo-name`. The `/` characters may be URL-escaped. For projects that use GitLab or GitHub App, use `circleci` as the `vcs-slug`, replace `org-name` with the organization ID (found in Organization Settings), and replace `repo-name` with the project ID (found in Project Settings). |
GET /project/{project-slug}/{job-number}/tests
/org/{orgID}/oidc-custom-claims
Deletes org-level custom claims of OIDC identity tokens
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| optional | ||||
| optional |
DELETE /org/{orgID}/oidc-custom-claims
/org/{orgID}/oidc-custom-claims
Fetches org-level custom claims of OIDC identity tokens
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| optional |
GET /org/{orgID}/oidc-custom-claims
/org/{orgID}/oidc-custom-claims
Creates/Updates org-level custom claims of OIDC identity tokens
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| optional |
{
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/PatchClaimsRequest"
}
}
}
}
PATCH /org/{orgID}/oidc-custom-claims
/org/{orgID}/project/{projectID}/oidc-custom-claims
Deletes project-level custom claims of OIDC identity tokens
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| optional | ||||
| optional | ||||
| optional |
DELETE /org/{orgID}/project/{projectID}/oidc-custom-claims
/org/{orgID}/project/{projectID}/oidc-custom-claims
Fetches project-level custom claims of OIDC identity tokens
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| optional | ||||
| optional |
GET /org/{orgID}/project/{projectID}/oidc-custom-claims
/org/{orgID}/project/{projectID}/oidc-custom-claims
Creates/Updates project-level custom claims of OIDC identity tokens
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| optional | ||||
| optional |
{
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/PatchClaimsRequest"
}
}
}
}
PATCH /org/{orgID}/project/{projectID}/oidc-custom-claims
/pipeline
Returns all pipelines for the most recently built projects (max 250) you follow in an organization.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| org-slug | query | optional | string | Org slug in the form `vcs-slug/org-name`. For projects that use GitLab or GitHub App, use `circleci` as the `vcs-slug` and replace the `org-name` with the organization ID (found in Organization Settings). |
| page-token | query | optional | string | A token to retrieve the next page of results. |
| mine | query | optional | boolean | Only include entries created by your user. |
GET /pipeline
/pipeline/continue
Continue a pipeline from the setup phase. For information on using pipeline parameters with dynamic configuration, see the [Pipeline values and parameters](https://circleci.com/docs/pipeline-variables/#pipeline-parameters-and-dynamic-configuration) docs.
{
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/PipelineContinueExecutionRequest"
}
}
}
}
POST /pipeline/continue
/pipeline/{pipeline-id}
Returns a pipeline by the pipeline ID.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| pipeline-id | path | required | string | The unique ID of the pipeline. |
GET /pipeline/{pipeline-id}
/pipeline/{pipeline-id}/config
Returns a pipeline's configuration by ID.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| pipeline-id | path | required | string | The unique ID of the pipeline. |
GET /pipeline/{pipeline-id}/config
/pipeline/{pipeline-id}/workflow
Returns a paginated list of workflows by pipeline ID.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| pipeline-id | path | required | string | The unique ID of the pipeline. |
| page-token | query | optional | string | A token to retrieve the next page of results. |
GET /pipeline/{pipeline-id}/workflow
/project/{project-slug}/pipeline
Returns all pipelines for this project.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| project-slug | path | required | string | Project slug in the form `vcs-slug/org-name/repo-name`. The `/` characters may be URL-escaped. For projects that use GitLab or GitHub App, use `circleci` as the `vcs-slug`, replace `org-name` with the organization ID (found in Organization Settings), and replace `repo-name` with the project ID (found in Project Settings). |
| branch | query | optional | string | The name of a vcs branch. |
| page-token | query | optional | string | A token to retrieve the next page of results. |
GET /project/{project-slug}/pipeline
/project/{project-slug}/pipeline
Not yet available to projects that use GitLab or GitHub App. Triggers a new pipeline on the project.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| project-slug | path | required | string | Project slug in the form `vcs-slug/org-name/repo-name`. The `/` characters may be URL-escaped. For projects that use GitLab or GitHub App, use `circleci` as the `vcs-slug`, replace `org-name` with the organization ID (found in Organization Settings), and replace `repo-name` with the project ID (found in Project Settings). |
{
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/PipelineTriggerNewPipelineRequest"
}
}
}
}
POST /project/{project-slug}/pipeline
/project/{project-slug}/pipeline/mine
Returns a sequence of all pipelines for this project triggered by the user.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| project-slug | path | required | string | Project slug in the form `vcs-slug/org-name/repo-name`. The `/` characters may be URL-escaped. For projects that use GitLab or GitHub App, use `circleci` as the `vcs-slug`, replace `org-name` with the organization ID (found in Organization Settings), and replace `repo-name` with the project ID (found in Project Settings). |
| page-token | query | optional | string | A token to retrieve the next page of results. |
GET /project/{project-slug}/pipeline/mine
/project/{project-slug}/pipeline/{pipeline-number}
Returns a pipeline by the pipeline number.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| project-slug | path | required | string | Project slug in the form `vcs-slug/org-name/repo-name`. The `/` characters may be URL-escaped. For projects that use GitLab or GitHub App, use `circleci` as the `vcs-slug`, replace `org-name` with the organization ID (found in Organization Settings), and replace `repo-name` with the project ID (found in Project Settings). |
| pipeline-number | path | required | The number of the pipeline. |
GET /project/{project-slug}/pipeline/{pipeline-number}
/owner/{ownerID}/context/{context}/decision
This endpoint will return a list of decision audit logs that were made using this owner's policies.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| optional | ||||
| optional | ||||
| status | query | optional | string | Return decisions matching this decision status. |
| after | query | optional | string | Return decisions made after this date. |
| before | query | optional | string | Return decisions made before this date. |
| branch | query | optional | string | Return decisions made on this branch. |
| project_id | query | optional | string | Return decisions made for this project. |
| build_number | query | optional | string | Return decisions made for this build number. |
| offset | query | optional | integer | Sets the offset when retrieving the decisions, for paging. |
GET /owner/{ownerID}/context/{context}/decision
/owner/{ownerID}/context/{context}/decision
This endpoint will evaluate input data (config+metadata) against owner's stored policies and return a decision.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| optional | ||||
| optional |
{
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/PolicyManagementEvaluateInputDataRequest"
}
}
}
}
POST /owner/{ownerID}/context/{context}/decision
/owner/{ownerID}/context/{context}/decision/settings
This endpoint retrieves the current decision settings (eg enable/disable policy evaluation)
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| optional | ||||
| optional |
GET /owner/{ownerID}/context/{context}/decision/settings
/owner/{ownerID}/context/{context}/decision/settings
This endpoint allows modifying decision settings (eg enable/disable policy evaluation)
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| optional | ||||
| optional |
{
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/DecisionSettings"
}
}
}
}
PATCH /owner/{ownerID}/context/{context}/decision/settings
/owner/{ownerID}/context/{context}/decision/{decisionID}
This endpoint will retrieve a decision for a given decision log ID
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| optional | ||||
| optional | ||||
| optional |
GET /owner/{ownerID}/context/{context}/decision/{decisionID}
/owner/{ownerID}/context/{context}/decision/{decisionID}/policy-bundle
This endpoint will retrieve a policy bundle for a given decision log ID
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| optional | ||||
| optional | ||||
| optional |
GET /owner/{ownerID}/context/{context}/decision/{decisionID}/policy-bundle
/owner/{ownerID}/context/{context}/policy-bundle
This endpoint will retrieve a policy bundle
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| optional | ||||
| optional |
GET /owner/{ownerID}/context/{context}/policy-bundle
/owner/{ownerID}/context/{context}/policy-bundle
This endpoint replaces the current policy bundle with the provided policy bundle
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| optional | ||||
| optional | ||||
| dry | query | optional | boolean |
{
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/BundlePayload"
}
}
}
}
POST /owner/{ownerID}/context/{context}/policy-bundle
/owner/{ownerID}/context/{context}/policy-bundle/{policyName}
This endpoint will retrieve a policy document.
GET /owner/{ownerID}/context/{context}/policy-bundle/{policyName}
/project/{project-slug}
Retrieves a project by project slug.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| project-slug | path | required | string | Project slug in the form `vcs-slug/org-name/repo-name`. The `/` characters may be URL-escaped. For projects that use GitLab or GitHub App, use `circleci` as the `vcs-slug`, replace `org-name` with the organization ID (found in Organization Settings), and replace `repo-name` with the project ID (found in Project Settings). |
GET /project/{project-slug}
/project/{project-slug}/checkout-key
Returns a sequence of checkout keys for `:project`.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| project-slug | path | required | string | Project slug in the form `vcs-slug/org-name/repo-name`. The `/` characters may be URL-escaped. For projects that use GitLab or GitHub App, use `circleci` as the `vcs-slug`, replace `org-name` with the organization ID (found in Organization Settings), and replace `repo-name` with the project ID (found in Project Settings). |
| digest | query | optional | string | The fingerprint digest type to return. This may be either `md5` or `sha256`. If not passed, defaults to `md5`. |
GET /project/{project-slug}/checkout-key
/project/{project-slug}/checkout-key
Not available to projects that use GitLab or GitHub App. Creates a new checkout key. This API request is only usable with a user API token. Please ensure that you have authorized your account with GitHub before creating user keys. This is necessary to give CircleCI the permission to create a user key associated with your GitHub user account. You can find this page by visiting Project Settings > Checkout SSH Keys
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| project-slug | path | required | string | Project slug in the form `vcs-slug/org-name/repo-name`. The `/` characters may be URL-escaped. For projects that use GitLab or GitHub App, use `circleci` as the `vcs-slug`, replace `org-name` with the organization ID (found in Organization Settings), and replace `repo-name` with the project ID (found in Project Settings). |
{
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProjectCreateCheckoutKeyRequest"
}
}
}
}
POST /project/{project-slug}/checkout-key
/project/{project-slug}/checkout-key/{fingerprint}
Deletes the checkout key via md5 or sha256 fingerprint. sha256 keys should be url-encoded.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| project-slug | path | required | string | Project slug in the form `vcs-slug/org-name/repo-name`. The `/` characters may be URL-escaped. For projects that use GitLab or GitHub App, use `circleci` as the `vcs-slug`, replace `org-name` with the organization ID (found in Organization Settings), and replace `repo-name` with the project ID (found in Project Settings). |
| fingerprint | path | required | string | An SSH key fingerprint. |
DELETE /project/{project-slug}/checkout-key/{fingerprint}
/project/{project-slug}/checkout-key/{fingerprint}
Returns an individual checkout key via md5 or sha256 fingerprint. sha256 keys should be url-encoded.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| project-slug | path | required | string | Project slug in the form `vcs-slug/org-name/repo-name`. The `/` characters may be URL-escaped. For projects that use GitLab or GitHub App, use `circleci` as the `vcs-slug`, replace `org-name` with the organization ID (found in Organization Settings), and replace `repo-name` with the project ID (found in Project Settings). |
| fingerprint | path | required | string | An SSH key fingerprint. |
GET /project/{project-slug}/checkout-key/{fingerprint}
/project/{project-slug}/envvar
Returns four 'x' characters, in addition to the last four ASCII characters of the value, consistent with the display of environment variable values on the CircleCI website.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| project-slug | path | required | string | Project slug in the form `vcs-slug/org-name/repo-name`. The `/` characters may be URL-escaped. For projects that use GitLab or GitHub App, use `circleci` as the `vcs-slug`, replace `org-name` with the organization ID (found in Organization Settings), and replace `repo-name` with the project ID (found in Project Settings). |
GET /project/{project-slug}/envvar
/project/{project-slug}/envvar
Creates a new environment variable.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| project-slug | path | required | string | Project slug in the form `vcs-slug/org-name/repo-name`. The `/` characters may be URL-escaped. For projects that use GitLab or GitHub App, use `circleci` as the `vcs-slug`, replace `org-name` with the organization ID (found in Organization Settings), and replace `repo-name` with the project ID (found in Project Settings). |
{
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ProjectCreateEnvVarRequest"
}
}
}
}
POST /project/{project-slug}/envvar
/project/{project-slug}/envvar/{name}
Deletes the environment variable named :name.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| project-slug | path | required | string | Project slug in the form `vcs-slug/org-name/repo-name`. The `/` characters may be URL-escaped. For projects that use GitLab or GitHub App, use `circleci` as the `vcs-slug`, replace `org-name` with the organization ID (found in Organization Settings), and replace `repo-name` with the project ID (found in Project Settings). |
| name | path | required | string | The name of the environment variable. |
DELETE /project/{project-slug}/envvar/{name}
/project/{project-slug}/envvar/{name}
Returns the masked value of environment variable :name.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| project-slug | path | required | string | Project slug in the form `vcs-slug/org-name/repo-name`. The `/` characters may be URL-escaped. For projects that use GitLab or GitHub App, use `circleci` as the `vcs-slug`, replace `org-name` with the organization ID (found in Organization Settings), and replace `repo-name` with the project ID (found in Project Settings). |
| name | path | required | string | The name of the environment variable. |
GET /project/{project-slug}/envvar/{name}
/project/{provider}/{organization}/{project}
[__EXPERIMENTAL__] Creates a new CircleCI project, and returns a list of the default advanced settings. Can only be called on a repo with a main branch and an existing config.yml file. Not yet available to projects that use GitLab or GitHub App.
POST /project/{provider}/{organization}/{project}
/project/{provider}/{organization}/{project}/settings
[__EXPERIMENTAL__] Returns a list of the advanced settings for a CircleCI project, whether enabled (true) or not (false).
GET /project/{provider}/{organization}/{project}/settings
/project/{provider}/{organization}/{project}/settings
[__EXPERIMENTAL__] Updates one or more of the advanced settings for a CircleCI project.
{
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/project_settings"
},
"example": {
"advanced": {
"build_prs_only": true,
"autocancel_builds": false,
"pr_only_branch_overrides": [
"main"
]
}
}
}
},
"required": true,
"description": "The setting(s) to update, including one or more fields in the JSON object. Note that `oss: true` will only be set on projects whose underlying repositories are actually open source."
}
PATCH /project/{provider}/{organization}/{project}/settings
/project/{project-slug}/schedule
Returns all schedules for this project.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| project-slug | path | required | string | Project slug in the form `vcs-slug/org-name/repo-name`. The `/` characters may be URL-escaped. For projects that use GitLab or GitHub App, use `circleci` as the `vcs-slug`, replace `org-name` with the organization ID (found in Organization Settings), and replace `repo-name` with the project ID (found in Project Settings). |
| page-token | query | optional | string | A token to retrieve the next page of results. |
GET /project/{project-slug}/schedule
/project/{project-slug}/schedule
Not yet available to projects that use GitLab or GitHub App. Creates a schedule and returns the created schedule.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| project-slug | path | required | string | Project slug in the form `vcs-slug/org-name/repo-name`. The `/` characters may be URL-escaped. For projects that use GitLab or GitHub App, use `circleci` as the `vcs-slug`, replace `org-name` with the organization ID (found in Organization Settings), and replace `repo-name` with the project ID (found in Project Settings). |
{
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ScheduleCreateNewScheduleRequest"
}
}
}
}
POST /project/{project-slug}/schedule
/schedule/{schedule-id}
Not yet available to projects that use GitLab or GitHub App. Deletes the schedule by id.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| schedule-id | path | required | string | The unique ID of the schedule. |
DELETE /schedule/{schedule-id}
/schedule/{schedule-id}
Get a schedule by id.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| schedule-id | path | required | string | The unique ID of the schedule. |
GET /schedule/{schedule-id}
/schedule/{schedule-id}
Not yet available to projects that use GitLab or GitHub App. Updates a schedule and returns the updated schedule.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| schedule-id | path | required | string | The unique ID of the schedule. |
{
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/ScheduleUpdateScheduleRequest"
}
}
}
}
PATCH /schedule/{schedule-id}
/me
Provides information about the user that is currently signed in.
GET /me
/me/collaborations
Provides the set of organizations of which a user is a member or a collaborator. The set of organizations that a user can collaborate on is composed of: * Organizations that the current user belongs to across VCS types (e.g. BitBucket, GitHub) * The parent organization of repository that the user can collaborate on, but is not necessarily a member of * The organization of the current user's account
GET /me/collaborations
/user/{id}
Provides information about the user with the given ID.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | string | The unique ID of the user. |
GET /user/{id}
/webhook
Get a list of outbound webhooks that match the given scope-type and scope-id
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| scope-id | query | required | string | ID of the scope being used (at the moment, only project ID is supported) |
| scope-type | query | required | string | Type of the scope being used |
GET /webhook
/webhook
Creates an outbound webhook.
{
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/WebhookCreateOutboundWebhookRequest"
}
}
}
}
POST /webhook
/webhook/{webhook-id}
Deletes an outbound webhook
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| webhook-id | path | required | string | ID of the webhook (UUID) |
DELETE /webhook/{webhook-id}
/webhook/{webhook-id}
Get an outbound webhook by id.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| webhook-id | path | required | string | ID of the webhook (UUID) |
GET /webhook/{webhook-id}
/webhook/{webhook-id}
Updates an outbound webhook.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| webhook-id | path | required | string | ID of the webhook (UUID) |
{
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/WebhookUpdateOutboundWebhookRequest"
}
}
}
}
PUT /webhook/{webhook-id}
/workflow/{id}
Returns summary fields of a workflow by ID.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | string | The unique ID of the workflow. |
GET /workflow/{id}
/workflow/{id}/approve/{approval_request_id}
Approves a pending approval job in a workflow.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| approval_request_id | path | required | string | The ID of the job being approved. |
| id | path | required | string | The unique ID of the workflow. |
POST /workflow/{id}/approve/{approval_request_id}
/workflow/{id}/cancel
Cancels a running workflow.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | string | The unique ID of the workflow. |
POST /workflow/{id}/cancel
/workflow/{id}/job
Returns a sequence of jobs for a workflow.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | string | The unique ID of the workflow. |
GET /workflow/{id}/job
/workflow/{id}/rerun
Reruns a workflow.
| Name | In | Required | Type | Description |
|---|---|---|---|---|
| id | path | required | string | The unique ID of the workflow. |
{
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/WorkflowRerunWorkflowRequest"
}
}
}
}
POST /workflow/{id}/rerun
BundleDiff
{
"type": "object",
"properties": {
"created": {
"type": "array",
"items": {
"type": "string",
"description": "policy names"
}
},
"deleted": {
"type": "array",
"items": {
"type": "string",
"description": "policy names"
}
},
"modified": {
"type": "array",
"items": {
"type": "string",
"description": "policy names"
}
}
}
}
BundlePayload
{
"type": "object",
"properties": {
"policies": {
"type": "object",
"additionalProperties": {
"type": "string",
"description": "policy content"
}
}
}
}
ClaimResponse
{
"type": "object",
"required": [
"org_id"
],
"properties": {
"ttl": {
"$ref": "#/components/schemas/JSONDuration"
},
"org_id": {
"type": "string",
"format": "uuid"
},
"audience": {
"type": "array",
"items": {
"type": "string"
}
},
"project_id": {
"type": "string",
"format": "uuid"
},
"ttl_updated_at": {
"type": "string",
"format": "date-time"
},
"audience_updated_at": {
"type": "string",
"format": "date-time"
}
}
}
ContextCreateNewContextRequest
{
"type": "object",
"required": [
"name",
"owner"
],
"properties": {
"name": {
"type": "string",
"description": "The user defined name of the context."
},
"owner": {
"oneOf": [
{
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"format": "uuid",
"description": "The unique ID of the owner of the context. Specify either this or slug."
},
"type": {
"enum": [
"account",
"organization"
],
"type": "string",
"example": "organization",
"description": "The type of the owner. Defaults to \"organization\". Accounts are only used as context owners in server."
}
}
},
{
"type": "object",
"required": [
"slug"
],
"properties": {
"slug": {
"type": "string",
"description": "A string that represents an organization. Specify either this or id. Cannot be used for accounts."
},
"type": {
"enum": [
"organization"
],
"type": "string",
"description": "The type of owner. Defaults to \"organization\". Accounts are only used as context owners in server and must be specified by an id instead of a slug."
}
}
}
]
}
}
}
ContextCreateNewContextResponse
{
"type": "object",
"title": "Context",
"required": [
"id",
"name",
"created_at"
],
"properties": {
"id": {
"type": "string",
"format": "uuid",
"description": "The unique ID of the context."
},
"name": {
"type": "string",
"description": "The user defined name of the context."
},
"created_at": {
"type": "string",
"format": "date-time",
"example": "2015-09-21T17:29:21.042Z",
"description": "The date and time the context was created."
}
}
}
ContextCreateNewContextdefaultResponse
{
"type": "object",
"properties": {
"message": {
"type": "string"
}
}
}
ContextCreateRestriction409Response
{
"properties": {
"message": {
"type": "string"
}
},
"additionalProperties": false
}
ContextCreateRestrictionRequest
{
"type": "object",
"properties": {
"project_id": {
"type": "string",
"format": "uuid",
"deprecated": true,
"description": "Deprecated - Use \"restriction_type\" and \"restriction_value\"\ninstead.\n\nThe project ID to use for a project restriction. This is\nmutually exclusive with restriction_type and restriction_value\nand implies restriction_type is \"project\".\n"
},
"restriction_type": {
"type": "string"
},
"restriction_value": {
"type": "string"
}
}
}
ContextCreateRestrictionResponse
{
"properties": {
"message": {
"type": "string"
}
},
"additionalProperties": false
}
ContextDeleteRestrictionResponse
{
"properties": {
"message": {
"type": "string",
"default": "restriction_id is invalid."
}
},
"additionalProperties": false
}
ContextGetInformationResponse
{
"type": "object",
"title": "Context",
"required": [
"id",
"name",
"created_at"
],
"properties": {
"id": {
"type": "string",
"format": "uuid",
"description": "The unique ID of the context."
},
"name": {
"type": "string",
"description": "The user defined name of the context."
},
"created_at": {
"type": "string",
"format": "date-time",
"example": "2015-09-21T17:29:21.042Z",
"description": "The date and time the context was created."
}
}
}
ContextGetInformationdefaultResponse
{
"type": "object",
"properties": {
"message": {
"type": "string"
}
}
}
ContextGetRestrictions401Response
{
"properties": {
"message": {
"type": "string"
}
},
"additionalProperties": false
}
ContextGetRestrictions404Response
{
"properties": {
"message": {
"type": "string"
}
},
"additionalProperties": false
}
ContextGetRestrictions429Response
{
"properties": {
"message": {
"type": "string",
"default": "Rate limit exceeded."
}
},
"additionalProperties": false
}
ContextGetRestrictions500Response
{
"properties": {
"message": {
"type": "string",
"default": "Internal server error."
}
},
"additionalProperties": false
}
ContextGetRestrictionsResponse
{
"properties": {
"message": {
"type": "string",
"default": "context_id is invalid."
}
},
"additionalProperties": false
}
ContextListEnvironmentVariablesResponse
{
"type": "object",
"required": [
"items",
"next_page_token"
],
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"required": [
"variable",
"created_at",
"updated_at",
"context_id"
],
"properties": {
"variable": {
"type": "string",
"example": "POSTGRES_USER",
"description": "The name of the environment variable"
},
"context_id": {
"type": "string",
"format": "uuid",
"description": "ID of the context (UUID)"
},
"created_at": {
"type": "string",
"format": "date-time",
"example": "2015-09-21T17:29:21.042Z",
"description": "The date and time the environment variable was created."
},
"updated_at": {
"type": "string",
"format": "date-time",
"example": "2015-09-21T17:29:21.042Z",
"description": "The date and time the environment variable was updated"
}
}
}
},
"next_page_token": {
"type": "string",
"x-nullable": true,
"description": "A token to pass as a `page-token` query parameter to return the next page of results."
}
}
}
ContextListEnvironmentVariablesdefaultResponse
{
"type": "object",
"properties": {
"message": {
"type": "string"
}
}
}
ContextListOwnerContextsResponse
{
"type": "object",
"required": [
"items",
"next_page_token"
],
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"title": "Context",
"required": [
"id",
"name",
"created_at"
],
"properties": {
"id": {
"type": "string",
"format": "uuid",
"description": "The unique ID of the context."
},
"name": {
"type": "string",
"description": "The user defined name of the context."
},
"created_at": {
"type": "string",
"format": "date-time",
"example": "2015-09-21T17:29:21.042Z",
"description": "The date and time the context was created."
}
}
}
},
"next_page_token": {
"type": "string",
"x-nullable": true,
"description": "A token to pass as a `page-token` query parameter to return the next page of results."
}
}
}
ContextListOwnerContextsdefaultResponse
{
"type": "object",
"properties": {
"message": {
"type": "string"
}
}
}
ContextRemoveContextResponse
{
"type": "object",
"title": "MessageResponse",
"required": [
"message"
],
"properties": {
"message": {
"type": "string",
"description": "A human-readable message"
}
},
"description": "message response"
}
ContextRemoveContextdefaultResponse
{
"type": "object",
"properties": {
"message": {
"type": "string"
}
}
}
ContextRemoveEnvironmentVariableResponse
{
"type": "object",
"title": "MessageResponse",
"required": [
"message"
],
"properties": {
"message": {
"type": "string",
"description": "A human-readable message"
}
},
"description": "message response"
}
ContextRemoveEnvironmentVariabledefaultResponse
{
"type": "object",
"properties": {
"message": {
"type": "string"
}
}
}
ContextUpdateEnvironmentVariableRequest
{
"type": "object",
"required": [
"value"
],
"properties": {
"value": {
"type": "string",
"example": "some-secret-value",
"description": "The value of the environment variable"
}
}
}
ContextUpdateEnvironmentVariableResponse
{
"anyOf": [
{
"type": "object",
"required": [
"variable",
"created_at",
"updated_at",
"context_id"
],
"properties": {
"variable": {
"type": "string",
"example": "POSTGRES_USER",
"description": "The name of the environment variable"
},
"context_id": {
"type": "string",
"format": "uuid",
"description": "ID of the context (UUID)"
},
"created_at": {
"type": "string",
"format": "date-time",
"example": "2015-09-21T17:29:21.042Z",
"description": "The date and time the environment variable was created."
},
"updated_at": {
"type": "string",
"format": "date-time",
"example": "2015-09-21T17:29:21.042Z",
"description": "The date and time the environment variable was updated"
}
}
},
{
"type": "object",
"title": "MessageResponse",
"required": [
"message"
],
"properties": {
"message": {
"type": "string",
"description": "A human-readable message"
}
},
"description": "message response"
}
]
}
ContextUpdateEnvironmentVariabledefaultResponse
{
"type": "object",
"properties": {
"message": {
"type": "string"
}
}
}
Decision
{
"type": "object",
"required": [
"status"
],
"properties": {
"reason": {
"type": "string"
},
"status": {
"type": "string"
},
"enabled_rules": {
"type": "array",
"items": {
"type": "string"
}
},
"hard_failures": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Violation"
}
},
"soft_failures": {
"type": "array",
"items": {
"$ref": "#/components/schemas/Violation"
}
}
}
}
DecisionLog
{
"type": "object",
"properties": {
"id": {
"type": "string",
"format": "uuid"
},
"decision": {
"$ref": "#/components/schemas/Decision"
},
"metadata": {
"type": "object",
"properties": {
"vcs": {
"type": "object",
"properties": {
"branch": {
"type": "string"
},
"release_tag": {
"type": "string"
},
"origin_repository_url": {
"type": "string"
},
"target_repository_url": {
"type": "string"
}
}
},
"ssh_rerun": {
"type": "boolean"
},
"project_id": {
"type": "string",
"format": "uuid"
},
"build_number": {
"type": "integer"
}
}
},
"policies": {
"type": "object",
"example": {
"policy_name1": "1f40fc92da241694750979ee6cf582f2d5d7d28e18335de05abc54d0560e0f5302860c652bf08d560252aa5e74210546f369fbbbce8c12cfc7957b2652fe9a75",
"policy_name2": "5267768822ee624d48fce15ec5ca79cbd602cb7f4c2157a516556991f22ef8c7b5ef7b18d1ff41c59370efb0858651d44a936c11b7b144c48fe04df3c6a3e8da"
},
"description": "policy-name-to-hash-map",
"additionalProperties": {
"type": "string",
"maxLength": 128,
"minLength": 128
}
},
"created_at": {
"type": "string",
"format": "date-time"
},
"time_taken_ms": {
"type": "integer"
}
}
}
DecisionSettings
{
"type": "object",
"properties": {
"enabled": {
"type": "boolean"
}
}
}
InsightsGetFlakyTestsResponse
{
"type": "object",
"required": [
"flaky-tests",
"total-flaky-tests"
],
"properties": {
"flaky-tests": {
"type": "array",
"items": {
"type": "object",
"required": [
"workflow-created-at",
"classname",
"job-number",
"times-flaked",
"source",
"pipeline-number",
"file",
"workflow-name",
"job-name",
"workflow-id",
"test-name"
],
"properties": {
"file": {
"type": "string",
"x-nullable": true,
"description": "The file the test belongs to."
},
"source": {
"type": "string",
"x-nullable": true,
"description": "The source of the test."
},
"job-name": {
"type": "string",
"description": "The name of the job."
},
"classname": {
"type": "string",
"x-nullable": true,
"description": "The class the test belongs to."
},
"test-name": {
"type": "string",
"description": "The name of the test."
},
"job-number": {
"allOf": [
{
"type": "integer",
"format": "int64"
},
{
"type": "integer",
"format": "int64",
"minimum": 0
}
],
"description": "The number of the job."
},
"time-wasted": {
"allOf": [
{
"type": "integer",
"format": "int64"
},
{
"type": "integer",
"format": "int64",
"minimum": 0
}
]
},
"workflow-id": {
"description": "The ID of the workflow associated with the provided test counts"
},
"times-flaked": {
"type": "integer",
"format": "int64",
"minimum": 0,
"description": "The number of times the test flaked."
},
"workflow-name": {
"type": "string",
"description": "The name of the workflow."
},
"pipeline-number": {
"allOf": [
{
"type": "integer",
"format": "int64"
},
{
"type": "integer",
"format": "int64",
"minimum": 0
}
],
"description": "The number of the pipeline."
},
"workflow-created-at": {
"type": "string",
"description": "The date and time when workflow was created."
}
}
},
"description": "A list of all instances of flakes. Note that a test is no longer considered flaky after 2 weeks have passed without a flake. Each flake resets this timer."
},
"total-flaky-tests": {
"type": "number",
"format": "double",
"example": 5,
"description": "A count of unique tests that have failed. If your project has N tests that have flaked multiple times each, this will be equal to N."
}
},
"description": "Flaky tests response"
}
InsightsGetFlakyTestsdefaultResponse
{
"type": "object",
"properties": {
"message": {
"type": "string"
}
}
}
InsightsGetJobTimeseriesDataResponse
{
"type": "object",
"required": [
"next_page_token",
"items"
],
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"required": [
"name",
"min_started_at",
"max_ended_at",
"timestamp",
"metrics"
],
"properties": {
"name": {
"type": "string",
"example": "build-and-test",
"description": "The name of the workflow."
},
"metrics": {
"type": "object",
"required": [
"total_runs",
"failed_runs",
"successful_runs",
"throughput",
"median_credits_used",
"total_credits_used",
"duration_metrics"
],
"properties": {
"throughput": {
"type": "number",
"format": "float",
"description": "The average number of runs per day."
},
"total_runs": {
"type": "integer",
"format": "int64",
"minimum": 0,
"description": "The total number of runs, including runs that are still on-hold or running."
},
"failed_runs": {
"type": "integer",
"format": "int64",
"minimum": 0,
"description": "The number of failed runs."
},
"successful_runs": {
"type": "integer",
"format": "int64",
"minimum": 0,
"description": "The number of successful runs."
},
"duration_metrics": {
"type": "object",
"required": [
"min",
"median",
"max",
"p95",
"total"
],
"properties": {
"max": {
"type": "integer",
"format": "int64",
"minimum": 0,
"x-nullable": true,
"description": "The max duration, in seconds, among a group of runs."
},
"min": {
"type": "integer",
"format": "int64",
"minimum": 0,
"x-nullable": true,
"description": "The minimum duration, in seconds, among a group of runs."
},
"p95": {
"type": "integer",
"format": "int64",
"minimum": 0,
"x-nullable": true,
"description": "The 95th percentile duration, in seconds, among a group of runs."
},
"total": {
"type": "integer",
"format": "int64",
"minimum": 0,
"x-nullable": true,
"description": "The total duration, in seconds, added across a group of runs."
},
"median": {
"type": "integer",
"format": "int64",
"minimum": 0,
"x-nullable": true,
"description": "The median duration, in seconds, among a group of runs."
}
},
"description": "Metrics relating to the duration of runs for a workflow."
},
"total_credits_used": {
"type": "integer",
"format": "int64",
"minimum": 0,
"description": "The total credits consumed over the current timeseries interval."
},
"median_credits_used": {
"type": "integer",
"format": "int64",
"minimum": 0,
"description": "The median credits consumed over the current timeseries interval."
}
},
"description": "Metrics relating to a workflow's runs."
},
"timestamp": {
"type": "string",
"format": "date-time",
"description": "The start of the interval for timeseries metrics."
},
"max_ended_at": {
"type": "string",
"format": "date-time",
"description": "The end time of the last execution included in the metrics."
},
"min_started_at": {
"type": "string",
"format": "date-time",
"description": "The start time for the earliest execution included in the metrics."
}
}
},
"description": "Aggregate metrics for a workflow at a time granularity"
},
"next_page_token": {
"type": "string",
"x-nullable": true,
"description": "A token to pass as a `page-token` query parameter to return the next page of results."
}
},
"description": "Project level timeseries metrics response"
}
InsightsGetJobTimeseriesDatadefaultResponse
{
"type": "object",
"properties": {
"message": {
"type": "string"
}
}
}
InsightsGetProjectSummaryMetricsResponse
{
"type": "object",
"properties": {
"org_id": {
"description": "The unique ID of the organization"
},
"project_id": {
"description": "The unique ID of the project"
},
"all_branches": {
"type": "array",
"items": {
"type": "string",
"example": "main",
"description": "The VCS branch of a workflow's trigger."
},
"description": "A list of all the branches for a given project."
},
"project_data": {
"type": "object",
"required": [
"metrics",
"trends"
],
"properties": {
"trends": {
"type": "object",
"required": [
"total_runs",
"total_duration_secs",
"total_credits_used",
"success_rate",
"throughput"
],
"properties": {
"throughput": {
"type": "number",
"format": "float",
"description": "Trend value for the average number of runs per day."
},
"total_runs": {
"type": "number",
"format": "float",
"description": "The trend value for total number of runs."
},
"success_rate": {
"type": "number",
"format": "float",
"description": "The trend value for the success rate."
},
"total_credits_used": {
"type": "number",
"format": "float",
"description": "The trend value for total credits consumed."
},
"total_duration_secs": {
"type": "number",
"format": "float",
"description": "Trend value for total duration."
}
},
"description": "Metric trends aggregated across all workflows and branches for a project."
},
"metrics": {
"type": "object",
"required": [
"total_runs",
"total_duration_secs",
"total_credits_used",
"success_rate",
"throughput"
],
"properties": {
"throughput": {
"type": "number",
"format": "float",
"description": "The average number of runs per day."
},
"total_runs": {
"type": "integer",
"format": "int64",
"minimum": 0,
"description": "The total number of runs, including runs that are still on-hold or running."
},
"success_rate": {
"type": "number",
"format": "float"
},
"total_credits_used": {
"type": "integer",
"format": "int64",
"minimum": 0,
"description": "The total credits consumed over the current timeseries interval."
},
"total_duration_secs": {
"type": "integer",
"format": "int64",
"minimum": 0,
"description": "Total duration, in seconds."
}
},
"description": "Metrics aggregated across all workflows and branches for a project."
}
},
"description": "Metrics and trends data aggregated for a given project."
},
"all_workflows": {
"type": "array",
"items": {
"type": "string",
"example": "build-and-test",
"description": "The name of the workflow."
},
"description": "A list of all the workflows for a given project."
},
"project_workflow_data": {
"type": "array",
"items": {
"type": "object",
"required": [
"workflow_name",
"metrics",
"trends"
],
"properties": {
"trends": {
"type": "object",
"required": [
"total_credits_used",
"p95_duration_secs",
"total_runs",
"success_rate"
],
"properties": {
"total_runs": {
"type": "number",
"format": "float",
"description": "The trend value for total number of runs."
},
"success_rate": {
"type": "number",
"format": "float",
"description": "The trend value for the success rate."
},
"p95_duration_secs": {
"type": "number",
"format": "float",
"description": "The 95th percentile duration among a group of workflow runs."
},
"total_credits_used": {
"type": "number",
"format": "float",
"description": "The trend value for total credits consumed."
}
},
"description": "Trends aggregated across a workflow or branch for a project."
},
"metrics": {
"type": "object",
"required": [
"total_credits_used",
"p95_duration_secs",
"total_runs",
"success_rate"
],
"properties": {
"total_runs": {
"type": "integer",
"format": "int64",
"minimum": 0,
"description": "The total number of runs, including runs that are still on-hold or running."
},
"success_rate": {
"type": "number",
"format": "float"
},
"p95_duration_secs": {
"type": "number",
"format": "float",
"description": "The 95th percentile duration among a group of workflow runs."
},
"total_credits_used": {
"type": "integer",
"format": "int64",
"minimum": 0,
"description": "The total credits consumed over the current timeseries interval."
}
},
"description": "Metrics aggregated across a workflow or branchfor a project."
},
"workflow_name": {
"type": "string",
"example": "build-and-test",
"description": "The name of the workflow."
}
}
},
"description": "A list of metrics and trends data for workflows for a given project."
},
"project_workflow_branch_data": {
"type": "array",
"items": {
"type": "object",
"required": [
"workflow_name",
"branch",
"metrics",
"trends"
],
"properties": {
"branch": {
"type": "string",
"example": "main",
"description": "The VCS branch of a workflow's trigger."
},
"trends": {
"type": "object",
"required": [
"total_credits_used",
"p95_duration_secs",
"total_runs",
"success_rate"
],
"properties": {
"total_runs": {
"type": "number",
"format": "float",
"description": "The trend value for total number of runs."
},
"success_rate": {
"type": "number",
"format": "float",
"description": "The trend value for the success rate."
},
"p95_duration_secs": {
"type": "number",
"format": "float",
"description": "The 95th percentile duration among a group of workflow runs."
},
"total_credits_used": {
"type": "number",
"format": "float",
"description": "The trend value for total credits consumed."
}
},
"description": "Trends aggregated across a workflow or branch for a project."
},
"metrics": {
"type": "object",
"required": [
"total_credits_used",
"p95_duration_secs",
"total_runs",
"success_rate"
],
"properties": {
"total_runs": {
"type": "integer",
"format": "int64",
"minimum": 0,
"description": "The total number of runs, including runs that are still on-hold or running."
},
"success_rate": {
"type": "number",
"format": "float"
},
"p95_duration_secs": {
"type": "number",
"format": "float",
"description": "The 95th percentile duration among a group of workflow runs."
},
"total_credits_used": {
"type": "integer",
"format": "int64",
"minimum": 0,
"description": "The total credits consumed over the current timeseries interval."
}
},
"description": "Metrics aggregated across a workflow or branchfor a project."
},
"workflow_name": {
"type": "string",
"example": "build-and-test",
"description": "The name of the workflow."
}
}
},
"description": "A list of metrics and trends data for branches for a given project."
}
}
}
InsightsGetProjectSummaryMetricsdefaultResponse
{
"type": "object",
"properties": {
"message": {
"type": "string"
}
}
}
InsightsGetProjectWorkflowJobMetricsResponse
{
"type": "object",
"required": [
"items",
"next_page_token"
],
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"required": [
"name",
"metrics",
"window_start",
"window_end"
],
"properties": {
"name": {
"type": "string",
"description": "The name of the job."
},
"metrics": {
"type": "object",
"required": [
"total_runs",
"failed_runs",
"successful_runs",
"duration_metrics",
"success_rate",
"total_credits_used",
"throughput"
],
"properties": {
"throughput": {
"type": "number",
"format": "float",
"description": "The average number of runs per day."
},
"total_runs": {
"type": "integer",
"format": "int64",
"minimum": 0,
"description": "The total number of runs, including runs that are still on-hold or running."
},
"failed_runs": {
"type": "integer",
"format": "int64",
"minimum": 0,
"description": "The number of failed runs."
},
"success_rate": {
"type": "number",
"format": "float"
},
"successful_runs": {
"type": "integer",
"format": "int64",
"minimum": 0,
"description": "The number of successful runs."
},
"duration_metrics": {
"type": "object",
"required": [
"min",
"mean",
"median",
"p95",
"max",
"standard_deviation"
],
"properties": {
"max": {
"type": "integer",
"format": "int64",
"minimum": 0,
"x-nullable": true,
"description": "The max duration, in seconds, among a group of runs."
},
"min": {
"type": "integer",
"format": "int64",
"minimum": 0,
"x-nullable": true,
"description": "The minimum duration, in seconds, among a group of runs."
},
"p95": {
"type": "integer",
"format": "int64",
"minimum": 0,
"x-nullable": true,
"description": "The 95th percentile duration, in seconds, among a group of runs."
},
"mean": {
"type": "integer",
"format": "int64",
"minimum": 0,
"x-nullable": true,
"description": "The mean duration, in seconds, among a group of runs."
},
"median": {
"type": "integer",
"format": "int64",
"minimum": 0,
"x-nullable": true,
"description": "The median duration, in seconds, among a group of runs."
},
"standard_deviation": {
"type": "number",
"format": "float",
"x-nullable": true,
"description": "The standard deviation, in seconds, among a group of runs."
}
},
"description": "Metrics relating to the duration of runs for a workflow job."
},
"total_credits_used": {
"type": "integer",
"format": "int64",
"minimum": 0,
"description": "The total credits consumed by the job in the aggregation window. Note that Insights is not a real time financial reporting tool and should not be used for credit reporting."
}
},
"description": "Metrics relating to a workflow job's runs."
},
"window_end": {
"type": "string",
"format": "date-time",
"description": "The timestamp of the last build within the requested reporting window."
},
"window_start": {
"type": "string",
"format": "date-time",
"description": "The timestamp of the first build within the requested reporting window."
}
}
},
"description": "Job summary metrics."
},
"next_page_token": {
"type": "string",
"x-nullable": true,
"description": "A token to pass as a `page-token` query parameter to return the next page of results."
}
},
"description": "Paginated workflow job summary metrics."
}
InsightsGetProjectWorkflowJobMetricsdefaultResponse
{
"type": "object",
"properties": {
"message": {
"type": "string"
}
}
}
InsightsGetProjectWorkflowMetricsResponse
{
"type": "object",
"required": [
"items",
"next_page_token"
],
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"required": [
"name",
"metrics",
"window_start",
"window_end",
"project_id"
],
"properties": {
"name": {
"type": "string",
"example": "build-and-test",
"description": "The name of the workflow."
},
"metrics": {
"type": "object",
"required": [
"total_runs",
"successful_runs",
"mttr",
"total_credits_used",
"failed_runs",
"success_rate",
"duration_metrics",
"total_recoveries",
"throughput"
],
"properties": {
"mttr": {
"type": "integer",
"format": "int64",
"minimum": 0,
"x-nullable": true,
"description": "The mean time to recovery (mean time between failures and their next success) in seconds."
},
"throughput": {
"type": "number",
"format": "float",
"description": "The average number of runs per day."
},
"total_runs": {
"type": "integer",
"format": "int64",
"minimum": 0,
"description": "The total number of runs, including runs that are still on-hold or running."
},
"failed_runs": {
"type": "integer",
"format": "int64",
"minimum": 0,
"description": "The number of failed runs."
},
"success_rate": {
"type": "number",
"format": "float"
},
"successful_runs": {
"type": "integer",
"format": "int64",
"minimum": 0,
"description": "The number of successful runs."
},
"duration_metrics": {
"type": "object",
"required": [
"min",
"mean",
"median",
"p95",
"max",
"standard_deviation"
],
"properties": {
"max": {
"type": "integer",
"format": "int64",
"minimum": 0,
"x-nullable": true,
"description": "The max duration, in seconds, among a group of runs."
},
"min": {
"type": "integer",
"format": "int64",
"minimum": 0,
"x-nullable": true,
"description": "The minimum duration, in seconds, among a group of runs."
},
"p95": {
"type": "integer",
"format": "int64",
"minimum": 0,
"x-nullable": true,
"description": "The 95th percentile duration, in seconds, among a group of runs."
},
"mean": {
"type": "integer",
"format": "int64",
"minimum": 0,
"x-nullable": true,
"description": "The mean duration, in seconds, among a group of runs."
},
"median": {
"type": "integer",
"format": "int64",
"minimum": 0,
"x-nullable": true,
"description": "The median duration, in seconds, among a group of runs."
},
"standard_deviation": {
"type": "number",
"format": "float",
"x-nullable": true,
"description": "The standard deviation, in seconds, among a group of runs."
}
},
"description": "Metrics relating to the duration of runs for a workflow."
},
"total_recoveries": {
"type": "integer",
"format": "int64",
"minimum": 0,
"x-nullable": true,
"description": "The number of recovered workflow executions per day."
},
"total_credits_used": {
"type": "integer",
"format": "int64",
"minimum": 0,
"x-nullable": true,
"description": "The total credits consumed by the workflow in the aggregation window. Note that Insights is not a real time financial reporting tool and should not be used for credit reporting."
}
},
"description": "Metrics relating to a workflow's runs."
},
"project_id": {
"description": "The unique ID of the project"
},
"window_end": {
"type": "string",
"format": "date-time",
"description": "The timestamp of the last build within the requested reporting window."
},
"window_start": {
"type": "string",
"format": "date-time",
"description": "The timestamp of the first build within the requested reporting window."
}
}
},
"description": "Workflow summary metrics."
},
"next_page_token": {
"type": "string",
"x-nullable": true,
"description": "A token to pass as a `page-token` query parameter to return the next page of results."
}
},
"description": "Paginated workflow summary metrics."
}
InsightsGetProjectWorkflowMetricsdefaultResponse
{
"type": "object",
"properties": {
"message": {
"type": "string"
}
}
}
InsightsGetProjectWorkflowTestMetricsResponse
{
"type": "object",
"required": [
"average_test_count",
"most_failed_tests",
"most_failed_tests_extra",
"slowest_tests",
"slowest_tests_extra",
"total_test_runs",
"test_runs"
],
"properties": {
"test_runs": {
"type": "array",
"items": {
"type": "object",
"required": [
"pipeline_number",
"workflow_id",
"success_rate",
"test_counts"
],
"properties": {
"test_counts": {
"type": "object",
"required": [
"error",
"failure",
"skipped",
"success",
"total"
],
"properties": {
"error": {
"type": "integer",
"format": "int64",
"minimum": 0,
"description": "The number of tests with the error status"
},
"total": {
"type": "integer",
"format": "int64",
"minimum": 0,
"description": "The total number of tests"
},
"failure": {
"type": "integer",
"format": "int64",
"minimum": 0,
"description": "The number of tests with the failure status"
},
"skipped": {
"type": "integer",
"format": "int64",
"minimum": 0,
"description": "The number of tests with the skipped status"
},
"success": {
"type": "integer",
"format": "int64",
"minimum": 0,
"description": "The number of tests with the success status"
}
},
"description": "Test counts for a given pipeline number"
},
"workflow_id": {
"description": "The ID of the workflow associated with the provided test counts"
},
"success_rate": {
"type": "number",
"format": "float",
"description": "The success rate calculated from test counts"
},
"pipeline_number": {
"type": "integer",
"format": "int64",
"minimum": 0,
"description": "The number of the pipeline associated with the provided test counts"
}
}
},
"description": "Test counts grouped by pipeline number and workflow id"
},
"slowest_tests": {
"type": "array",
"items": {
"type": "object",
"required": [
"failed_runs",
"job_name",
"p95_duration",
"test_name",
"file",
"source",
"classname",
"total_runs",
"flaky"
],
"properties": {
"file": {
"type": "string",
"x-nullable": true,
"description": "The file the test belongs to."
},
"flaky": {
"type": "boolean",
"description": "Whether the test is flaky."
},
"source": {
"type": "string",
"x-nullable": true,
"description": "The source of the test."
},
"job_name": {
"type": "string",
"description": "The name of the job."
},
"classname": {
"type": "string",
"x-nullable": true,
"description": "The class the test belongs to."
},
"test_name": {
"type": "string",
"description": "The name of the test."
},
"total_runs": {
"type": "integer",
"format": "int64",
"minimum": 0,
"description": "The total number of times the test was run."
},
"failed_runs": {
"type": "integer",
"format": "int64",
"minimum": 0,
"description": "The number of times the test failed"
},
"p95_duration": {
"type": "number",
"format": "double",
"x-nullable": true,
"description": "The 95th percentile duration, in seconds, among a group of test runs."
}
}
},
"description": "Metrics for the slowest running tests"
},
"total_test_runs": {
"type": "integer",
"format": "int64",
"minimum": 0,
"description": "The total number of test runs"
},
"most_failed_tests": {
"type": "array",
"items": {
"type": "object",
"required": [
"failed_runs",
"job_name",
"p95_duration",
"test_name",
"file",
"source",
"classname",
"total_runs",
"flaky"
],
"properties": {
"file": {
"type": "string",
"x-nullable": true,
"description": "The file the test belongs to."
},
"flaky": {
"type": "boolean",
"description": "Whether the test is flaky."
},
"source": {
"type": "string",
"x-nullable": true,
"description": "The source of the test."
},
"job_name": {
"type": "string",
"description": "The name of the job."
},
"classname": {
"type": "string",
"x-nullable": true,
"description": "The class the test belongs to."
},
"test_name": {
"type": "string",
"description": "The name of the test."
},
"total_runs": {
"type": "integer",
"format": "int64",
"minimum": 0,
"description": "The total number of times the test was run."
},
"failed_runs": {
"type": "integer",
"format": "int64",
"minimum": 0,
"description": "The number of times the test failed"
},
"p95_duration": {
"type": "number",
"format": "double",
"x-nullable": true,
"description": "The 95th percentile duration, in seconds, among a group of test runs."
}
}
},
"description": "Metrics for the most frequently failing tests"
},
"average_test_count": {
"type": "integer",
"format": "int64",
"minimum": 0,
"description": "The average number of tests executed per run"
},
"slowest_tests_extra": {
"type": "integer",
"format": "int64",
"minimum": 0,
"description": "The number of tests with the same duration rate being omitted from slowest_tests"
},
"most_failed_tests_extra": {
"type": "integer",
"format": "int64",
"minimum": 0,
"description": "The number of tests with the same success rate being omitted from most_failed_tests"
}
},
"description": "Project level test metrics response"
}
InsightsGetProjectWorkflowTestMetricsdefaultResponse
{
"type": "object",
"properties": {
"message": {
"type": "string"
}
}
}
InsightsGetRecentWorkflowRunsResponse
{
"type": "object",
"required": [
"items",
"next_page_token"
],
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"required": [
"id",
"branch",
"duration",
"created_at",
"stopped_at",
"credits_used",
"status",
"is_approval"
],
"properties": {
"id": {
"type": "string",
"format": "uuid",
"description": "The unique ID of the workflow."
},
"branch": {
"type": "string",
"example": "main",
"description": "The VCS branch of a Workflow's trigger."
},
"status": {
"enum": [
"success",
"failed",
"error",
"canceled",
"unauthorized"
],
"type": "string",
"x-nullable": true,
"description": "Workflow status."
},
"duration": {
"type": "integer",
"format": "int64",
"minimum": 0,
"x-nullable": true,
"description": "The duration in seconds of a run."
},
"created_at": {
"type": "string",
"format": "date-time",
"description": "The date and time the workflow was created."
},
"stopped_at": {
"type": "string",
"format": "date-time",
"x-nullable": true,
"description": "The date and time the workflow stopped."
},
"is_approval": {
"type": "boolean",
"example": false,
"description": "Describes if the job is an approval job or not. Approval jobs are intermediary jobs that are created to pause the workflow until approved."
},
"credits_used": {
"type": "integer",
"format": "int64",
"minimum": 0,
"description": "The number of credits used during execution. Note that Insights is not a real time financial reporting tool and should not be used for credit reporting."
}
}
},
"description": "Recent workflow runs."
},
"next_page_token": {
"type": "string",
"x-nullable": true,
"description": "A token to pass as a `page-token` query parameter to return the next page of results."
}
},
"description": "Paginated recent workflow runs."
}
InsightsGetRecentWorkflowRunsdefaultResponse
{
"type": "object",
"properties": {
"message": {
"type": "string"
}
}
}
InsightsGetSummaryMetricsWithTrendsResponse
{
"type": "object",
"required": [
"org_data",
"org_project_data",
"all_projects"
],
"properties": {
"org_data": {
"type": "object",
"required": [
"metrics",
"trends"
],
"properties": {
"trends": {
"type": "object",
"required": [
"total_runs",
"total_duration_secs",
"total_credits_used",
"success_rate",
"throughput"
],
"properties": {
"throughput": {
"type": "number",
"format": "float",
"description": "Trend value for the average number of runs per day."
},
"total_runs": {
"type": "number",
"format": "float",
"description": "The trend value for total number of runs."
},
"success_rate": {
"type": "number",
"format": "float",
"description": "The trend value for the success rate."
},
"total_credits_used": {
"type": "number",
"format": "float",
"description": "The trend value for total credits consumed."
},
"total_duration_secs": {
"type": "number",
"format": "float",
"description": "Trend value for total duration."
}
},
"description": "Trends for a single org."
},
"metrics": {
"type": "object",
"required": [
"total_runs",
"total_duration_secs",
"total_credits_used",
"success_rate",
"throughput"
],
"properties": {
"throughput": {
"type": "number",
"format": "float",
"description": "The average number of runs per day."
},
"total_runs": {
"type": "integer",
"format": "int64",
"minimum": 0,
"description": "The total number of runs, including runs that are still on-hold or running."
},
"success_rate": {
"type": "number",
"format": "float"
},
"total_credits_used": {
"type": "integer",
"format": "int64",
"minimum": 0,
"description": "The total credits consumed over the current timeseries interval."
},
"total_duration_secs": {
"type": "integer",
"format": "int64",
"minimum": 0,
"description": "Total duration, in seconds."
}
},
"description": "Metrics for a single org metrics."
}
},
"description": "Aggregated metrics for an org, with trends."
},
"all_projects": {
"type": "array",
"items": {
"type": "string"
},
"x-nullable": true,
"description": "A list of all the project names in the organization."
},
"org_project_data": {
"type": "array",
"items": {
"type": "object",
"required": [
"project_name",
"metrics",
"trends"
],
"properties": {
"trends": {
"type": "object",
"required": [
"total_credits_used",
"total_duration_secs",
"total_runs",
"success_rate"
],
"properties": {
"total_runs": {
"type": "number",
"format": "float",
"description": "The trend value for total number of runs."
},
"success_rate": {
"type": "number",
"format": "float",
"description": "The trend value for the success rate."
},
"total_credits_used": {
"type": "number",
"format": "float",
"description": "The trend value for total credits consumed."
},
"total_duration_secs": {
"type": "number",
"format": "float",
"description": "Trend value for total duration."
}
},
"description": "Trends for a single project, across all branches."
},
"metrics": {
"type": "object",
"required": [
"total_credits_used",
"total_duration_secs",
"total_runs",
"success_rate"
],
"properties": {
"total_runs": {
"type": "integer",
"format": "int64",
"minimum": 0,
"description": "The total number of runs, including runs that are still on-hold or running."
},
"success_rate": {
"type": "number",
"format": "float"
},
"total_credits_used": {
"type": "integer",
"format": "int64",
"minimum": 0,
"description": "The total credits consumed over the current timeseries interval."
},
"total_duration_secs": {
"type": "integer",
"format": "int64",
"minimum": 0,
"description": "Total duration, in seconds."
}
},
"description": "Metrics for a single project, across all branches."
},
"project_name": {
"type": "string",
"example": "api-preview-docs",
"description": "The name of the project."
}
}
},
"description": "Metrics for a single project, across all branches"
}
},
"description": "Summary metrics with trends for the entire org, and for each project."
}
InsightsGetSummaryMetricsWithTrendsdefaultResponse
{
"type": "object",
"properties": {
"message": {
"type": "string"
}
}
}
InsightsGetWorkflowSummaryMetricsResponse
{
"type": "object",
"required": [
"metrics",
"trends",
"workflow_names"
],
"properties": {
"trends": {
"type": "object",
"required": [
"total_runs",
"failed_runs",
"success_rate",
"p95_duration_secs",
"median_duration_secs",
"total_credits_used",
"mttr",
"throughput"
],
"properties": {
"mttr": {
"type": "number",
"format": "float",
"description": "trend for mean time to recovery (mean time between failures and their next success)."
},
"throughput": {
"type": "number",
"format": "float",
"description": "Trend value for the average number of runs per day."
},
"total_runs": {
"type": "number",
"format": "float",
"description": "The trend value for total number of runs."
},
"failed_runs": {
"type": "number",
"format": "float",
"description": "The trend value for number of failed runs."
},
"success_rate": {
"type": "number",
"format": "float",
"description": "The trend value for the success rate."
},
"p95_duration_secs": {
"type": "number",
"format": "float",
"description": "Trend value for the 95th percentile duration for a workflow for a given time window."
},
"total_credits_used": {
"type": "number",
"format": "float",
"description": "The trend value for total credits consumed."
},
"median_duration_secs": {
"type": "number",
"format": "float",
"description": "Trend value for the 50th percentile duration for a workflow for a given time window."
}
},
"description": "Trends for aggregated metrics across a workflow for a given time window."
},
"metrics": {
"type": "object",
"required": [
"total_runs",
"successful_runs",
"mttr",
"total_credits_used",
"failed_runs",
"success_rate",
"window_start",
"duration_metrics",
"window_end",
"throughput",
"completed_runs"
],
"properties": {
"mttr": {
"type": "integer",
"format": "int64",
"minimum": 0,
"x-nullable": true,
"description": "The mean time to recovery (mean time between failures and their next success) in seconds."
},
"throughput": {
"type": "number",
"format": "float",
"description": "The average number of runs per day."
},
"total_runs": {
"type": "integer",
"format": "int64",
"minimum": 0,
"description": "The total number of runs, including runs that are still on-hold or running."
},
"window_end": {
"type": "string",
"format": "date-time",
"description": "The timestamp of the last build within the requested reporting window."
},
"failed_runs": {
"type": "integer",
"format": "int64",
"minimum": 0,
"description": "The number of failed runs."
},
"success_rate": {
"type": "number",
"format": "float"
},
"window_start": {
"type": "string",
"format": "date-time",
"description": "The timestamp of the first build within the requested reporting window."
},
"completed_runs": {
"type": "integer",
"format": "int64",
"minimum": 0,
"x-nullable": true,
"description": "The number of runs that ran to completion within the aggregation window"
},
"successful_runs": {
"type": "integer",
"format": "int64",
"minimum": 0,
"description": "The number of successful runs."
},
"duration_metrics": {
"type": "object",
"required": [
"min",
"mean",
"median",
"p95",
"max",
"standard_deviation"
],
"properties": {
"max": {
"type": "integer",
"format": "int64",
"minimum": 0,
"x-nullable": true,
"description": "The max duration, in seconds, among a group of runs."
},
"min": {
"type": "integer",
"format": "int64",
"minimum": 0,
"x-nullable": true,
"description": "The minimum duration, in seconds, among a group of runs."
},
"p95": {
"type": "integer",
"format": "int64",
"minimum": 0,
"x-nullable": true,
"description": "The 95th percentile duration, in seconds, among a group of runs."
},
"mean": {
"type": "integer",
"format": "int64",
"minimum": 0,
"x-nullable": true,
"description": "The mean duration, in seconds, among a group of runs."
},
"median": {
"type": "integer",
"format": "int64",
"minimum": 0,
"x-nullable": true,
"description": "The median duration, in seconds, among a group of runs."
},
"standard_deviation": {
"type": "number",
"format": "float",
"x-nullable": true,
"description": "The standard deviation, in seconds, among a group of runs."
}
},
"description": "Metrics relating to the duration of runs for a workflow."
},
"total_credits_used": {
"type": "integer",
"format": "int64",
"minimum": 0,
"x-nullable": true,
"description": "The total credits consumed by the workflow in the aggregation window. Note that Insights is not a real time financial reporting tool and should not be used for credit reporting."
}
},
"description": "Metrics aggregated across a workflow for a given time window."
},
"workflow_names": {
"type": "array",
"items": {
"type": "string"
},
"description": "A list of all the workflow names for a given project."
}
},
"description": "Workflow level aggregated metrics and trends response"
}
InsightsGetWorkflowSummaryMetricsdefaultResponse
{
"type": "object",
"properties": {
"message": {
"type": "string"
}
}
}
InsightsListProjectBranchesResponse
{
"type": "object",
"required": [
"org_id",
"project_id",
"branches"
],
"properties": {
"org_id": {
"description": "The unique ID of the organization"
},
"branches": {
"type": "array",
"items": {
"type": "string",
"example": "main",
"description": "The VCS branch of a workflow's trigger."
},
"description": "A list of all the branches for a given project."
},
"project_id": {
"description": "The unique ID of the project"
}
},
"description": "Project branches response."
}
InsightsListProjectBranchesdefaultResponse
{
"type": "object",
"properties": {
"message": {
"type": "string"
}
}
}
JSONDuration
{
"type": "string",
"pattern": "^([0-9]+(ms|s|m|h|d|w)){1,7}$"
}
JobCancelWithNumberResponse
{
"type": "object",
"title": "MessageResponse",
"required": [
"message"
],
"properties": {
"message": {
"type": "string",
"description": "A human-readable message"
}
},
"description": "message response"
}
JobCancelWithNumberdefaultResponse
{
"type": "object",
"properties": {
"message": {
"type": "string"
}
}
}
JobGetArtifactsResponse
{
"type": "object",
"title": "ArtifactListResponse",
"required": [
"items",
"next_page_token"
],
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"title": "Artifact",
"required": [
"path",
"node_index",
"url"
],
"properties": {
"url": {
"type": "string",
"description": "The URL to download the artifact contents."
},
"path": {
"type": "string",
"description": "The artifact path."
},
"node_index": {
"type": "integer",
"format": "int64",
"minimum": 0,
"description": "The index of the node that stored the artifact."
}
},
"description": "An artifact"
}
},
"next_page_token": {
"type": "string",
"x-nullable": true,
"description": "A token to pass as a `page-token` query parameter to return the next page of results."
}
}
}
JobGetArtifactsdefaultResponse
{
"type": "object",
"properties": {
"message": {
"type": "string"
}
}
}
JobGetDetailsResponse
{
"type": "object",
"title": "Job Details",
"required": [
"number",
"name",
"status",
"started_at",
"created_at",
"queued_at",
"duration",
"executor",
"project",
"organization",
"contexts",
"web_url",
"parallel_runs",
"latest_workflow",
"pipeline",
"parallelism",
"messages"
],
"properties": {
"name": {
"type": "string",
"description": "The name of the job."
},
"number": {
"type": "integer",
"format": "int64",
"description": "The number of the job."
},
"status": {
"enum": [
"success",
"running",
"not_run",
"failed",
"retried",
"queued",
"not_running",
"infrastructure_fail",
"timedout",
"on_hold",
"terminated-unknown",
"blocked",
"canceled",
"unauthorized"
],
"type": "string",
"description": "The current status of the job."
},
"project": {
"type": "object",
"required": [
"id",
"slug",
"name",
"external_url"
],
"properties": {
"id": {
"type": "string",
"format": "uuid"
},
"name": {
"type": "string",
"example": "api-preview-docs",
"description": "The name of the project"
},
"slug": {
"type": "string",
"example": "gh/CircleCI-Public/api-preview-docs",
"description": "Project slug in the form `vcs-slug/org-name/repo-name`. The `/` characters may be URL-escaped. For projects that use GitLab or GitHub App, use `circleci` as the `vcs-slug`, replace `org-name` with the organization ID (found in Organization Settings), and replace `repo-name` with the project ID (found in Project Settings)."
},
"external_url": {
"type": "string",
"example": "https://github.com/CircleCI-Public/api-preview-docs",
"description": "URL to the repository hosting the project's code"
}
},
"description": "Information about a project."
},
"web_url": {
"type": "string",
"description": "URL of the job in CircleCI Web UI."
},
"contexts": {
"type": "array",
"items": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"description": "The name of the context."
}
},
"description": "Information about the context."
},
"description": "List of contexts used by the job."
},
"duration": {
"type": "integer",
"format": "int64",
"x-nullable": true,
"description": "Duration of a job in milliseconds."
},
"executor": {
"type": "object",
"required": [
"resource_class"
],
"properties": {
"type": {
"type": "string",
"description": "Executor type."
},
"resource_class": {
"type": "string",
"description": "Resource class name."
}
},
"description": "Information about executor used for a job."
},
"messages": {
"type": "array",
"items": {
"type": "object",
"required": [
"type",
"message"
],
"properties": {
"type": {
"type": "string",
"description": "Message type."
},
"reason": {
"type": "string",
"description": "Value describing the reason for message to be added to the job."
},
"message": {
"type": "string",
"description": "Information describing message."
}
},
"description": "Message from CircleCI execution platform."
},
"description": "Messages from CircleCI execution platform."
},
"pipeline": {
"type": "object",
"required": [
"id"
],
"properties": {
"id": {
"type": "string",
"format": "uuid",
"example": "5034460f-c7c4-4c43-9457-de07e2029e7b",
"description": "The unique ID of the pipeline."
}
},
"description": "Info about a pipeline the job is a part of."
},
"queued_at": {
"type": "string",
"format": "date-time",
"description": "The time when the job was placed in a queue."
},
"created_at": {
"type": "string",
"format": "date-time",
"description": "The time when the job was created."
},
"started_at": {
"type": "string",
"format": "date-time",
"description": "The date and time the job started."
},
"stopped_at": {
"type": "string",
"format": "date-time",
"x-nullable": true,
"description": "The time when the job stopped."
},
"parallelism": {
"type": "integer",
"format": "int64",
"description": "A number of parallel runs the job has."
},
"organization": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"description": "The name of the organization."
}
},
"description": "Information about an organization."
},
"parallel_runs": {
"type": "array",
"items": {
"type": "object",
"required": [
"index",
"status"
],
"properties": {
"index": {
"type": "integer",
"format": "int64",
"description": "Index of the parallel run."
},
"status": {
"type": "string",
"description": "Status of the parallel run."
}
},
"description": "Info about a status of the parallel run."
},
"description": "Info about parallels runs and their status."
},
"latest_workflow": {
"type": "object",
"required": [
"id",
"name"
],
"properties": {
"id": {
"type": "string",
"format": "uuid",
"description": "The unique ID of the workflow."
},
"name": {
"type": "string",
"example": "build-and-test",
"description": "The name of the workflow."
}
},
"description": "Info about the latest workflow the job was a part of."
}
},
"description": "Job Details"
}
JobGetDetailsdefaultResponse
{
"type": "object",
"properties": {
"message": {
"type": "string"
}
}
}
JobGetTestMetadataResponse
{
"type": "object",
"title": "TestsResponse",
"required": [
"items",
"next_page_token"
],
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"required": [
"message",
"source",
"run_time",
"file",
"result",
"name",
"classname"
],
"properties": {
"file": {
"type": "string",
"example": "",
"description": "The file in which the test is defined."
},
"name": {
"type": "string",
"example": "",
"description": "The name of the test."
},
"result": {
"type": "string",
"example": "",
"description": "Indication of whether the test succeeded."
},
"source": {
"type": "string",
"example": "",
"description": "The program that generated the test results"
},
"message": {
"type": "string",
"example": "",
"x-nullable": true,
"description": "The failure message associated with the test."
},
"run_time": {
"type": "number",
"format": "double",
"example": null,
"description": "The time it took to run the test in seconds"
},
"classname": {
"type": "string",
"example": "",
"description": "The programmatic location of the test."
}
}
},
"title": "TestsResponse"
},
"next_page_token": {
"type": "string",
"x-nullable": true,
"description": "A token to pass as a `page-token` query parameter to return the next page of results."
}
}
}
JobGetTestMetadatadefaultResponse
{
"type": "object",
"properties": {
"message": {
"type": "string"
}
}
}
OidcTokenManagementDeleteOrgClaims403Response
{
"type": "object",
"required": [
"error"
],
"properties": {
"error": {
"type": "string",
"example": "Forbidden"
}
}
}
OidcTokenManagementDeleteOrgClaims500Response
{
"type": "object",
"required": [
"error"
],
"properties": {
"error": {
"type": "string",
"example": "internal server error"
}
}
}
OidcTokenManagementDeleteOrgClaimsResponse
{
"type": "object",
"required": [
"error"
],
"properties": {
"error": {
"type": "string",
"example": "OwnerID: must be a valid UUID."
}
}
}
PatchClaimsRequest
{
"type": "object",
"properties": {
"ttl": {
"$ref": "#/components/schemas/JSONDuration"
},
"audience": {
"type": "array",
"items": {
"type": "string"
}
}
}
}
PipelineContinueExecutionRequest
{
"type": "object",
"required": [
"continuation-key",
"configuration"
],
"properties": {
"parameters": {
"type": "object",
"example": {
"deploy_prod": true
},
"description": "An object containing pipeline parameters and their values.",
"additionalProperties": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
},
{
"type": "boolean"
}
]
}
},
"configuration": {
"type": "string",
"description": "A configuration string for the pipeline."
},
"continuation-key": {
"type": "string",
"title": "PipelineContinuationKey",
"description": "A pipeline continuation key."
}
}
}
PipelineContinueExecutionResponse
{
"type": "object",
"title": "MessageResponse",
"required": [
"message"
],
"properties": {
"message": {
"type": "string",
"description": "A human-readable message"
}
},
"description": "message response"
}
PipelineContinueExecutiondefaultResponse
{
"type": "object",
"properties": {
"message": {
"type": "string"
}
}
}
PipelineGetAllPipelinesResponse
{
"type": "object",
"title": "PipelineListResponse",
"required": [
"items",
"next_page_token"
],
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"title": "Pipeline",
"required": [
"id",
"number",
"project_slug",
"created_at",
"errors",
"state",
"trigger"
],
"properties": {
"id": {
"type": "string",
"format": "uuid",
"example": "5034460f-c7c4-4c43-9457-de07e2029e7b",
"description": "The unique ID of the pipeline."
},
"vcs": {
"type": "object",
"required": [
"provider_name",
"origin_repository_url",
"target_repository_url",
"revision"
],
"properties": {
"tag": {
"type": "string",
"example": "v3.1.4159",
"description": "The tag used by the pipeline. The commit that this tag points to was used for the pipeline. Note that `branch` and `tag` are mutually exclusive."
},
"branch": {
"type": "string",
"example": "feature/design-new-api",
"description": "The branch where the pipeline ran. The HEAD commit on this branch was used for the pipeline. Note that `branch` and `tag` are mutually exclusive. To trigger a pipeline for a PR by number use `pull/<number>/head` for the PR ref or `pull/<number>/merge` for the merge ref (GitHub only)."
},
"commit": {
"type": "object",
"required": [
"subject",
"body"
],
"properties": {
"body": {
"type": "string",
"x-nullable": true,
"description": "The body of the commit message."
},
"subject": {
"type": "string",
"x-nullable": true,
"description": "The subject of the commit message."
}
},
"description": "The latest commit in the pipeline."
},
"revision": {
"type": "string",
"example": "f454a02b5d10fcccfd7d9dd7608a76d6493a98b4",
"description": "The code revision the pipeline ran."
},
"review_id": {
"type": "string",
"example": "123",
"description": "The code review id."
},
"review_url": {
"type": "string",
"example": "https://github.com/CircleCI-Public/api-preview-docs/pull/123",
"description": "The code review URL."
},
"provider_name": {
"type": "string",
"example": "GitHub",
"description": "Name of the VCS provider (e.g. GitHub, Bitbucket)."
},
"origin_repository_url": {
"type": "string",
"example": "https://github.com/CircleCI-Public/api-preview-docs",
"description": "URL for the repository where the trigger originated. For fork-PR pipelines, this is the URL to the fork. For other pipelines the `origin_` and `target_repository_url`s will be the same."
},
"target_repository_url": {
"type": "string",
"example": "https://github.com/CircleCI-Public/api-preview-docs",
"description": "URL for the repository the trigger targets (i.e. the repository where the PR will be merged). For fork-PR pipelines, this is the URL to the parent repo. For other pipelines, the `origin_` and `target_repository_url`s will be the same."
}
},
"description": "VCS information for the pipeline."
},
"state": {
"enum": [
"created",
"errored",
"setup-pending",
"setup",
"pending"
],
"type": "string",
"description": "The current state of the pipeline."
},
"errors": {
"type": "array",
"items": {
"type": "object",
"required": [
"type",
"message"
],
"properties": {
"type": {
"enum": [
"config",
"config-fetch",
"timeout",
"permission",
"other",
"plan"
],
"type": "string",
"description": "The type of error."
},
"message": {
"type": "string",
"description": "A human-readable error message."
}
},
"description": "An error with a type and message."
},
"description": "A sequence of errors that have occurred within the pipeline."
},
"number": {
"type": "integer",
"format": "int64",
"example": 25,
"description": "The number of the pipeline."
},
"trigger": {
"type": "object",
"required": [
"type",
"received_at",
"actor"
],
"properties": {
"type": {
"enum": [
"scheduled_pipeline",
"explicit",
"api",
"webhook"
],
"type": "string",
"description": "The type of trigger."
},
"actor": {
"type": "object",
"required": [
"login",
"avatar_url"
],
"properties": {
"login": {
"type": "string",
"title": "Login",
"description": "The login information for the user on the VCS."
},
"avatar_url": {
"type": "string",
"x-nullable": true,
"description": "URL to the user's avatar on the VCS"
}
},
"description": "The user who triggered the Pipeline."
},
"received_at": {
"type": "string",
"format": "date-time",
"description": "The date and time the trigger was received."
}
},
"description": "A summary of the trigger."
},
"created_at": {
"type": "string",
"format": "date-time",
"description": "The date and time the pipeline was created."
},
"updated_at": {
"type": "string",
"format": "date-time",
"description": "The date and time the pipeline was last updated."
},
"project_slug": {
"type": "string",
"example": "gh/CircleCI-Public/api-preview-docs",
"description": "The project-slug for the pipeline."
},
"trigger_parameters": {
"type": "object",
"additionalProperties": {
"anyOf": [
{
"type": "string"
},
{
"type": "integer",
"format": "int64"
},
{
"type": "boolean"
},
{
"type": "object"
}
]
}
}
},
"description": "A pipeline response."
}
},
"next_page_token": {
"type": "string",
"x-nullable": true,
"description": "A token to pass as a `page-token` query parameter to return the next page of results."
}
},
"description": "List of pipelines"
}
PipelineGetAllPipelinesdefaultResponse
{
"type": "object",
"properties": {
"message": {
"type": "string"
}
}
}
PipelineGetByIdResponse
{
"type": "object",
"title": "Pipeline",
"required": [
"id",
"number",
"project_slug",
"created_at",
"errors",
"state",
"trigger"
],
"properties": {
"id": {
"type": "string",
"format": "uuid",
"example": "5034460f-c7c4-4c43-9457-de07e2029e7b",
"description": "The unique ID of the pipeline."
},
"vcs": {
"type": "object",
"required": [
"provider_name",
"origin_repository_url",
"target_repository_url",
"revision"
],
"properties": {
"tag": {
"type": "string",
"example": "v3.1.4159",
"description": "The tag used by the pipeline. The commit that this tag points to was used for the pipeline. Note that `branch` and `tag` are mutually exclusive."
},
"branch": {
"type": "string",
"example": "feature/design-new-api",
"description": "The branch where the pipeline ran. The HEAD commit on this branch was used for the pipeline. Note that `branch` and `tag` are mutually exclusive. To trigger a pipeline for a PR by number use `pull/<number>/head` for the PR ref or `pull/<number>/merge` for the merge ref (GitHub only)."
},
"commit": {
"type": "object",
"required": [
"subject",
"body"
],
"properties": {
"body": {
"type": "string",
"x-nullable": true,
"description": "The body of the commit message."
},
"subject": {
"type": "string",
"x-nullable": true,
"description": "The subject of the commit message."
}
},
"description": "The latest commit in the pipeline."
},
"revision": {
"type": "string",
"example": "f454a02b5d10fcccfd7d9dd7608a76d6493a98b4",
"description": "The code revision the pipeline ran."
},
"review_id": {
"type": "string",
"example": "123",
"description": "The code review id."
},
"review_url": {
"type": "string",
"example": "https://github.com/CircleCI-Public/api-preview-docs/pull/123",
"description": "The code review URL."
},
"provider_name": {
"type": "string",
"example": "GitHub",
"description": "Name of the VCS provider (e.g. GitHub, Bitbucket)."
},
"origin_repository_url": {
"type": "string",
"example": "https://github.com/CircleCI-Public/api-preview-docs",
"description": "URL for the repository where the trigger originated. For fork-PR pipelines, this is the URL to the fork. For other pipelines the `origin_` and `target_repository_url`s will be the same."
},
"target_repository_url": {
"type": "string",
"example": "https://github.com/CircleCI-Public/api-preview-docs",
"description": "URL for the repository the trigger targets (i.e. the repository where the PR will be merged). For fork-PR pipelines, this is the URL to the parent repo. For other pipelines, the `origin_` and `target_repository_url`s will be the same."
}
},
"description": "VCS information for the pipeline."
},
"state": {
"enum": [
"created",
"errored",
"setup-pending",
"setup",
"pending"
],
"type": "string",
"description": "The current state of the pipeline."
},
"errors": {
"type": "array",
"items": {
"type": "object",
"required": [
"type",
"message"
],
"properties": {
"type": {
"enum": [
"config",
"config-fetch",
"timeout",
"permission",
"other",
"plan"
],
"type": "string",
"description": "The type of error."
},
"message": {
"type": "string",
"description": "A human-readable error message."
}
},
"description": "An error with a type and message."
},
"description": "A sequence of errors that have occurred within the pipeline."
},
"number": {
"type": "integer",
"format": "int64",
"example": 25,
"description": "The number of the pipeline."
},
"trigger": {
"type": "object",
"required": [
"type",
"received_at",
"actor"
],
"properties": {
"type": {
"enum": [
"scheduled_pipeline",
"explicit",
"api",
"webhook"
],
"type": "string",
"description": "The type of trigger."
},
"actor": {
"type": "object",
"required": [
"login",
"avatar_url"
],
"properties": {
"login": {
"type": "string",
"title": "Login",
"description": "The login information for the user on the VCS."
},
"avatar_url": {
"type": "string",
"x-nullable": true,
"description": "URL to the user's avatar on the VCS"
}
},
"description": "The user who triggered the Pipeline."
},
"received_at": {
"type": "string",
"format": "date-time",
"description": "The date and time the trigger was received."
}
},
"description": "A summary of the trigger."
},
"created_at": {
"type": "string",
"format": "date-time",
"description": "The date and time the pipeline was created."
},
"updated_at": {
"type": "string",
"format": "date-time",
"description": "The date and time the pipeline was last updated."
},
"project_slug": {
"type": "string",
"example": "gh/CircleCI-Public/api-preview-docs",
"description": "The project-slug for the pipeline."
},
"trigger_parameters": {
"type": "object",
"additionalProperties": {
"anyOf": [
{
"type": "string"
},
{
"type": "integer",
"format": "int64"
},
{
"type": "boolean"
},
{
"type": "object"
}
]
}
}
},
"description": "A pipeline response."
}
PipelineGetByIddefaultResponse
{
"type": "object",
"properties": {
"message": {
"type": "string"
}
}
}
PipelineGetByNumberResponse
{
"type": "object",
"title": "Pipeline",
"required": [
"id",
"number",
"project_slug",
"created_at",
"errors",
"state",
"trigger"
],
"properties": {
"id": {
"type": "string",
"format": "uuid",
"example": "5034460f-c7c4-4c43-9457-de07e2029e7b",
"description": "The unique ID of the pipeline."
},
"vcs": {
"type": "object",
"required": [
"provider_name",
"origin_repository_url",
"target_repository_url",
"revision"
],
"properties": {
"tag": {
"type": "string",
"example": "v3.1.4159",
"description": "The tag used by the pipeline. The commit that this tag points to was used for the pipeline. Note that `branch` and `tag` are mutually exclusive."
},
"branch": {
"type": "string",
"example": "feature/design-new-api",
"description": "The branch where the pipeline ran. The HEAD commit on this branch was used for the pipeline. Note that `branch` and `tag` are mutually exclusive. To trigger a pipeline for a PR by number use `pull/<number>/head` for the PR ref or `pull/<number>/merge` for the merge ref (GitHub only)."
},
"commit": {
"type": "object",
"required": [
"subject",
"body"
],
"properties": {
"body": {
"type": "string",
"x-nullable": true,
"description": "The body of the commit message."
},
"subject": {
"type": "string",
"x-nullable": true,
"description": "The subject of the commit message."
}
},
"description": "The latest commit in the pipeline."
},
"revision": {
"type": "string",
"example": "f454a02b5d10fcccfd7d9dd7608a76d6493a98b4",
"description": "The code revision the pipeline ran."
},
"review_id": {
"type": "string",
"example": "123",
"description": "The code review id."
},
"review_url": {
"type": "string",
"example": "https://github.com/CircleCI-Public/api-preview-docs/pull/123",
"description": "The code review URL."
},
"provider_name": {
"type": "string",
"example": "GitHub",
"description": "Name of the VCS provider (e.g. GitHub, Bitbucket)."
},
"origin_repository_url": {
"type": "string",
"example": "https://github.com/CircleCI-Public/api-preview-docs",
"description": "URL for the repository where the trigger originated. For fork-PR pipelines, this is the URL to the fork. For other pipelines the `origin_` and `target_repository_url`s will be the same."
},
"target_repository_url": {
"type": "string",
"example": "https://github.com/CircleCI-Public/api-preview-docs",
"description": "URL for the repository the trigger targets (i.e. the repository where the PR will be merged). For fork-PR pipelines, this is the URL to the parent repo. For other pipelines, the `origin_` and `target_repository_url`s will be the same."
}
},
"description": "VCS information for the pipeline."
},
"state": {
"enum": [
"created",
"errored",
"setup-pending",
"setup",
"pending"
],
"type": "string",
"description": "The current state of the pipeline."
},
"errors": {
"type": "array",
"items": {
"type": "object",
"required": [
"type",
"message"
],
"properties": {
"type": {
"enum": [
"config",
"config-fetch",
"timeout",
"permission",
"other",
"plan"
],
"type": "string",
"description": "The type of error."
},
"message": {
"type": "string",
"description": "A human-readable error message."
}
},
"description": "An error with a type and message."
},
"description": "A sequence of errors that have occurred within the pipeline."
},
"number": {
"type": "integer",
"format": "int64",
"example": 25,
"description": "The number of the pipeline."
},
"trigger": {
"type": "object",
"required": [
"type",
"received_at",
"actor"
],
"properties": {
"type": {
"enum": [
"scheduled_pipeline",
"explicit",
"api",
"webhook"
],
"type": "string",
"description": "The type of trigger."
},
"actor": {
"type": "object",
"required": [
"login",
"avatar_url"
],
"properties": {
"login": {
"type": "string",
"title": "Login",
"description": "The login information for the user on the VCS."
},
"avatar_url": {
"type": "string",
"x-nullable": true,
"description": "URL to the user's avatar on the VCS"
}
},
"description": "The user who triggered the Pipeline."
},
"received_at": {
"type": "string",
"format": "date-time",
"description": "The date and time the trigger was received."
}
},
"description": "A summary of the trigger."
},
"created_at": {
"type": "string",
"format": "date-time",
"description": "The date and time the pipeline was created."
},
"updated_at": {
"type": "string",
"format": "date-time",
"description": "The date and time the pipeline was last updated."
},
"project_slug": {
"type": "string",
"example": "gh/CircleCI-Public/api-preview-docs",
"description": "The project-slug for the pipeline."
},
"trigger_parameters": {
"type": "object",
"additionalProperties": {
"anyOf": [
{
"type": "string"
},
{
"type": "integer",
"format": "int64"
},
{
"type": "boolean"
},
{
"type": "object"
}
]
}
}
},
"description": "A pipeline response."
}
PipelineGetByNumberdefaultResponse
{
"type": "object",
"properties": {
"message": {
"type": "string"
}
}
}
PipelineGetConfigurationByIdResponse
{
"type": "object",
"title": "PipelineConfig",
"required": [
"source",
"compiled"
],
"properties": {
"source": {
"type": "string",
"description": "The source configuration for the pipeline, before any config compilation has been performed. If there is no config, then this field will be empty."
},
"compiled": {
"type": "string",
"description": "The compiled configuration for the pipeline, after all orb expansion has been performed. If there were errors processing the pipeline's configuration, then this field may be empty."
},
"setup-config": {
"type": "string",
"description": "The setup configuration for the pipeline used for Setup Workflows. If there were errors processing the pipeline's configuration or if setup workflows are not enabled, then this field should not exist"
},
"compiled-setup-config": {
"type": "string",
"description": "The compiled setup configuration for the pipeline, after all orb expansion has been performed. If there were errors processing the pipeline's setup workflows, then this field may be empty."
}
},
"description": "The configuration strings for the pipeline."
}
PipelineGetConfigurationByIddefaultResponse
{
"type": "object",
"properties": {
"message": {
"type": "string"
}
}
}
PipelineListRecentPipelinesResponse
{
"type": "object",
"title": "PipelineListResponse",
"required": [
"items",
"next_page_token"
],
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"title": "Pipeline",
"required": [
"id",
"number",
"project_slug",
"created_at",
"errors",
"state",
"trigger"
],
"properties": {
"id": {
"type": "string",
"format": "uuid",
"example": "5034460f-c7c4-4c43-9457-de07e2029e7b",
"description": "The unique ID of the pipeline."
},
"vcs": {
"type": "object",
"required": [
"provider_name",
"origin_repository_url",
"target_repository_url",
"revision"
],
"properties": {
"tag": {
"type": "string",
"example": "v3.1.4159",
"description": "The tag used by the pipeline. The commit that this tag points to was used for the pipeline. Note that `branch` and `tag` are mutually exclusive."
},
"branch": {
"type": "string",
"example": "feature/design-new-api",
"description": "The branch where the pipeline ran. The HEAD commit on this branch was used for the pipeline. Note that `branch` and `tag` are mutually exclusive. To trigger a pipeline for a PR by number use `pull/<number>/head` for the PR ref or `pull/<number>/merge` for the merge ref (GitHub only)."
},
"commit": {
"type": "object",
"required": [
"subject",
"body"
],
"properties": {
"body": {
"type": "string",
"x-nullable": true,
"description": "The body of the commit message."
},
"subject": {
"type": "string",
"x-nullable": true,
"description": "The subject of the commit message."
}
},
"description": "The latest commit in the pipeline."
},
"revision": {
"type": "string",
"example": "f454a02b5d10fcccfd7d9dd7608a76d6493a98b4",
"description": "The code revision the pipeline ran."
},
"review_id": {
"type": "string",
"example": "123",
"description": "The code review id."
},
"review_url": {
"type": "string",
"example": "https://github.com/CircleCI-Public/api-preview-docs/pull/123",
"description": "The code review URL."
},
"provider_name": {
"type": "string",
"example": "GitHub",
"description": "Name of the VCS provider (e.g. GitHub, Bitbucket)."
},
"origin_repository_url": {
"type": "string",
"example": "https://github.com/CircleCI-Public/api-preview-docs",
"description": "URL for the repository where the trigger originated. For fork-PR pipelines, this is the URL to the fork. For other pipelines the `origin_` and `target_repository_url`s will be the same."
},
"target_repository_url": {
"type": "string",
"example": "https://github.com/CircleCI-Public/api-preview-docs",
"description": "URL for the repository the trigger targets (i.e. the repository where the PR will be merged). For fork-PR pipelines, this is the URL to the parent repo. For other pipelines, the `origin_` and `target_repository_url`s will be the same."
}
},
"description": "VCS information for the pipeline."
},
"state": {
"enum": [
"created",
"errored",
"setup-pending",
"setup",
"pending"
],
"type": "string",
"description": "The current state of the pipeline."
},
"errors": {
"type": "array",
"items": {
"type": "object",
"required": [
"type",
"message"
],
"properties": {
"type": {
"enum": [
"config",
"config-fetch",
"timeout",
"permission",
"other",
"plan"
],
"type": "string",
"description": "The type of error."
},
"message": {
"type": "string",
"description": "A human-readable error message."
}
},
"description": "An error with a type and message."
},
"description": "A sequence of errors that have occurred within the pipeline."
},
"number": {
"type": "integer",
"format": "int64",
"example": 25,
"description": "The number of the pipeline."
},
"trigger": {
"type": "object",
"required": [
"type",
"received_at",
"actor"
],
"properties": {
"type": {
"enum": [
"scheduled_pipeline",
"explicit",
"api",
"webhook"
],
"type": "string",
"description": "The type of trigger."
},
"actor": {
"type": "object",
"required": [
"login",
"avatar_url"
],
"properties": {
"login": {
"type": "string",
"title": "Login",
"description": "The login information for the user on the VCS."
},
"avatar_url": {
"type": "string",
"x-nullable": true,
"description": "URL to the user's avatar on the VCS"
}
},
"description": "The user who triggered the Pipeline."
},
"received_at": {
"type": "string",
"format": "date-time",
"description": "The date and time the trigger was received."
}
},
"description": "A summary of the trigger."
},
"created_at": {
"type": "string",
"format": "date-time",
"description": "The date and time the pipeline was created."
},
"updated_at": {
"type": "string",
"format": "date-time",
"description": "The date and time the pipeline was last updated."
},
"project_slug": {
"type": "string",
"example": "gh/CircleCI-Public/api-preview-docs",
"description": "The project-slug for the pipeline."
},
"trigger_parameters": {
"type": "object",
"additionalProperties": {
"anyOf": [
{
"type": "string"
},
{
"type": "integer",
"format": "int64"
},
{
"type": "boolean"
},
{
"type": "object"
}
]
}
}
},
"description": "A pipeline response."
}
},
"next_page_token": {
"type": "string",
"x-nullable": true,
"description": "A token to pass as a `page-token` query parameter to return the next page of results."
}
},
"description": "List of pipelines"
}
PipelineListRecentPipelinesdefaultResponse
{
"type": "object",
"properties": {
"message": {
"type": "string"
}
}
}
PipelineListUserPipelinesResponse
{
"type": "object",
"title": "PipelineListResponse",
"required": [
"items",
"next_page_token"
],
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"title": "Pipeline",
"required": [
"id",
"number",
"project_slug",
"created_at",
"errors",
"state",
"trigger"
],
"properties": {
"id": {
"type": "string",
"format": "uuid",
"example": "5034460f-c7c4-4c43-9457-de07e2029e7b",
"description": "The unique ID of the pipeline."
},
"vcs": {
"type": "object",
"required": [
"provider_name",
"origin_repository_url",
"target_repository_url",
"revision"
],
"properties": {
"tag": {
"type": "string",
"example": "v3.1.4159",
"description": "The tag used by the pipeline. The commit that this tag points to was used for the pipeline. Note that `branch` and `tag` are mutually exclusive."
},
"branch": {
"type": "string",
"example": "feature/design-new-api",
"description": "The branch where the pipeline ran. The HEAD commit on this branch was used for the pipeline. Note that `branch` and `tag` are mutually exclusive. To trigger a pipeline for a PR by number use `pull/<number>/head` for the PR ref or `pull/<number>/merge` for the merge ref (GitHub only)."
},
"commit": {
"type": "object",
"required": [
"subject",
"body"
],
"properties": {
"body": {
"type": "string",
"x-nullable": true,
"description": "The body of the commit message."
},
"subject": {
"type": "string",
"x-nullable": true,
"description": "The subject of the commit message."
}
},
"description": "The latest commit in the pipeline."
},
"revision": {
"type": "string",
"example": "f454a02b5d10fcccfd7d9dd7608a76d6493a98b4",
"description": "The code revision the pipeline ran."
},
"review_id": {
"type": "string",
"example": "123",
"description": "The code review id."
},
"review_url": {
"type": "string",
"example": "https://github.com/CircleCI-Public/api-preview-docs/pull/123",
"description": "The code review URL."
},
"provider_name": {
"type": "string",
"example": "GitHub",
"description": "Name of the VCS provider (e.g. GitHub, Bitbucket)."
},
"origin_repository_url": {
"type": "string",
"example": "https://github.com/CircleCI-Public/api-preview-docs",
"description": "URL for the repository where the trigger originated. For fork-PR pipelines, this is the URL to the fork. For other pipelines the `origin_` and `target_repository_url`s will be the same."
},
"target_repository_url": {
"type": "string",
"example": "https://github.com/CircleCI-Public/api-preview-docs",
"description": "URL for the repository the trigger targets (i.e. the repository where the PR will be merged). For fork-PR pipelines, this is the URL to the parent repo. For other pipelines, the `origin_` and `target_repository_url`s will be the same."
}
},
"description": "VCS information for the pipeline."
},
"state": {
"enum": [
"created",
"errored",
"setup-pending",
"setup",
"pending"
],
"type": "string",
"description": "The current state of the pipeline."
},
"errors": {
"type": "array",
"items": {
"type": "object",
"required": [
"type",
"message"
],
"properties": {
"type": {
"enum": [
"config",
"config-fetch",
"timeout",
"permission",
"other",
"plan"
],
"type": "string",
"description": "The type of error."
},
"message": {
"type": "string",
"description": "A human-readable error message."
}
},
"description": "An error with a type and message."
},
"description": "A sequence of errors that have occurred within the pipeline."
},
"number": {
"type": "integer",
"format": "int64",
"example": 25,
"description": "The number of the pipeline."
},
"trigger": {
"type": "object",
"required": [
"type",
"received_at",
"actor"
],
"properties": {
"type": {
"enum": [
"scheduled_pipeline",
"explicit",
"api",
"webhook"
],
"type": "string",
"description": "The type of trigger."
},
"actor": {
"type": "object",
"required": [
"login",
"avatar_url"
],
"properties": {
"login": {
"type": "string",
"title": "Login",
"description": "The login information for the user on the VCS."
},
"avatar_url": {
"type": "string",
"x-nullable": true,
"description": "URL to the user's avatar on the VCS"
}
},
"description": "The user who triggered the Pipeline."
},
"received_at": {
"type": "string",
"format": "date-time",
"description": "The date and time the trigger was received."
}
},
"description": "A summary of the trigger."
},
"created_at": {
"type": "string",
"format": "date-time",
"description": "The date and time the pipeline was created."
},
"updated_at": {
"type": "string",
"format": "date-time",
"description": "The date and time the pipeline was last updated."
},
"project_slug": {
"type": "string",
"example": "gh/CircleCI-Public/api-preview-docs",
"description": "The project-slug for the pipeline."
},
"trigger_parameters": {
"type": "object",
"additionalProperties": {
"anyOf": [
{
"type": "string"
},
{
"type": "integer",
"format": "int64"
},
{
"type": "boolean"
},
{
"type": "object"
}
]
}
}
},
"description": "A pipeline response."
}
},
"next_page_token": {
"type": "string",
"x-nullable": true,
"description": "A token to pass as a `page-token` query parameter to return the next page of results."
}
},
"description": "List of pipelines"
}
PipelineListUserPipelinesdefaultResponse
{
"type": "object",
"properties": {
"message": {
"type": "string"
}
}
}
PipelineListWorkflowsResponse
{
"type": "object",
"title": "WorkflowListResponse",
"required": [
"items",
"next_page_token"
],
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"title": "Workflow",
"required": [
"id",
"name",
"status",
"created_at",
"stopped_at",
"pipeline_id",
"pipeline_number",
"project_slug",
"started_by"
],
"properties": {
"id": {
"type": "string",
"format": "uuid",
"description": "The unique ID of the workflow."
},
"tag": {
"enum": [
"setup"
],
"type": "string",
"example": "setup",
"x-nullable": true,
"description": "Tag used for the workflow"
},
"name": {
"type": "string",
"example": "build-and-test",
"description": "The name of the workflow."
},
"status": {
"enum": [
"success",
"running",
"not_run",
"failed",
"error",
"failing",
"on_hold",
"canceled",
"unauthorized"
],
"type": "string",
"description": "The current status of the workflow."
},
"created_at": {
"type": "string",
"format": "date-time",
"description": "The date and time the workflow was created."
},
"errored_by": {
"type": "string",
"format": "uuid"
},
"started_by": {
"type": "string",
"format": "uuid"
},
"stopped_at": {
"type": "string",
"format": "date-time",
"x-nullable": true,
"description": "The date and time the workflow stopped."
},
"canceled_by": {
"type": "string",
"format": "uuid"
},
"pipeline_id": {
"type": "string",
"format": "uuid",
"example": "5034460f-c7c4-4c43-9457-de07e2029e7b",
"description": "The ID of the pipeline this workflow belongs to."
},
"project_slug": {
"type": "string",
"example": "gh/CircleCI-Public/api-preview-docs",
"description": "The project-slug for the pipeline this workflow belongs to."
},
"pipeline_number": {
"type": "integer",
"format": "int64",
"example": 25,
"description": "The number of the pipeline this workflow belongs to."
}
},
"description": "A workflow"
},
"title": "Workflow list",
"description": "A list of workflows."
},
"next_page_token": {
"type": "string",
"x-nullable": true,
"description": "A token to pass as a `page-token` query parameter to return the next page of results."
}
},
"description": "A list of workflows and associated pagination token."
}
PipelineListWorkflowsdefaultResponse
{
"type": "object",
"properties": {
"message": {
"type": "string"
}
}
}
PipelineTriggerNewPipelineRequest
{
"type": "object",
"title": "TriggerPipelineParameters",
"properties": {
"tag": {
"type": "string",
"example": "v3.1.4159",
"description": "The tag used by the pipeline. The commit that this tag points to was used for the pipeline. Note that `branch` and `tag` are mutually exclusive."
},
"branch": {
"type": "string",
"example": "feature/design-new-api",
"description": "The branch where the pipeline ran. The HEAD commit on this branch was used for the pipeline. Note that `branch` and `tag` are mutually exclusive. To trigger a pipeline for a PR by number use `pull/<number>/head` for the PR ref or `pull/<number>/merge` for the merge ref (GitHub only)."
},
"parameters": {
"type": "object",
"example": {
"deploy_prod": true
},
"description": "An object containing pipeline parameters and their values.",
"additionalProperties": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
},
{
"type": "boolean"
}
]
}
}
},
"x-nullable": true,
"description": "The information you can supply when triggering a pipeline."
}
PipelineTriggerNewPipelineResponse
{
"type": "object",
"title": "PipelineCreation",
"required": [
"id",
"state",
"number",
"created_at"
],
"properties": {
"id": {
"type": "string",
"format": "uuid",
"example": "5034460f-c7c4-4c43-9457-de07e2029e7b",
"description": "The unique ID of the pipeline."
},
"state": {
"enum": [
"created",
"errored",
"setup-pending",
"setup",
"pending"
],
"type": "string",
"description": "The current state of the pipeline."
},
"number": {
"type": "integer",
"format": "int64",
"example": 25,
"description": "The number of the pipeline."
},
"created_at": {
"type": "string",
"format": "date-time",
"description": "The date and time the pipeline was created."
}
},
"description": "A pipeline creation response."
}
PipelineTriggerNewPipelinedefaultResponse
{
"type": "object",
"properties": {
"message": {
"type": "string"
}
}
}
Policy
{
"type": "object",
"properties": {
"name": {
"type": "string"
},
"content": {
"type": "string"
},
"created_at": {
"type": "string",
"format": "date-time"
},
"created_by": {
"type": "string"
}
}
}
PolicyBundle
{
"type": "object",
"additionalProperties": {
"items": {
"$ref": "#/components/schemas/Policy"
}
}
}
PolicyManagementCreatePolicyBundleForContextResponse
{
"type": "object",
"required": [
"error"
],
"properties": {
"error": {
"type": "string",
"example": "http: request payload too large"
}
}
}
PolicyManagementEvaluateInputData401Response
{
"type": "object",
"required": [
"error"
],
"properties": {
"error": {
"type": "string",
"example": "Unauthorized."
}
}
}
PolicyManagementEvaluateInputData500Response
{
"type": "object",
"required": [
"error"
],
"properties": {
"error": {
"type": "string",
"example": "There was an error processing your request."
}
}
}
PolicyManagementEvaluateInputDataRequest
{
"type": "object",
"required": [
"input"
],
"properties": {
"input": {
"type": "string"
},
"metadata": {
"type": "object"
}
}
}
PolicyManagementEvaluateInputDataResponse
{
"type": "object",
"required": [
"error"
],
"properties": {
"error": {
"type": "string",
"example": "context: must be a valid value."
}
}
}
PolicyManagementGetDecisionAuditLogByGivenIdResponse
{
"type": "object",
"required": [
"error"
],
"properties": {
"error": {
"type": "string",
"example": "decision log not found"
}
}
}
PolicyManagementGetDecisionAuditLogs401Response
{
"type": "object",
"required": [
"error"
],
"properties": {
"error": {
"type": "string",
"example": "Unauthorized"
}
}
}
PolicyManagementGetDecisionAuditLogs500Response
{
"type": "object",
"required": [
"error"
],
"properties": {
"error": {
"type": "string",
"example": "unexpected server error"
}
}
}
PolicyManagementGetDecisionAuditLogsResponse
{
"type": "array",
"items": {
"$ref": "#/components/schemas/DecisionLog"
}
}
PolicyManagementGetDocumentResponse
{
"type": "object",
"required": [
"error"
],
"properties": {
"error": {
"type": "string",
"example": "policy not found"
}
}
}
PolicyManagementGetPolicyBundleForDecisionResponse
{
"type": "object",
"required": [
"error"
],
"properties": {
"error": {
"type": "string",
"example": "decision log not found"
}
}
}
ProjectCreateCheckoutKeyRequest
{
"type": "object",
"title": "CheckoutKeyInput",
"required": [
"type"
],
"properties": {
"type": {
"enum": [
"user-key",
"deploy-key"
],
"type": "string",
"title": "CheckoutKeyInputType",
"example": "deploy-key",
"description": "The type of checkout key to create. This may be either `deploy-key` or `user-key`."
}
}
}
ProjectCreateCheckoutKeyResponse
{
"type": "object",
"title": "CheckoutKey",
"required": [
"public-key",
"type",
"fingerprint",
"preferred",
"created-at"
],
"properties": {
"type": {
"enum": [
"deploy-key",
"github-user-key"
],
"type": "string",
"title": "CheckoutKeyType",
"example": "deploy-key",
"description": "The type of checkout key. This may be either `deploy-key` or `github-user-key`."
},
"preferred": {
"type": "boolean",
"example": true,
"description": "A boolean value that indicates if this key is preferred."
},
"created-at": {
"type": "string",
"format": "date-time",
"example": "2015-09-21T17:29:21.042Z",
"description": "The date and time the checkout key was created."
},
"public-key": {
"type": "string",
"example": "ssh-rsa ...",
"description": "A public SSH key."
},
"fingerprint": {
"type": "string",
"example": "c9:0b:1c:4f:d5:65:56:b9:ad:88:f9:81:2b:37:74:2f",
"description": "An SSH key fingerprint."
}
},
"description": "A checkout key"
}
ProjectCreateCheckoutKeydefaultResponse
{
"type": "object",
"properties": {
"message": {
"type": "string"
}
}
}
ProjectCreateEnvVarRequest
{
"type": "object",
"title": "EnvironmentVariable",
"required": [
"name",
"value"
],
"properties": {
"name": {
"type": "string",
"example": "foo",
"description": "The name of the environment variable."
},
"value": {
"type": "string",
"example": "xxxx1234",
"description": "The value of the environment variable."
}
},
"description": "An environment variable request requires a name and a value"
}
ProjectCreateEnvVarResponse
{
"type": "object",
"title": "EnvironmentVariable",
"required": [
"name",
"value"
],
"properties": {
"name": {
"type": "string",
"example": "foo",
"description": "The name of the environment variable."
},
"value": {
"type": "string",
"example": "xxxx1234",
"description": "The value of the environment variable."
},
"created-at": {
"example": "#joda/inst 2023-04-14T21:20:14+0000",
"x-nullable": true,
"description": "The creation timestamp of the environment variable."
}
},
"description": "An environment variable is a map containing a value and an optional timestamp."
}
ProjectCreateEnvVardefaultResponse
{
"type": "object",
"properties": {
"message": {
"type": "string"
}
}
}
ProjectCreateProjectDefaultSettings403Response
{
"properties": {
"message": {
"type": "string",
"default": "Permission denied."
}
},
"additionalProperties": false
}
ProjectCreateProjectDefaultSettings404Response
{
"properties": {
"message": {
"type": "string"
}
},
"additionalProperties": false
}
ProjectCreateProjectDefaultSettings405Response
{
"properties": {
"message": {
"type": "string",
"default": "Create projects using the API is currently supported for classic Github OAuth and Bitbucket projects only."
}
},
"additionalProperties": false
}
ProjectCreateProjectDefaultSettingsResponse
{
"properties": {
"message": {
"type": "string",
"default": "Unexpected request body provided."
}
},
"additionalProperties": false
}
ProjectDeleteCheckoutKeyByFingerprintResponse
{
"type": "object",
"title": "MessageResponse",
"required": [
"message"
],
"properties": {
"message": {
"type": "string",
"description": "A human-readable message"
}
},
"description": "message response"
}
ProjectDeleteCheckoutKeyByFingerprintdefaultResponse
{
"type": "object",
"properties": {
"message": {
"type": "string"
}
}
}
ProjectDeleteEnvironmentVariableResponse
{
"type": "object",
"title": "MessageResponse",
"required": [
"message"
],
"properties": {
"message": {
"type": "string",
"description": "A human-readable message"
}
},
"description": "message response"
}
ProjectDeleteEnvironmentVariabledefaultResponse
{
"type": "object",
"properties": {
"message": {
"type": "string"
}
}
}
ProjectGetBySlugResponse
{
"type": "object",
"title": "Project",
"required": [
"slug",
"name",
"id",
"organization_name",
"organization_slug",
"organization_id",
"vcs_info"
],
"properties": {
"id": {
"type": "string",
"format": "uuid"
},
"name": {
"type": "string",
"example": "api-preview-docs",
"description": "The name of the project"
},
"slug": {
"type": "string",
"example": "gh/CircleCI-Public/api-preview-docs",
"description": "Project slug in the form `vcs-slug/org-name/repo-name`. The `/` characters may be URL-escaped. For projects that use GitLab or GitHub App, use `circleci` as the `vcs-slug`, replace `org-name` with the organization ID (found in Organization Settings), and replace `repo-name` with the project ID (found in Project Settings)."
},
"vcs_info": {
"type": "object",
"required": [
"vcs_url",
"provider",
"default_branch"
],
"properties": {
"vcs_url": {
"type": "string",
"example": "https://github.com/CircleCI-Public/api-preview-docs",
"description": "URL to the repository hosting the project's code"
},
"provider": {
"enum": [
"Bitbucket",
"CircleCI",
"GitHub"
],
"type": "string",
"description": "The VCS provider"
},
"default_branch": {
"type": "string",
"example": "master"
}
},
"description": "Information about the VCS that hosts the project source code."
},
"organization_id": {
"type": "string",
"format": "uuid",
"example": "CircleCI-Public",
"description": "The id of the organization the project belongs to"
},
"organization_name": {
"type": "string",
"example": "CircleCI-Public",
"description": "The name of the organization the project belongs to"
},
"organization_slug": {
"type": "string",
"example": "CircleCI-Public",
"description": "The slug of the organization the project belongs to"
}
},
"description": "NOTE: The definition of Project is subject to change."
}
ProjectGetBySlugdefaultResponse
{
"type": "object",
"properties": {
"message": {
"type": "string"
}
}
}
ProjectGetCheckoutKeyByFingerprintResponse
{
"type": "object",
"title": "CheckoutKey",
"required": [
"public-key",
"type",
"fingerprint",
"preferred",
"created-at"
],
"properties": {
"type": {
"enum": [
"deploy-key",
"github-user-key"
],
"type": "string",
"title": "CheckoutKeyType",
"example": "deploy-key",
"description": "The type of checkout key. This may be either `deploy-key` or `github-user-key`."
},
"preferred": {
"type": "boolean",
"example": true,
"description": "A boolean value that indicates if this key is preferred."
},
"created-at": {
"type": "string",
"format": "date-time",
"example": "2015-09-21T17:29:21.042Z",
"description": "The date and time the checkout key was created."
},
"public-key": {
"type": "string",
"example": "ssh-rsa ...",
"description": "A public SSH key."
},
"fingerprint": {
"type": "string",
"example": "c9:0b:1c:4f:d5:65:56:b9:ad:88:f9:81:2b:37:74:2f",
"description": "An SSH key fingerprint."
}
},
"description": "A checkout key"
}
ProjectGetCheckoutKeyByFingerprintdefaultResponse
{
"type": "object",
"properties": {
"message": {
"type": "string"
}
}
}
ProjectGetMaskedEnvVarResponse
{
"type": "object",
"title": "EnvironmentVariable",
"required": [
"name",
"value"
],
"properties": {
"name": {
"type": "string",
"example": "foo",
"description": "The name of the environment variable."
},
"value": {
"type": "string",
"example": "xxxx1234",
"description": "The value of the environment variable."
},
"created-at": {
"example": "#joda/inst 2023-04-14T21:20:14+0000",
"x-nullable": true,
"description": "The creation timestamp of the environment variable."
}
},
"description": "An environment variable is a map containing a value and an optional timestamp."
}
ProjectGetMaskedEnvVardefaultResponse
{
"type": "object",
"properties": {
"message": {
"type": "string"
}
}
}
ProjectGetSettingsResponse
{
"properties": {
"message": {
"type": "string",
"default": "Project not found."
}
},
"additionalProperties": false
}
ProjectListCheckoutKeysResponse
{
"type": "object",
"title": "CheckoutKeyListResponse",
"required": [
"items",
"next_page_token"
],
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"title": "CheckoutKey",
"required": [
"public-key",
"type",
"fingerprint",
"preferred",
"created-at"
],
"properties": {
"type": {
"enum": [
"deploy-key",
"github-user-key"
],
"type": "string",
"title": "CheckoutKeyType",
"example": "deploy-key",
"description": "The type of checkout key. This may be either `deploy-key` or `github-user-key`."
},
"preferred": {
"type": "boolean",
"example": true,
"description": "A boolean value that indicates if this key is preferred."
},
"created-at": {
"type": "string",
"format": "date-time",
"example": "2015-09-21T17:29:21.042Z",
"description": "The date and time the checkout key was created."
},
"public-key": {
"type": "string",
"example": "ssh-rsa ...",
"description": "A public SSH key."
},
"fingerprint": {
"type": "string",
"example": "c9:0b:1c:4f:d5:65:56:b9:ad:88:f9:81:2b:37:74:2f",
"description": "An SSH key fingerprint."
}
},
"description": "A checkout key"
}
},
"next_page_token": {
"type": "string",
"x-nullable": true,
"description": "A token to pass as a `page-token` query parameter to return the next page of results."
}
}
}
ProjectListCheckoutKeysdefaultResponse
{
"type": "object",
"properties": {
"message": {
"type": "string"
}
}
}
ProjectListEnvVarValuesResponse
{
"type": "object",
"title": "EnvironmentVariableListResponse",
"required": [
"items",
"next_page_token"
],
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"title": "EnvironmentVariable",
"required": [
"name",
"value"
],
"properties": {
"name": {
"type": "string",
"example": "foo",
"description": "The name of the environment variable."
},
"value": {
"type": "string",
"example": "xxxx1234",
"description": "The value of the environment variable."
},
"created-at": {
"example": "#joda/inst 2023-04-14T21:20:14+0000",
"x-nullable": true,
"description": "The creation timestamp of the environment variable."
}
},
"description": "An environment variable is a map containing a value and an optional timestamp."
}
},
"next_page_token": {
"type": "string",
"x-nullable": true,
"description": "A token to pass as a `page-token` query parameter to return the next page of results."
}
}
}
ProjectListEnvVarValuesdefaultResponse
{
"type": "object",
"properties": {
"message": {
"type": "string"
}
}
}
ProjectUpdateSettingsResponse
{
"properties": {
"message": {
"type": "string"
}
},
"additionalProperties": false
}
ScheduleCreateNewScheduleRequest
{
"type": "object",
"title": "CreateScheduleParameters",
"required": [
"name",
"timetable",
"attribution-actor",
"parameters"
],
"properties": {
"name": {
"type": "string",
"description": "Name of the schedule."
},
"timetable": {
"anyOf": [
{
"type": "object",
"required": [
"per-hour",
"hours-of-day",
"days-of-week"
],
"properties": {
"months": {
"type": "array",
"items": {
"enum": [
"MAR",
"NOV",
"DEC",
"JUN",
"MAY",
"OCT",
"FEB",
"APR",
"SEP",
"AUG",
"JAN",
"JUL"
],
"type": "string",
"description": "Month, in three letters format."
},
"description": "Months in which the schedule triggers."
},
"per-hour": {
"type": "integer",
"format": "integer",
"description": "Number of times a schedule triggers per hour, value must be between 1 and 60"
},
"days-of-week": {
"type": "array",
"items": {
"enum": [
"TUE",
"SAT",
"SUN",
"MON",
"THU",
"WED",
"FRI"
],
"type": "string",
"description": "Day in a week, in three letters format"
},
"description": "Days in a week in which the schedule triggers."
},
"hours-of-day": {
"type": "array",
"items": {
"type": "integer",
"format": "integer",
"description": "Hour in a day in UTC, value must be between 0 and 24"
},
"description": "Hours in a day in which the schedule triggers."
},
"days-of-month": {
"type": "array",
"items": {
"type": "integer",
"format": "integer",
"description": "Day in a month, between 1 and 31."
},
"description": "Days in a month in which the schedule triggers. This is mutually exclusive with days in a week."
}
}
},
{
"type": "object",
"required": [
"per-hour",
"hours-of-day",
"days-of-month"
],
"properties": {
"months": {
"type": "array",
"items": {
"enum": [
"MAR",
"NOV",
"DEC",
"JUN",
"MAY",
"OCT",
"FEB",
"APR",
"SEP",
"AUG",
"JAN",
"JUL"
],
"type": "string",
"description": "Month, in three letters format."
},
"description": "Months in which the schedule triggers."
},
"per-hour": {
"type": "integer",
"format": "integer",
"description": "Number of times a schedule triggers per hour, value must be between 1 and 60"
},
"days-of-week": {
"type": "array",
"items": {
"enum": [
"TUE",
"SAT",
"SUN",
"MON",
"THU",
"WED",
"FRI"
],
"type": "string",
"description": "Day in a week, in three letters format"
},
"description": "Days in a week in which the schedule triggers."
},
"hours-of-day": {
"type": "array",
"items": {
"type": "integer",
"format": "integer",
"description": "Hour in a day in UTC, value must be between 0 and 24"
},
"description": "Hours in a day in which the schedule triggers."
},
"days-of-month": {
"type": "array",
"items": {
"type": "integer",
"format": "integer",
"description": "Day in a month, between 1 and 31."
},
"description": "Days in a month in which the schedule triggers. This is mutually exclusive with days in a week."
}
}
}
],
"description": "Timetable that specifies when a schedule triggers."
},
"parameters": {
"type": "object",
"example": {
"branch": "feature/design-new-api",
"deploy_prod": true
},
"description": "Pipeline parameters represented as key-value pairs. Must contain branch or tag.",
"additionalProperties": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
},
{
"type": "boolean"
}
]
}
},
"description": {
"type": "string",
"x-nullable": true,
"description": "Description of the schedule."
},
"attribution-actor": {
"enum": [
"current",
"system"
],
"type": "string",
"example": "current",
"description": "The attribution-actor of the scheduled pipeline."
}
},
"description": "The parameters for a create schedule request"
}
ScheduleCreateNewScheduleResponse
{
"type": "object",
"title": "Schedule",
"required": [
"id",
"name",
"timetable",
"description",
"project-slug",
"actor",
"created-at",
"updated-at",
"parameters"
],
"properties": {
"id": {
"type": "string",
"format": "uuid",
"description": "The unique ID of the schedule."
},
"name": {
"type": "string",
"description": "Name of the schedule."
},
"actor": {
"type": "object",
"title": "User",
"required": [
"id",
"login",
"name"
],
"properties": {
"id": {
"type": "string",
"format": "uuid",
"description": "The unique ID of the user."
},
"name": {
"type": "string",
"description": "The name of the user."
},
"login": {
"type": "string",
"title": "Login",
"description": "The login information for the user on the VCS."
}
},
"description": "The attribution actor who will run the scheduled pipeline."
},
"timetable": {
"anyOf": [
{
"type": "object",
"required": [
"per-hour",
"hours-of-day",
"days-of-week"
],
"properties": {
"months": {
"type": "array",
"items": {
"enum": [
"MAR",
"NOV",
"DEC",
"JUN",
"MAY",
"OCT",
"FEB",
"APR",
"SEP",
"AUG",
"JAN",
"JUL"
],
"type": "string",
"description": "Month, in three letters format."
},
"description": "Months in which the schedule triggers."
},
"per-hour": {
"type": "integer",
"format": "integer",
"description": "Number of times a schedule triggers per hour, value must be between 1 and 60"
},
"days-of-week": {
"type": "array",
"items": {
"enum": [
"TUE",
"SAT",
"SUN",
"MON",
"THU",
"WED",
"FRI"
],
"type": "string",
"description": "Day in a week, in three letters format"
},
"description": "Days in a week in which the schedule triggers."
},
"hours-of-day": {
"type": "array",
"items": {
"type": "integer",
"format": "integer",
"description": "Hour in a day in UTC, value must be between 0 and 24"
},
"description": "Hours in a day in which the schedule triggers."
},
"days-of-month": {
"type": "array",
"items": {
"type": "integer",
"format": "integer",
"description": "Day in a month, between 1 and 31."
},
"description": "Days in a month in which the schedule triggers. This is mutually exclusive with days in a week."
}
}
},
{
"type": "object",
"required": [
"per-hour",
"hours-of-day",
"days-of-month"
],
"properties": {
"months": {
"type": "array",
"items": {
"enum": [
"MAR",
"NOV",
"DEC",
"JUN",
"MAY",
"OCT",
"FEB",
"APR",
"SEP",
"AUG",
"JAN",
"JUL"
],
"type": "string",
"description": "Month, in three letters format."
},
"description": "Months in which the schedule triggers."
},
"per-hour": {
"type": "integer",
"format": "integer",
"description": "Number of times a schedule triggers per hour, value must be between 1 and 60"
},
"days-of-week": {
"type": "array",
"items": {
"enum": [
"TUE",
"SAT",
"SUN",
"MON",
"THU",
"WED",
"FRI"
],
"type": "string",
"description": "Day in a week, in three letters format"
},
"description": "Days in a week in which the schedule triggers."
},
"hours-of-day": {
"type": "array",
"items": {
"type": "integer",
"format": "integer",
"description": "Hour in a day in UTC, value must be between 0 and 24"
},
"description": "Hours in a day in which the schedule triggers."
},
"days-of-month": {
"type": "array",
"items": {
"type": "integer",
"format": "integer",
"description": "Day in a month, between 1 and 31."
},
"description": "Days in a month in which the schedule triggers. This is mutually exclusive with days in a week."
}
}
}
],
"description": "Timetable that specifies when a schedule triggers."
},
"created-at": {
"type": "string",
"format": "date-time",
"description": "The date and time the pipeline was created."
},
"parameters": {
"type": "object",
"example": {
"branch": "feature/design-new-api",
"deploy_prod": true
},
"description": "Pipeline parameters represented as key-value pairs. Must contain branch or tag.",
"additionalProperties": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
},
{
"type": "boolean"
}
]
}
},
"updated-at": {
"type": "string",
"format": "date-time",
"description": "The date and time the pipeline was last updated."
},
"description": {
"type": "string",
"x-nullable": true,
"description": "Description of the schedule."
},
"project-slug": {
"type": "string",
"example": "gh/CircleCI-Public/api-preview-docs",
"description": "The project-slug for the schedule"
}
},
"description": "A schedule response"
}
ScheduleCreateNewScheduledefaultResponse
{
"type": "object",
"properties": {
"message": {
"type": "string"
}
}
}
ScheduleGetAllSchedulesResponse
{
"type": "object",
"required": [
"items",
"next_page_token"
],
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"title": "Schedule",
"required": [
"id",
"name",
"timetable",
"description",
"project-slug",
"actor",
"created-at",
"updated-at",
"parameters"
],
"properties": {
"id": {
"type": "string",
"format": "uuid",
"description": "The unique ID of the schedule."
},
"name": {
"type": "string",
"description": "Name of the schedule."
},
"actor": {
"type": "object",
"title": "User",
"required": [
"id",
"login",
"name"
],
"properties": {
"id": {
"type": "string",
"format": "uuid",
"description": "The unique ID of the user."
},
"name": {
"type": "string",
"description": "The name of the user."
},
"login": {
"type": "string",
"title": "Login",
"description": "The login information for the user on the VCS."
}
},
"description": "The attribution actor who will run the scheduled pipeline."
},
"timetable": {
"anyOf": [
{
"type": "object",
"required": [
"per-hour",
"hours-of-day",
"days-of-week"
],
"properties": {
"months": {
"type": "array",
"items": {
"enum": [
"MAR",
"NOV",
"DEC",
"JUN",
"MAY",
"OCT",
"FEB",
"APR",
"SEP",
"AUG",
"JAN",
"JUL"
],
"type": "string",
"description": "Month, in three letters format."
},
"description": "Months in which the schedule triggers."
},
"per-hour": {
"type": "integer",
"format": "integer",
"description": "Number of times a schedule triggers per hour, value must be between 1 and 60"
},
"days-of-week": {
"type": "array",
"items": {
"enum": [
"TUE",
"SAT",
"SUN",
"MON",
"THU",
"WED",
"FRI"
],
"type": "string",
"description": "Day in a week, in three letters format"
},
"description": "Days in a week in which the schedule triggers."
},
"hours-of-day": {
"type": "array",
"items": {
"type": "integer",
"format": "integer",
"description": "Hour in a day in UTC, value must be between 0 and 24"
},
"description": "Hours in a day in which the schedule triggers."
},
"days-of-month": {
"type": "array",
"items": {
"type": "integer",
"format": "integer",
"description": "Day in a month, between 1 and 31."
},
"description": "Days in a month in which the schedule triggers. This is mutually exclusive with days in a week."
}
}
},
{
"type": "object",
"required": [
"per-hour",
"hours-of-day",
"days-of-month"
],
"properties": {
"months": {
"type": "array",
"items": {
"enum": [
"MAR",
"NOV",
"DEC",
"JUN",
"MAY",
"OCT",
"FEB",
"APR",
"SEP",
"AUG",
"JAN",
"JUL"
],
"type": "string",
"description": "Month, in three letters format."
},
"description": "Months in which the schedule triggers."
},
"per-hour": {
"type": "integer",
"format": "integer",
"description": "Number of times a schedule triggers per hour, value must be between 1 and 60"
},
"days-of-week": {
"type": "array",
"items": {
"enum": [
"TUE",
"SAT",
"SUN",
"MON",
"THU",
"WED",
"FRI"
],
"type": "string",
"description": "Day in a week, in three letters format"
},
"description": "Days in a week in which the schedule triggers."
},
"hours-of-day": {
"type": "array",
"items": {
"type": "integer",
"format": "integer",
"description": "Hour in a day in UTC, value must be between 0 and 24"
},
"description": "Hours in a day in which the schedule triggers."
},
"days-of-month": {
"type": "array",
"items": {
"type": "integer",
"format": "integer",
"description": "Day in a month, between 1 and 31."
},
"description": "Days in a month in which the schedule triggers. This is mutually exclusive with days in a week."
}
}
}
],
"description": "Timetable that specifies when a schedule triggers."
},
"created-at": {
"type": "string",
"format": "date-time",
"description": "The date and time the pipeline was created."
},
"parameters": {
"type": "object",
"example": {
"branch": "feature/design-new-api",
"deploy_prod": true
},
"description": "Pipeline parameters represented as key-value pairs. Must contain branch or tag.",
"additionalProperties": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
},
{
"type": "boolean"
}
]
}
},
"updated-at": {
"type": "string",
"format": "date-time",
"description": "The date and time the pipeline was last updated."
},
"description": {
"type": "string",
"x-nullable": true,
"description": "Description of the schedule."
},
"project-slug": {
"type": "string",
"example": "gh/CircleCI-Public/api-preview-docs",
"description": "The project-slug for the schedule"
}
},
"description": "A schedule response"
}
},
"next_page_token": {
"type": "string",
"x-nullable": true,
"description": "A token to pass as a `page-token` query parameter to return the next page of results."
}
},
"description": "A sequence of schedules"
}
ScheduleGetAllSchedulesdefaultResponse
{
"type": "object",
"properties": {
"message": {
"type": "string"
}
}
}
ScheduleGetByIdResponse
{
"type": "object",
"title": "Schedule",
"required": [
"id",
"name",
"timetable",
"description",
"project-slug",
"actor",
"created-at",
"updated-at",
"parameters"
],
"properties": {
"id": {
"type": "string",
"format": "uuid",
"description": "The unique ID of the schedule."
},
"name": {
"type": "string",
"description": "Name of the schedule."
},
"actor": {
"type": "object",
"title": "User",
"required": [
"id",
"login",
"name"
],
"properties": {
"id": {
"type": "string",
"format": "uuid",
"description": "The unique ID of the user."
},
"name": {
"type": "string",
"description": "The name of the user."
},
"login": {
"type": "string",
"title": "Login",
"description": "The login information for the user on the VCS."
}
},
"description": "The attribution actor who will run the scheduled pipeline."
},
"timetable": {
"anyOf": [
{
"type": "object",
"required": [
"per-hour",
"hours-of-day",
"days-of-week"
],
"properties": {
"months": {
"type": "array",
"items": {
"enum": [
"MAR",
"NOV",
"DEC",
"JUN",
"MAY",
"OCT",
"FEB",
"APR",
"SEP",
"AUG",
"JAN",
"JUL"
],
"type": "string",
"description": "Month, in three letters format."
},
"description": "Months in which the schedule triggers."
},
"per-hour": {
"type": "integer",
"format": "integer",
"description": "Number of times a schedule triggers per hour, value must be between 1 and 60"
},
"days-of-week": {
"type": "array",
"items": {
"enum": [
"TUE",
"SAT",
"SUN",
"MON",
"THU",
"WED",
"FRI"
],
"type": "string",
"description": "Day in a week, in three letters format"
},
"description": "Days in a week in which the schedule triggers."
},
"hours-of-day": {
"type": "array",
"items": {
"type": "integer",
"format": "integer",
"description": "Hour in a day in UTC, value must be between 0 and 24"
},
"description": "Hours in a day in which the schedule triggers."
},
"days-of-month": {
"type": "array",
"items": {
"type": "integer",
"format": "integer",
"description": "Day in a month, between 1 and 31."
},
"description": "Days in a month in which the schedule triggers. This is mutually exclusive with days in a week."
}
}
},
{
"type": "object",
"required": [
"per-hour",
"hours-of-day",
"days-of-month"
],
"properties": {
"months": {
"type": "array",
"items": {
"enum": [
"MAR",
"NOV",
"DEC",
"JUN",
"MAY",
"OCT",
"FEB",
"APR",
"SEP",
"AUG",
"JAN",
"JUL"
],
"type": "string",
"description": "Month, in three letters format."
},
"description": "Months in which the schedule triggers."
},
"per-hour": {
"type": "integer",
"format": "integer",
"description": "Number of times a schedule triggers per hour, value must be between 1 and 60"
},
"days-of-week": {
"type": "array",
"items": {
"enum": [
"TUE",
"SAT",
"SUN",
"MON",
"THU",
"WED",
"FRI"
],
"type": "string",
"description": "Day in a week, in three letters format"
},
"description": "Days in a week in which the schedule triggers."
},
"hours-of-day": {
"type": "array",
"items": {
"type": "integer",
"format": "integer",
"description": "Hour in a day in UTC, value must be between 0 and 24"
},
"description": "Hours in a day in which the schedule triggers."
},
"days-of-month": {
"type": "array",
"items": {
"type": "integer",
"format": "integer",
"description": "Day in a month, between 1 and 31."
},
"description": "Days in a month in which the schedule triggers. This is mutually exclusive with days in a week."
}
}
}
],
"description": "Timetable that specifies when a schedule triggers."
},
"created-at": {
"type": "string",
"format": "date-time",
"description": "The date and time the pipeline was created."
},
"parameters": {
"type": "object",
"example": {
"branch": "feature/design-new-api",
"deploy_prod": true
},
"description": "Pipeline parameters represented as key-value pairs. Must contain branch or tag.",
"additionalProperties": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
},
{
"type": "boolean"
}
]
}
},
"updated-at": {
"type": "string",
"format": "date-time",
"description": "The date and time the pipeline was last updated."
},
"description": {
"type": "string",
"x-nullable": true,
"description": "Description of the schedule."
},
"project-slug": {
"type": "string",
"example": "gh/CircleCI-Public/api-preview-docs",
"description": "The project-slug for the schedule"
}
},
"description": "A schedule response"
}
ScheduleGetByIddefaultResponse
{
"type": "object",
"properties": {
"message": {
"type": "string"
}
}
}
ScheduleRemoveByIdResponse
{
"type": "object",
"title": "MessageResponse",
"required": [
"message"
],
"properties": {
"message": {
"type": "string",
"description": "A human-readable message"
}
},
"description": "message response"
}
ScheduleRemoveByIddefaultResponse
{
"type": "object",
"properties": {
"message": {
"type": "string"
}
}
}
ScheduleUpdateScheduleRequest
{
"type": "object",
"title": "UpdateScheduleParameters",
"properties": {
"name": {
"type": "string",
"description": "Name of the schedule."
},
"timetable": {
"type": "object",
"properties": {
"months": {
"type": "array",
"items": {
"enum": [
"MAR",
"NOV",
"DEC",
"JUN",
"MAY",
"OCT",
"FEB",
"APR",
"SEP",
"AUG",
"JAN",
"JUL"
],
"type": "string",
"description": "Month, in three letters format."
},
"description": "Months in which the schedule triggers."
},
"per-hour": {
"type": "integer",
"format": "integer",
"description": "Number of times a schedule triggers per hour, value must be between 1 and 60"
},
"days-of-week": {
"type": "array",
"items": {
"enum": [
"TUE",
"SAT",
"SUN",
"MON",
"THU",
"WED",
"FRI"
],
"type": "string",
"description": "Day in a week, in three letters format"
},
"description": "Days in a week in which the schedule triggers."
},
"hours-of-day": {
"type": "array",
"items": {
"type": "integer",
"format": "integer",
"description": "Hour in a day in UTC, value must be between 0 and 24"
},
"description": "Hours in a day in which the schedule triggers."
},
"days-of-month": {
"type": "array",
"items": {
"type": "integer",
"format": "integer",
"description": "Day in a month, between 1 and 31."
},
"description": "Days in a month in which the schedule triggers. This is mutually exclusive with days in a week."
}
},
"description": "Timetable that specifies when a schedule triggers."
},
"parameters": {
"type": "object",
"example": {
"branch": "feature/design-new-api",
"deploy_prod": true
},
"description": "Pipeline parameters represented as key-value pairs. Must contain branch or tag.",
"additionalProperties": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
},
{
"type": "boolean"
}
]
}
},
"description": {
"type": "string",
"x-nullable": true,
"description": "Description of the schedule."
},
"attribution-actor": {
"enum": [
"current",
"system"
],
"type": "string",
"example": "current",
"description": "The attribution-actor of the scheduled pipeline."
}
},
"description": "The parameters for an update schedule request"
}
ScheduleUpdateScheduleResponse
{
"type": "object",
"title": "Schedule",
"required": [
"id",
"name",
"timetable",
"description",
"project-slug",
"actor",
"created-at",
"updated-at",
"parameters"
],
"properties": {
"id": {
"type": "string",
"format": "uuid",
"description": "The unique ID of the schedule."
},
"name": {
"type": "string",
"description": "Name of the schedule."
},
"actor": {
"type": "object",
"title": "User",
"required": [
"id",
"login",
"name"
],
"properties": {
"id": {
"type": "string",
"format": "uuid",
"description": "The unique ID of the user."
},
"name": {
"type": "string",
"description": "The name of the user."
},
"login": {
"type": "string",
"title": "Login",
"description": "The login information for the user on the VCS."
}
},
"description": "The attribution actor who will run the scheduled pipeline."
},
"timetable": {
"anyOf": [
{
"type": "object",
"required": [
"per-hour",
"hours-of-day",
"days-of-week"
],
"properties": {
"months": {
"type": "array",
"items": {
"enum": [
"MAR",
"NOV",
"DEC",
"JUN",
"MAY",
"OCT",
"FEB",
"APR",
"SEP",
"AUG",
"JAN",
"JUL"
],
"type": "string",
"description": "Month, in three letters format."
},
"description": "Months in which the schedule triggers."
},
"per-hour": {
"type": "integer",
"format": "integer",
"description": "Number of times a schedule triggers per hour, value must be between 1 and 60"
},
"days-of-week": {
"type": "array",
"items": {
"enum": [
"TUE",
"SAT",
"SUN",
"MON",
"THU",
"WED",
"FRI"
],
"type": "string",
"description": "Day in a week, in three letters format"
},
"description": "Days in a week in which the schedule triggers."
},
"hours-of-day": {
"type": "array",
"items": {
"type": "integer",
"format": "integer",
"description": "Hour in a day in UTC, value must be between 0 and 24"
},
"description": "Hours in a day in which the schedule triggers."
},
"days-of-month": {
"type": "array",
"items": {
"type": "integer",
"format": "integer",
"description": "Day in a month, between 1 and 31."
},
"description": "Days in a month in which the schedule triggers. This is mutually exclusive with days in a week."
}
}
},
{
"type": "object",
"required": [
"per-hour",
"hours-of-day",
"days-of-month"
],
"properties": {
"months": {
"type": "array",
"items": {
"enum": [
"MAR",
"NOV",
"DEC",
"JUN",
"MAY",
"OCT",
"FEB",
"APR",
"SEP",
"AUG",
"JAN",
"JUL"
],
"type": "string",
"description": "Month, in three letters format."
},
"description": "Months in which the schedule triggers."
},
"per-hour": {
"type": "integer",
"format": "integer",
"description": "Number of times a schedule triggers per hour, value must be between 1 and 60"
},
"days-of-week": {
"type": "array",
"items": {
"enum": [
"TUE",
"SAT",
"SUN",
"MON",
"THU",
"WED",
"FRI"
],
"type": "string",
"description": "Day in a week, in three letters format"
},
"description": "Days in a week in which the schedule triggers."
},
"hours-of-day": {
"type": "array",
"items": {
"type": "integer",
"format": "integer",
"description": "Hour in a day in UTC, value must be between 0 and 24"
},
"description": "Hours in a day in which the schedule triggers."
},
"days-of-month": {
"type": "array",
"items": {
"type": "integer",
"format": "integer",
"description": "Day in a month, between 1 and 31."
},
"description": "Days in a month in which the schedule triggers. This is mutually exclusive with days in a week."
}
}
}
],
"description": "Timetable that specifies when a schedule triggers."
},
"created-at": {
"type": "string",
"format": "date-time",
"description": "The date and time the pipeline was created."
},
"parameters": {
"type": "object",
"example": {
"branch": "feature/design-new-api",
"deploy_prod": true
},
"description": "Pipeline parameters represented as key-value pairs. Must contain branch or tag.",
"additionalProperties": {
"anyOf": [
{
"type": "integer"
},
{
"type": "string"
},
{
"type": "boolean"
}
]
}
},
"updated-at": {
"type": "string",
"format": "date-time",
"description": "The date and time the pipeline was last updated."
},
"description": {
"type": "string",
"x-nullable": true,
"description": "Description of the schedule."
},
"project-slug": {
"type": "string",
"example": "gh/CircleCI-Public/api-preview-docs",
"description": "The project-slug for the schedule"
}
},
"description": "A schedule response"
}
ScheduleUpdateScheduledefaultResponse
{
"type": "object",
"properties": {
"message": {
"type": "string"
}
}
}
UserGetInformationResponse
{
"type": "object",
"title": "User",
"required": [
"id",
"login",
"name"
],
"properties": {
"id": {
"type": "string",
"format": "uuid",
"description": "The unique ID of the user."
},
"name": {
"type": "string",
"description": "The name of the user."
},
"login": {
"type": "string",
"title": "Login",
"description": "The login information for the user on the VCS."
}
}
}
UserGetInformationdefaultResponse
{
"type": "object",
"properties": {
"message": {
"type": "string"
}
}
}
UserGetUserInformationResponse
{
"type": "object",
"title": "User",
"required": [
"id",
"login",
"name"
],
"properties": {
"id": {
"type": "string",
"format": "uuid",
"description": "The unique ID of the user."
},
"name": {
"type": "string",
"description": "The name of the user."
},
"login": {
"type": "string",
"title": "Login",
"description": "The login information for the user on the VCS."
}
}
}
UserGetUserInformationdefaultResponse
{
"type": "object",
"properties": {
"message": {
"type": "string"
}
}
}
UserListCollaborationsResponse
{
"type": "array",
"items": {
"type": "object",
"title": "Collaboration",
"required": [
"id",
"vcs-type",
"name",
"avatar_url",
"slug"
],
"properties": {
"id": {
"type": "string",
"format": "uuid",
"x-nullable": true,
"description": "The UUID of the organization"
},
"name": {
"type": "string",
"description": "The name of the organization"
},
"slug": {
"type": "string",
"description": "The slug of the organization"
},
"vcs-type": {
"type": "string",
"description": "The VCS provider"
},
"avatar_url": {
"type": "string",
"description": "URL to the user's avatar on the VCS"
}
}
}
}
UserListCollaborationsdefaultResponse
{
"type": "object",
"properties": {
"message": {
"type": "string"
}
}
}
Violation
{
"type": "object",
"required": [
"rule",
"reason"
],
"properties": {
"rule": {
"type": "string"
},
"reason": {
"type": "string"
}
}
}
WebhookCreateOutboundWebhookRequest
{
"type": "object",
"required": [
"name",
"events",
"url",
"verify-tls",
"signing-secret",
"scope"
],
"properties": {
"url": {
"type": "string",
"description": "URL to deliver the webhook to. Note: protocol must be included as well (only https is supported)"
},
"name": {
"type": "string",
"description": "Name of the webhook"
},
"scope": {
"type": "object",
"required": [
"id",
"type"
],
"properties": {
"id": {
"type": "string",
"format": "uuid",
"description": "ID of the scope being used (at the moment, only project ID is supported)"
},
"type": {
"enum": [
"project"
],
"type": "string",
"description": "Type of the scope being used"
}
},
"description": "The scope in which the relevant events that will trigger webhooks"
},
"events": {
"type": "array",
"items": {
"enum": [
"workflow-completed",
"job-completed"
],
"type": "string"
},
"description": "Events that will trigger the webhook"
},
"verify-tls": {
"type": "boolean",
"description": "Whether to enforce TLS certificate verification when delivering the webhook"
},
"signing-secret": {
"type": "string",
"description": "Secret used to build an HMAC hash of the payload and passed as a header in the webhook request"
}
},
"description": "The parameters for a create webhook request"
}
WebhookCreateOutboundWebhookResponse
{
"type": "object",
"title": "Webhook",
"required": [
"id",
"scope",
"name",
"events",
"url",
"verify-tls",
"signing-secret",
"created-at",
"updated-at"
],
"properties": {
"id": {
"type": "string",
"format": "uuid",
"description": "The unique ID of the webhook"
},
"url": {
"type": "string",
"description": "URL to deliver the webhook to. Note: protocol must be included as well (only https is supported)"
},
"name": {
"type": "string",
"description": "Name of the webhook"
},
"scope": {
"type": "object",
"required": [
"id",
"type"
],
"properties": {
"id": {
"type": "string",
"format": "uuid",
"description": "ID of the scope being used (at the moment, only project ID is supported)"
},
"type": {
"type": "string",
"description": "Type of the scope being used"
}
},
"description": "The scope in which the relevant events that will trigger webhooks"
},
"events": {
"type": "array",
"items": {
"enum": [
"workflow-completed",
"job-completed"
],
"type": "string"
},
"description": "Events that will trigger the webhook"
},
"created-at": {
"type": "string",
"format": "date-time",
"example": "2015-09-21T17:29:21.042Z",
"description": "The date and time the webhook was created."
},
"updated-at": {
"type": "string",
"format": "date-time",
"example": "2015-09-21T17:29:21.042Z",
"description": "The date and time the webhook was last updated."
},
"verify-tls": {
"type": "boolean",
"description": "Whether to enforce TLS certificate verification when delivering the webhook"
},
"signing-secret": {
"type": "string",
"description": "Masked value of the secret used to build an HMAC hash of the payload and passed as a header in the webhook request"
}
}
}
WebhookCreateOutboundWebhookdefaultResponse
{
"type": "object",
"properties": {
"message": {
"type": "string"
}
}
}
WebhookDeleteOutboundWebhookResponse
{
"type": "object",
"title": "MessageResponse",
"required": [
"message"
],
"properties": {
"message": {
"type": "string",
"description": "A human-readable message"
}
},
"description": "message response"
}
WebhookDeleteOutboundWebhookdefaultResponse
{
"type": "object",
"properties": {
"message": {
"type": "string"
}
}
}
WebhookGetByIdResponse
{
"type": "object",
"title": "Webhook",
"required": [
"id",
"scope",
"name",
"events",
"url",
"verify-tls",
"signing-secret",
"created-at",
"updated-at"
],
"properties": {
"id": {
"type": "string",
"format": "uuid",
"description": "The unique ID of the webhook"
},
"url": {
"type": "string",
"description": "URL to deliver the webhook to. Note: protocol must be included as well (only https is supported)"
},
"name": {
"type": "string",
"description": "Name of the webhook"
},
"scope": {
"type": "object",
"required": [
"id",
"type"
],
"properties": {
"id": {
"type": "string",
"format": "uuid",
"description": "ID of the scope being used (at the moment, only project ID is supported)"
},
"type": {
"type": "string",
"description": "Type of the scope being used"
}
},
"description": "The scope in which the relevant events that will trigger webhooks"
},
"events": {
"type": "array",
"items": {
"enum": [
"workflow-completed",
"job-completed"
],
"type": "string"
},
"description": "Events that will trigger the webhook"
},
"created-at": {
"type": "string",
"format": "date-time",
"example": "2015-09-21T17:29:21.042Z",
"description": "The date and time the webhook was created."
},
"updated-at": {
"type": "string",
"format": "date-time",
"example": "2015-09-21T17:29:21.042Z",
"description": "The date and time the webhook was last updated."
},
"verify-tls": {
"type": "boolean",
"description": "Whether to enforce TLS certificate verification when delivering the webhook"
},
"signing-secret": {
"type": "string",
"description": "Masked value of the secret used to build an HMAC hash of the payload and passed as a header in the webhook request"
}
}
}
WebhookGetByIddefaultResponse
{
"type": "object",
"properties": {
"message": {
"type": "string"
}
}
}
WebhookListMatchingScopeResponse
{
"type": "object",
"required": [
"items",
"next_page_token"
],
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"title": "Webhook",
"required": [
"id",
"scope",
"name",
"events",
"url",
"verify-tls",
"signing-secret",
"created-at",
"updated-at"
],
"properties": {
"id": {
"type": "string",
"format": "uuid",
"description": "The unique ID of the webhook"
},
"url": {
"type": "string",
"description": "URL to deliver the webhook to. Note: protocol must be included as well (only https is supported)"
},
"name": {
"type": "string",
"description": "Name of the webhook"
},
"scope": {
"type": "object",
"required": [
"id",
"type"
],
"properties": {
"id": {
"type": "string",
"format": "uuid",
"description": "ID of the scope being used (at the moment, only project ID is supported)"
},
"type": {
"type": "string",
"description": "Type of the scope being used"
}
},
"description": "The scope in which the relevant events that will trigger webhooks"
},
"events": {
"type": "array",
"items": {
"enum": [
"workflow-completed",
"job-completed"
],
"type": "string"
},
"description": "Events that will trigger the webhook"
},
"created-at": {
"type": "string",
"format": "date-time",
"example": "2015-09-21T17:29:21.042Z",
"description": "The date and time the webhook was created."
},
"updated-at": {
"type": "string",
"format": "date-time",
"example": "2015-09-21T17:29:21.042Z",
"description": "The date and time the webhook was last updated."
},
"verify-tls": {
"type": "boolean",
"description": "Whether to enforce TLS certificate verification when delivering the webhook"
},
"signing-secret": {
"type": "string",
"description": "Masked value of the secret used to build an HMAC hash of the payload and passed as a header in the webhook request"
}
}
}
},
"next_page_token": {
"type": "string",
"x-nullable": true,
"description": "A token to pass as a `page-token` query parameter to return the next page of results."
}
},
"description": "A list of webhooks"
}
WebhookListMatchingScopedefaultResponse
{
"type": "object",
"properties": {
"message": {
"type": "string"
}
}
}
WebhookUpdateOutboundWebhookRequest
{
"type": "object",
"properties": {
"url": {
"type": "string",
"description": "URL to deliver the webhook to. Note: protocol must be included as well (only https is supported)"
},
"name": {
"type": "string",
"description": "Name of the webhook"
},
"events": {
"type": "array",
"items": {
"enum": [
"workflow-completed",
"job-completed"
],
"type": "string"
},
"description": "Events that will trigger the webhook"
},
"verify-tls": {
"type": "boolean",
"description": "Whether to enforce TLS certificate verification when delivering the webhook"
},
"signing-secret": {
"type": "string",
"description": "Secret used to build an HMAC hash of the payload and passed as a header in the webhook request"
}
},
"description": "The parameters for an update webhook request"
}
WebhookUpdateOutboundWebhookResponse
{
"type": "object",
"title": "Webhook",
"required": [
"id",
"scope",
"name",
"events",
"url",
"verify-tls",
"signing-secret",
"created-at",
"updated-at"
],
"properties": {
"id": {
"type": "string",
"format": "uuid",
"description": "The unique ID of the webhook"
},
"url": {
"type": "string",
"description": "URL to deliver the webhook to. Note: protocol must be included as well (only https is supported)"
},
"name": {
"type": "string",
"description": "Name of the webhook"
},
"scope": {
"type": "object",
"required": [
"id",
"type"
],
"properties": {
"id": {
"type": "string",
"format": "uuid",
"description": "ID of the scope being used (at the moment, only project ID is supported)"
},
"type": {
"type": "string",
"description": "Type of the scope being used"
}
},
"description": "The scope in which the relevant events that will trigger webhooks"
},
"events": {
"type": "array",
"items": {
"enum": [
"workflow-completed",
"job-completed"
],
"type": "string"
},
"description": "Events that will trigger the webhook"
},
"created-at": {
"type": "string",
"format": "date-time",
"example": "2015-09-21T17:29:21.042Z",
"description": "The date and time the webhook was created."
},
"updated-at": {
"type": "string",
"format": "date-time",
"example": "2015-09-21T17:29:21.042Z",
"description": "The date and time the webhook was last updated."
},
"verify-tls": {
"type": "boolean",
"description": "Whether to enforce TLS certificate verification when delivering the webhook"
},
"signing-secret": {
"type": "string",
"description": "Masked value of the secret used to build an HMAC hash of the payload and passed as a header in the webhook request"
}
}
}
WebhookUpdateOutboundWebhookdefaultResponse
{
"type": "object",
"properties": {
"message": {
"type": "string"
}
}
}
WorkflowApproveJobResponse
{
"type": "object",
"title": "MessageResponse",
"required": [
"message"
],
"properties": {
"message": {
"type": "string",
"description": "A human-readable message"
}
},
"description": "message response"
}
WorkflowApproveJobdefaultResponse
{
"type": "object",
"properties": {
"message": {
"type": "string"
}
}
}
WorkflowCancelWorkflowResponse
{
"type": "object",
"title": "MessageResponse",
"required": [
"message"
],
"properties": {
"message": {
"type": "string",
"description": "A human-readable message"
}
},
"description": "message response"
}
WorkflowCancelWorkflowdefaultResponse
{
"type": "object",
"properties": {
"message": {
"type": "string"
}
}
}
WorkflowGetByIdResponse
{
"type": "object",
"title": "Workflow",
"required": [
"id",
"name",
"status",
"created_at",
"stopped_at",
"pipeline_id",
"pipeline_number",
"project_slug",
"started_by"
],
"properties": {
"id": {
"type": "string",
"format": "uuid",
"description": "The unique ID of the workflow."
},
"tag": {
"enum": [
"setup"
],
"type": "string",
"example": "setup",
"x-nullable": true,
"description": "Tag used for the workflow"
},
"name": {
"type": "string",
"example": "build-and-test",
"description": "The name of the workflow."
},
"status": {
"enum": [
"success",
"running",
"not_run",
"failed",
"error",
"failing",
"on_hold",
"canceled",
"unauthorized"
],
"type": "string",
"description": "The current status of the workflow."
},
"created_at": {
"type": "string",
"format": "date-time",
"description": "The date and time the workflow was created."
},
"errored_by": {
"type": "string",
"format": "uuid"
},
"started_by": {
"type": "string",
"format": "uuid"
},
"stopped_at": {
"type": "string",
"format": "date-time",
"x-nullable": true,
"description": "The date and time the workflow stopped."
},
"canceled_by": {
"type": "string",
"format": "uuid"
},
"pipeline_id": {
"type": "string",
"format": "uuid",
"example": "5034460f-c7c4-4c43-9457-de07e2029e7b",
"description": "The ID of the pipeline this workflow belongs to."
},
"project_slug": {
"type": "string",
"example": "gh/CircleCI-Public/api-preview-docs",
"description": "The project-slug for the pipeline this workflow belongs to."
},
"pipeline_number": {
"type": "integer",
"format": "int64",
"example": 25,
"description": "The number of the pipeline this workflow belongs to."
}
},
"description": "A workflow"
}
WorkflowGetByIddefaultResponse
{
"type": "object",
"properties": {
"message": {
"type": "string"
}
}
}
WorkflowGetJobsResponse
{
"type": "object",
"title": "WorkflowJobListResponse",
"required": [
"items",
"next_page_token"
],
"properties": {
"items": {
"type": "array",
"items": {
"type": "object",
"title": "Job",
"required": [
"id",
"name",
"started_at",
"dependencies",
"project_slug",
"status",
"type"
],
"properties": {
"id": {
"type": "string",
"format": "uuid",
"description": "The unique ID of the job."
},
"name": {
"type": "string",
"description": "The name of the job."
},
"type": {
"enum": [
"build",
"approval"
],
"type": "string",
"description": "The type of job."
},
"status": {
"enum": [
"success",
"running",
"not_run",
"failed",
"retried",
"queued",
"not_running",
"infrastructure_fail",
"timedout",
"on_hold",
"terminated-unknown",
"blocked",
"canceled",
"unauthorized"
],
"type": "string",
"description": "The current status of the job."
},
"job_number": {
"type": "integer",
"format": "int64",
"description": "The number of the job."
},
"started_at": {
"type": "string",
"format": "date-time",
"description": "The date and time the job started."
},
"stopped_at": {
"type": "string",
"format": "date-time",
"x-nullable": true,
"description": "The time when the job stopped."
},
"approved_by": {
"type": "string",
"format": "uuid",
"description": "The unique ID of the user."
},
"canceled_by": {
"type": "string",
"format": "uuid",
"description": "The unique ID of the user."
},
"dependencies": {
"type": "array",
"items": {
"type": "string",
"format": "uuid",
"description": "The unique ID of the job."
},
"description": "A sequence of the unique job IDs for the jobs that this job depends upon in the workflow."
},
"project_slug": {
"type": "string",
"example": "gh/CircleCI-Public/api-preview-docs",
"description": "The project-slug for the job."
},
"approval_request_id": {
"type": "string",
"format": "uuid",
"description": "The unique ID of the job."
}
},
"description": "Job"
}
},
"next_page_token": {
"type": "string",
"x-nullable": true,
"description": "A token to pass as a `page-token` query parameter to return the next page of results."
}
}
}
WorkflowGetJobsdefaultResponse
{
"type": "object",
"properties": {
"message": {
"type": "string"
}
}
}
WorkflowRerunWorkflowRequest
{
"type": "object",
"title": "RerunWorkflowParameters",
"properties": {
"jobs": {
"type": "array",
"items": {
"type": "string",
"format": "uuid"
},
"example": [
"c65b68ef-e73b-4bf2-be9a-7a322a9df150",
"5e957edd-5e8c-4985-9178-5d0d69561822"
],
"description": "A list of job IDs to rerun."
},
"enable_ssh": {
"type": "boolean",
"example": false,
"description": "Whether to enable SSH access for the triggering user on the newly-rerun job. Requires the jobs parameter to be used and so is mutually exclusive with the from_failed parameter."
},
"from_failed": {
"type": "boolean",
"example": false,
"description": "Whether to rerun the workflow from the failed job. Mutually exclusive with the jobs parameter."
},
"sparse_tree": {
"type": "boolean",
"example": false,
"description": "Completes rerun using sparse trees logic, an optimization for workflows that have disconnected subgraphs. Requires jobs parameter and so is mutually exclusive with the from_failed parameter."
}
},
"x-nullable": true,
"description": "The information you can supply when rerunning a workflow."
}
WorkflowRerunWorkflowResponse
{
"type": "object",
"required": [
"workflow_id"
],
"properties": {
"workflow_id": {
"type": "string",
"format": "uuid",
"example": "0e53027b-521a-4c40-9042-47e72b3c63a3",
"description": "The ID of the newly-created workflow."
}
},
"description": "A response to rerunning a workflow"
}
WorkflowRerunWorkflowdefaultResponse
{
"type": "object",
"properties": {
"message": {
"type": "string"
}
}
}
context_project_restrictions_list
{
"type": "object",
"properties": {
"items": {
"type": "array",
"items": {
"properties": {
"id": {
"type": "string",
"format": "uuid",
"description": "UUID of the restriction"
},
"name": {
"type": "string",
"description": "Contains a human-readable reference for the restriction. For\n\"project\" restrictions this is the name of the project.\n\nMay be null.\n"
},
"context_id": {
"type": "string",
"format": "uuid",
"description": "UUID of the context"
},
"project_id": {
"type": "string",
"format": "uuid",
"deprecated": true,
"description": "Deprecated - For \"project\" restrictions read the project ID from\n\"restriction_value\" instead.\n\nUUID of the project used in a project restriction.\n"
},
"restriction_type": {
"enum": [
"project",
"expression"
],
"type": "string",
"description": "Type of the restriction"
},
"restriction_value": {
"type": "string",
"description": "Value used to evaluate the restriction"
}
},
"additionalProperties": false
}
},
"next_page_token": {
"type": "string",
"nullable": true,
"description": "Token that can be used to retrieve next page of results"
}
}
}
project_settings
{
"type": "object",
"properties": {
"advanced": {
"type": "object",
"properties": {
"oss": {
"type": "boolean",
"description": "Free and Open Source. Enabling this grants additional credits, and lets others see your builds, both through the web UI and the API."
},
"disable_ssh": {
"type": "boolean",
"description": "When set to true, job re-runs with SSH debugging access will be disabled for the project."
},
"build_fork_prs": {
"type": "boolean",
"description": "Run builds for pull requests from forks."
},
"build_prs_only": {
"type": "boolean",
"description": "Once enabled, we will only build branches that have associated pull requests open."
},
"setup_workflows": {
"type": "boolean",
"description": "Enabling allows you to conditionally trigger configurations outside of the primary `.circleci` parent directory."
},
"autocancel_builds": {
"type": "boolean",
"description": "Except for the default branch, cancel running pipelines on a branch when a new pipeline starts on that branch."
},
"set_github_status": {
"type": "boolean",
"description": "Report the status of every pushed commit to GitHub's status API. Updates reported per job."
},
"pr_only_branch_overrides": {
"type": "array",
"items": {
"type": "string"
},
"description": "This field is used in conjunction with the `build_prs_only`, it allows you to specify a list of branches that will always triger a build. The value passed will overwrite the existing value."
},
"forks_receive_secret_env_vars": {
"type": "boolean",
"description": "Run builds for forked pull requests with this project's configuration, environment variables, and secrets."
},
"write_settings_requires_admin": {
"type": "boolean",
"description": "Whether updating these settings requires a user to be an organization administrator. When disabled, updating settings can be done by any member."
}
}
}
}
}
restriction_created
{
"properties": {
"id": {
"type": "string",
"format": "uuid",
"description": "UUID of the project restriction"
},
"name": {
"type": "string",
"description": "Contains a human-readable reference for the restriction. For\n\"project\" restrictions this is the name of the project.\n\nMay be null.\n"
},
"project_id": {
"type": "string",
"format": "uuid",
"description": "Deprecated - For \"project\" restrictions read the project ID from\n\"restriction_value\" instead.\n\nUUID of the project used in a project restriction.\n"
},
"restriction_type": {
"enum": [
"project",
"expression"
],
"type": "string",
"description": "Type of the restriction"
},
"restriction_value": {
"type": "string",
"description": "Value used to evaluate the restriction"
}
},
"additionalProperties": false
}
restriction_deleted
{
"properties": {
"message": {
"type": "string",
"description": "Response message"
}
},
"additionalProperties": false
}