Screwdriver is an open-source build platform designed for Continuous Delivery, originally built at Yahoo. It provides a REST API for managing pipelines, builds, jobs, and webhooks and is designed to coordinate complex CD workflows across multiple repositories.
Screwdriver is one of 8 APIs that Continuous Delivery Foundation publishes on the APIs.io network, described by a machine-readable OpenAPI specification.
Tagged areas include Builds, CD, CI/CD, Pipelines, and Screwdriver. The published artifact set on APIs.io includes API documentation, a getting-started guide, and an OpenAPI specification.
This API exposes
152 operations
across 119 paths,
and defines 226 schemas.
It is described by OpenAPI 3.0.0, at version 3.
Requests are made against a single base URL, https://api.screwdriver.cd/.
152 operations119 paths226 schemas21 DELETE78 GET28 POST25 PUT
Metadata
The identity and technical contract details declared by the specification.
Specification
OpenAPI 3.0.0
API Version
3
Base URL
https://api.screwdriver.cd/
Authentication
API Key
Resource Areas
1
Authentication & Security 1
Screwdriver declares
1 security scheme
for authenticating requests.
An API key is passed in the header as Authorization (jwt).
By default, every request must be authenticated.
Paths & Operations 152
Across 119 paths, the API surfaces 152 operations — 21 DELETE, 78 GET, 28 POST, 25 PUT. Each is listed below with its method, path, parameters, and response codes.
v4 152
GET
/v4/banners
Get banners
getV4Banners→ 200
POST
/v4/banners
Create a new banner
postV4Bannersbody→ default
GET
/v4/buildclusters
Get build clusters
getV4Buildclusters→ 200
POST
/v4/buildclusters
Create a build cluster
postV4Buildclustersbody→ default
GET
/v4/collections
Get collections for requesting user
getV4Collections→ 200
POST
/v4/collections
Create a new collection
postV4Collectionsbody→ default
GET
/v4/commands
Get commands with pagination
getV4Commands9 params→ 200
POST
/v4/commands
Create a new command
postV4Commands→ default
GET
/v4/isAdmin
Check if a user is admin of a pipeline, event, or job
getV4Isadmin3 params→ default
GET
/v4/metrics
application metrics
getV4Metrics→ default
GET
/v4/pipelines
Get pipelines with pagination
getV4Pipelines10 params→ 200
POST
/v4/pipelines
Create a new pipeline
postV4Pipelinesbody→ default
GET
/v4/release
API Release information
getV4Release→ default
GET
/v4/stats
API stats
getV4Stats→ 200
GET
/v4/status
API status
getV4Status→ 200
GET
/v4/templates
Get templates with pagination
getV4Templates9 params→ 200
POST
/v4/templates
Create a new template
postV4Templatesbody→ default
GET
/v4/tokens
Get tokens with pagination
getV4Tokens→ 200
POST
/v4/tokens
Create a new token
postV4Tokensbody→ default
GET
/v4/versions
API Package Versions
getV4Versions→ 200
GET
/v4/auth/contexts
Get all auth contexts
getV4AuthContexts→ 200
GET
/v4/auth/crumb
Generate crumb
getV4AuthCrumb→ 200
GET
/v4/auth/key
Get jwt public key
getV4AuthKey→ 200
GET
/v4/banners/{id}
Get a single banner
getV4BannersId1 param→ 200
PUT
/v4/banners/{id}
Update a banner
putV4BannersId1 parambody→ default
DELETE
/v4/banners/{id}
Delete a banner
deleteV4BannersId1 param→ default
GET
/v4/buildclusters/{name}
Get a single build cluster
getV4BuildclustersName1 param→ 200
PUT
/v4/buildclusters/{name}
Update a build cluster
putV4BuildclustersName1 parambody→ default
DELETE
/v4/buildclusters/{name}
Delete a single build cluster
deleteV4BuildclustersName1 param→ default
GET
/v4/builds/statuses
Get build statuses for jobs
getV4BuildsStatuses3 params→ 200
GET
/v4/builds/{id}
Get a single build
getV4BuildsId1 param→ 200
PUT
/v4/builds/{id}
Update a build
putV4BuildsId1 parambody→ default
GET
/v4/collections/{id}
Get a single collection
getV4CollectionsId1 param→ 200
PUT
/v4/collections/{id}
Update a collection
putV4CollectionsId1 parambody→ default
DELETE
/v4/collections/{id}
Delete a single collection
deleteV4CollectionsId1 param→ default
GET
/v4/coverage/info
Get coverage metadata
getV4CoverageInfo→ default
GET
/v4/coverage/token
Get an access token to talk to coverage server
getV4CoverageToken→ default
GET
/v4/events/{id}
Get a single event
getV4EventsId1 param→ 200
GET
/v4/jobs/{id}
Get a single job
getV4JobsId1 param→ 200
PUT
/v4/jobs/{id}
Update a job
putV4JobsId1 parambody→ default
GET
/v4/pipeline/templates
List all the pipeline templates
getV4PipelineTemplates6 params→ 200
GET
/v4/pipelines/{id}
Get a single pipeline
getV4PipelinesId1 param→ 200
PUT
/v4/pipelines/{id}
Update a pipeline
putV4PipelinesId1 parambody→ default
DELETE
/v4/pipelines/{id}
Delete a single pipeline
deleteV4PipelinesId1 param→ default
GET
/v4/secrets/{id}
Get a single secret
getV4SecretsId1 param→ 200
PUT
/v4/secrets/{id}
Update a secret
putV4SecretsId1 parambody→ default
DELETE
/v4/secrets/{id}
Remove a single secret
deleteV4SecretsId1 param→ default
GET
/v4/stages/{id}
Get a single stage
getV4StagesId1 param→ 200
GET
/v4/template/{id}
Get a single template
getV4TemplateId1 param→ 200
GET
/v4/templates/{name}
Get all template versions for a given template name with pagination
getV4TemplatesName6 params→ 200
DELETE
/v4/templates/{name}
Delete a template
deleteV4TemplatesName1 param→ default
GET
/v4/users/settings
Get user settings
getV4UsersSettings→ 200
PUT
/v4/users/settings
Update user settings
putV4UsersSettingsbody→ default
DELETE
/v4/users/settings
Reset user settings
deleteV4UsersSettings→ default
GET
/v4/users/{username}
Get an user by SCM username and SCM context
getV4UsersUsername3 params→ default
GET
/v4/auth/token/{buildId}
Generate jwt
getV4AuthTokenBuildid1 param→ 200
GET
/v4/builds/{id}/artifacts
Get a zipped file including all build artifacts
getV4BuildsIdArtifacts1 param→ default
GET
/v4/builds/{id}/metrics
Get metrics for this build
getV4BuildsIdMetrics3 params→ 200
GET
/v4/builds/{id}/steps
Get a step for a build
getV4BuildsIdSteps1 param→ 200
GET
/v4/builds/{id}/secrets
Get all secrets for a given build
getV4BuildsIdSecrets1 param→ 200
GET
/v4/commands/{namespace}/{name}
Get all command versions for a given command namespace/name with pagination
getV4CommandsNamespaceName7 params→ 200
DELETE
/v4/commands/{namespace}/{name}
Delete a command
deleteV4CommandsNamespaceName2 params→ default
GET
/v4/events/{id}/metrics
Get metrics for this event
getV4EventsIdMetrics3 params→ 200
GET
/v4/events/{id}/builds
Get builds for a given event
getV4EventsIdBuilds7 params→ 200
GET
/v4/events/{id}/stageBuilds
Get stage builds for a given event
getV4EventsIdStagebuilds1 param→ 200
GET
/v4/jobs/{id}/metrics
Get build metrics for this job
getV4JobsIdMetrics4 params→ 200
GET
/v4/jobs/{id}/builds
Get builds for a given job
getV4JobsIdBuilds8 params→ 200
GET
/v4/jobs/{id}/lastSuccessfulMeta
Get the last successful metadata for a given job
getV4JobsIdLastsuccessfulmeta1 param→ 200
GET
/v4/jobs/{id}/latestBuild
Get latest build for a given job
getV4JobsIdLatestbuild2 params→ 200
GET
/v4/pipeline/template/{id}
Get a single template
getV4PipelineTemplateId1 param→ 200
GET
/v4/pipelines/{id}/admins
Get all admin users for a given pipeline
getV4PipelinesIdAdmins1 param→ 200
GET
/v4/pipelines/{id}/latestCommitEvent
Get latest commit event for a given pipeline
getV4PipelinesIdLatestcommitevent1 param→ 200
GET
/v4/pipelines/{id}/tokens
List tokens for pipeline
getV4PipelinesIdTokens1 param→ 200
POST
/v4/pipelines/{id}/tokens
Create a new token for pipeline
postV4PipelinesIdTokens1 parambody→ default
DELETE
/v4/pipelines/{id}/tokens
Remove all tokens for a specific pipeline
deleteV4PipelinesIdTokens1 param→ default
GET
/v4/pipelines/{id}/events
Get pipeline type events for this pipeline
getV4PipelinesIdEvents13 params→ 200
GET
/v4/pipelines/{id}/triggers
Get all triggers for a given pipeline
getV4PipelinesIdTriggers1 param→ 200
GET
/v4/pipelines/{id}/jobs
Get all jobs for a given pipeline
getV4PipelinesIdJobs7 params→ 200
GET
/v4/pipelines/{id}/badge
Get a badge for the pipeline
getV4PipelinesIdBadge1 param→ default
GET
/v4/pipelines/{id}/stages
Get all stages for a given pipeline
getV4PipelinesIdStages8 params→ default
GET
/v4/pipelines/{id}/secrets
Get all secrets secrets for a given pipelines
getV4PipelinesIdSecrets1 param→ 200
GET
/v4/pipelines/{id}/builds
Get builds for this pipeline
getV4PipelinesIdBuilds9 params→ 200
GET
/v4/pipelines/{id}/metrics
Get metrics for this pipeline
getV4PipelinesIdMetrics11 params→ 200
GET
/v4/pipelines/{id}/lastSuccessfulEvent
Get last successful event for a given pipeline
getV4PipelinesIdLastsuccessfulevent1 param→ 200
GET
/v4/pipelines/{id}/admin
Get the pipeline admin
getV4PipelinesIdAdmin3 params→ default
GET
/v4/stages/{id}/stageBuilds
Get stage builds for a stage
getV4StagesIdStagebuilds6 params→ 200
GET
/v4/templates/{name}/{versionOrTag}
Get a single template given template name and version or tag
getV4TemplatesNameVersionortag2 params→ 200
GET
/v4/templates/{name}/tags
Get all template tags for a given template name
getV4TemplatesNameTags5 params→ 200
GET
/v4/templates/{name}/metrics
Get all template versions and metrics for a template name with pagination
getV4TemplatesNameMetrics6 params→ 200
GET
/v4/auth/login/github:github.com/{web}
Login using oauth
getV4AuthLoginGithubgithubcomWeb→ default
POST
/v4/auth/login/github:github.com/{web}
Login using oauth
postV4AuthLoginGithubgithubcomWeb→ default
GET
/v4/auth/login/guest/{web}
Login as an guest user
getV4AuthLoginGuestWeb→ default
GET
/v4/builds/{id}/steps/{name}
Get a step for a build
getV4BuildsIdStepsName2 params→ 200
PUT
/v4/builds/{id}/steps/{name}
Update a step for a build
putV4BuildsIdStepsName2 paramsbody→ 200
GET
/v4/builds/{id}/artifacts/{name*}
Get a single build artifact
getV4BuildsIdArtifactsName4 params→ default
GET
/v4/commands/{namespace}/{name}/tags
Get all command tags for a given command namespace and name
getV4CommandsNamespaceNameTags5 params→ 200
GET
/v4/commands/{namespace}/{name}/{versionOrTag}
Get a single command given command namespace, name and version or tag
The contract defines 226 schemas that model the data the API accepts and returns. The most detailed are Get Build (23 properties), Get Pipeline (23 properties), Model38 (18 properties), Job permutation (18 properties). Each schema is shown below with its type and property counts.
type
string
Type/Severity of the banner message
scope
string
Scope of the banner
Model1
object
8 properties8 required
List Banners
array
scmOrganizations
array
Get BuildCluster
object
10 properties8 required
List of build clusters
array
pipelineIds
array
Model2
string
Collection type
Model3
object
6 properties4 required
List collections for requesting user
array
SCM Repository
object
5 properties3 required
admins
object
Admins of this Pipeline
adminUserIds
array
IDs of the users who have admin privileges for this pipeline
Model4
object
2 properties
nodes
array
Model5
object
2 properties
edges
array
workflowGraph
object
Graph representation of the workflow
2 properties
annotations
object
Pipeline-level annotations
scmUrls
array
childPipelines
object
Configuration of child pipelines
2 properties1 required
metricsDowntimeJobs
array
Job IDs to watch for downtime
metricsDowntimeStatuses
array
Build statuses to watch for downtime
settings
object
8 properties
state
string
Current state of the pipeline
actions
array
Model6
object
2 properties
subscribedScmUrlsWithActions
array
List of subscribed scm urls paired with actions
sonar
object
4 properties
badges
object
A list of badges that pipline has
1 property
Get Pipeline
object
23 properties6 required
List of Pipelines
array
Requests Object
object
6 properties
Breaker Object
object
1 property
Executor Object
object
2 properties
Stats Object
object
2 properties
permission
string
Token permission
pipelines
array
organizations
array
jobs
array
resources
object
4 properties
options
object
2 properties
Get tokens
object
7 properties3 required
Model7
array
List of package versions
array
License Object
object
3 properties
List of Licenses
array
Versions Object
object
2 properties
Context Object
object
4 properties
Array of Contexts
array
Crumb to prevent CSRF Object
object
1 property
Public Key for Verifying JWTs Object
object
1 property
Get Banner
object
8 properties8 required
Model8
array
string
object
2 properties
parameters
object
Input parameters that defined this build
meta
object
Key=Value information from the build itself
status
string
Current status of the build
statusMessageType
string
Severity of the status message
stats
object
Stats for this build
4 properties
Get Step metadata
object
8 properties1 required
steps
array
List of steps
Get Build
object
23 properties6 required
Model9
string
Collection type
Model10
array
Get collection
object
7 properties4 required
Author of the commit
object
5 properties2 required
Committer of the commit
object
5 properties2 required
SCM Commit
object
Commit related to the event
4 properties3 required
SCM User
object
Creator of the event
5 properties2 required
Model11
object
Key=Value information from the event itself
Model12
string
Type of the event
Model13
object
Graph representation of the workflow
2 properties
SCM Pull Request
object
Pull request object that holds information about the pull request
9 properties
Model14
string
Current status of the event
Get Event
object
18 properties8 required
Model15
object
event
array
pipeline
array
job
array
cache
object
3 properties
Named command to execute
object
3 properties
List of named commands to execute
array
order
array
secrets
array
Model16
object
stage
object
1 property1 required
Model17
array
Model18
array
subscribe
object
1 property
Job permutation
object
18 properties
List of job permutations
array
Model19
string
Current state of the Job
Get Job
object
18 properties4 required
Get Secret
object
5 properties4 required
jobIds
array
Job IDs in this Stage
Model20
object
Stage-level annotations
Get Stage metadata
object
9 properties4 required
labels
array
Labels for template
Model21
array
Model22
array
config
object
18 properties
clouds
array
A list of cloud that template supports
architectures
array
A list of architectures that template supports
compatibilities
object
2 properties
Get Template
object
14 properties7 required
List of templates
array
timestampFormat
string
User preferred timestamp
Model23
object
3 properties
JSON Web Token Object
object
1 property
Model24
object
Model25
array
List of steps
array
List of secrets
array
format
string
Format of the Command
mode
string
Mode of the Habitat command
habitat
object
4 properties4 required
docker
object
2 properties1 required
binary
object
1 property1 required
Get Command
object
16 properties8 required
List of commands
array
Model26
array
List of builds
array
Get Stage Build metadata
object
4 properties3 required
List of stage builds
array
Model27
array
templateType
string
Template Type
Model28
object
10 properties6 required
Model29
object
3 properties
Get User
object
4 properties
List of users
array
Model30
array
List of events
array
triggers
array
Model31
object
2 properties
List of triggers
array
List of jobs
array
Model32
array
Model33
array
List of stage builds for a stage
array
TemplateTag
object
7 properties1 required
Model34
array
Model35
array
CommandTag
object
6 properties
List of command tags
array
Model36
array
Model37
array
Model38
object
18 properties
Model39
array
Model40
object
3 properties
Model41
array
Model42
array
Model43
array
setup
object
17 properties
Model44
array
Model45
array
teardown
object
16 properties
Model46
object
7 properties
Model47
object
7 properties1 required
Model48
object
Graph representation of the workflow
2 properties
Model49
object
7 properties3 required
List of versions of a template
array
Model50
array
Model51
object
5 properties4 required
Model52
array
Create Banner
object
5 properties1 required
Create Build
object
9 properties4 required
Model53
object
3 properties1 required
Model54
string
Collection type
Create collection
object
4 properties1 required
Model55
object
Key=Value information from the event itself
startAction
string
Start method of the event
Create Event
object
15 properties
Create Pipeline
object
3 properties1 required
Create Secret
object
4 properties4 required
Certify input to template validator
object
1 property1 required
Create token
object
4 properties1 required
Validation Input
object
1 property
errors
array
Model56
array
Model57
object
2 properties1 required
Model58
object
2 properties
warnMessages
array
Execution information
object
10 properties
Certify input to command validator
object
1 property1 required
Functional context regarding the error
object
Dot-notation path to the field that caused the validation error
array
Model59
object
4 properties3 required
Array of errors encountered while validating the given command
array
The end-result of parsing the given command
object
Command validation output
object
2 properties2 required
Array of path to the field that caused the validation error
array
Model60
object
4 properties3 required
Array of errors encountered while validating the given template
array
The end-result of parsing the given template
object
Template validation output
object
3 properties2 required
Model61
object
2 properties
Model62
object
2 properties2 required
files
array
Model63
object
5 properties4 required
Update Banner
object
3 properties
Update BuildCluster
object
8 properties
Update Build
object
5 properties
Model64
string
Collection type
Update collection
object
4 properties
Model65
string
Current state of the Job
Update Job
object
2 properties
usernames
array
Model66
object
3 properties3 required
Model67
array
Model68
string
New state of the pipeline
Update Pipeline
object
7 properties
Update Secret
object
2 properties
Update token metadata
object
4 properties
Model69
object
3 properties
Update User
object
1 property
Model70
object
1 property
Model71
object
1 property
Update Step metadata
object
4 properties
Model72
object
1 property
Model73
object
1 property
Model74
object
1 property
Model75
object
1 property
Model76
object
1 property
Model77
object
1 property
Specification
The full machine-readable OpenAPI contract behind this narrative.
Every API here is available over the API and to AI agents over MCP. APIs is not yet its own endpoint on the v1 API. Reach this content through network search and the tag graph, or the MCP server below.
Installs https://mcp.apievangelist.com/mcp in Claude, Cursor, VS Code and the rest — one button, every client.
MCP tools for apis
4 tools reach this content
search_api_evangelistSearch every content type across the network at once.
find_relatedThe shared-tag relevance graph — what else covers this.
get_tagEverything one tag labels, across all content types.
guide_topicPRO — a curated bundle for a topic: area, guidance, rules, papers, stories, services.
A second provider on the same verified email joins the account you already have.
Your account
ⓘWhere this information came from
This is an independent, third-party profile of Screwdriver, published by
API Evangelist. We do not operate, host, resell, or
support these APIs, and we are not affiliated with or endorsed by the company unless stated above.
Everything here is built from publicly available information — the company's own site,
developer portal, documentation, public repositories, and the specifications it publishes for public use.
Nothing is obtained by breaching a system, defeating an access control, or using credentials.
The Kin Score and Agent Readiness rating are independently calculated assessments of a company's
public API artifacts, scored against a published rubric. They are not certifications,
endorsements, security assessments, or audits.
Corrections, re-scores, and removal are free — no partnership or purchase required, and
you do not need to justify the request. A removed company is recorded as unrated, never scored
zero for having asked. Acknowledgement within one business day; removal within two.
info@apievangelist.com
·
Read the full data-sourcing policy → On a security or compliance team? Put security in the subject line and
you will get a person, not a form — we will tell you exactly which public URLs this profile was built from.