Work with this as data
Every API here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for apis
7 MCP tools reach this
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This API
curl "https://apis.io/api/v1/apis/codefresh:codefresh-step-types-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
OpenAPI Specification
openapi: 3.2.0
info:
contact:
name: Codefresh
url: https://www.codefresh.io
description: Codefresh API openAPI 3.0 specification
termsOfService: https://codefresh.io/docs/docs/terms-and-privacy-policy/terms-of-service/
title: Codefresh Step Types API
version: 0.0.2
x-logo:
url: https://g.codefresh.io/modules/cf.resources/codefresh-api-docs-images/codefresh-logo-api.svg
backgroundColor: '#FFFFFF'
altText: Codefresh
servers:
- url: https://g.codefresh.io/api
security:
- API-key: []
tags:
- name: Step-types
description: step-types
x-id: step-types
paths:
/github-action:
get:
parameters:
- description: The name of github action
in: query
name: text
required: true
schema:
type: string
responses:
'200':
content:
application/json:
schema:
type: object
description: json
tags:
- Step-types
operationId: github-action
summary: List of github actions
x-sdk-interface: Should return list of contexts by search query
x-endpoint:
isEndpoint: false
auth:
middleware:
- auth.isAuthenticated
postMiddleware:
- global.iseMiddleware
handler: github-action.getActions
x-code-samples:
- lang: curl
source: "curl \\\n -X GET \\\n -H \"Authorization: ${API_KEY}\" \\\n \"https://g.codefresh.io/api/github-action?text=${TEXT}\""
- lang: node.js
source: sdk.Should return list of contexts by search query({ text })
/github-action/context/{id}:
get:
parameters:
- description: The id of github action
in: path
name: id
required: true
schema:
type: string
responses:
'200':
content:
application/json:
schema:
type: object
description: json
tags:
- Step-types
operationId: github-action-context
summary: Github action context
x-sdk-interface: Should return context by id
x-endpoint:
isEndpoint: false
auth:
middleware:
- auth.isAuthenticated
postMiddleware:
- global.iseMiddleware
handler: github-action.getActionContext
x-code-samples:
- lang: curl
source: "curl \\\n -X GET \\\n -H \"Authorization: ${API_KEY}\" \\\n \"https://g.codefresh.io/api/github-action/context/${ID}\""
- lang: node.js
source: sdk.Should return context by id({ id })
/step-types:
post:
x-action: createStep
x-audit:
name:
path: body.metadata.name
source: req
id:
path: _id
source: res
responses:
'200':
content:
application/json:
schema:
type: object
description: json
tags:
- Step-types
operationId: steps-create
requestBody:
content:
application/json:
schema:
type: object
summary: Create
parameters: []
x-sdk-interface: steps.create
x-endpoint:
isEndpoint: false
auth:
middleware:
- auth.isAuthenticated
acl:
resource: step-type
postMiddleware:
- global.iseMiddleware
handler: steps.createStep
x-code-samples:
- lang: curl
source: "curl \\\n -X POST \\\n -H \"Authorization: ${API_KEY}\" \\\n -H 'Content-Type: application/json; charset=utf-8' \\\n -d \"${REQUEST_BODY_OBJ}\" \\\n \"https://g.codefresh.io/api/step-types\""
- lang: node.js
source: sdk.steps.create({ ...REQUEST_BODY_OBJ })
get:
responses:
'200':
content:
application/json:
schema:
type: object
description: json
tags:
- Step-types
parameters:
- name: id
in: query
schema:
type: string
description: Id or name
- in: query
name: official
schema:
type: string
description: Filter only official step-types
- in: query
name: freeText
schema:
type: string
description: Filter by name, description or tags
- in: query
name: category
schema:
type: string
description: Filter by a specific category
- in: query
name: tag
schema:
type: string
description: Filter by a specific tag
- in: query
name: public
schema:
type: string
description: Filter only public step-types
- in: query
name: private
schema:
type: string
description: Filter only private step-types
- in: query
name: stage
schema:
type: string
enum:
- graduated
- incubating
description: Filter by stage
- name: offset
in: query
schema:
type: integer
description: Offset
- in: query
name: limit
schema:
type: string
description: Limit
operationId: steps-list
summary: List
x-sdk-interface: steps.list
x-endpoint:
isEndpoint: false
auth:
middleware:
- auth.isAuthenticatedOrAnonymous
acl:
resource: step-type
postMiddleware:
- global.iseMiddleware
handler: steps.getSteps
x-code-samples:
- lang: curl
source: "curl \\\n -X GET \\\n -H \"Authorization: ${API_KEY}\" \\\n \"https://g.codefresh.io/api/step-types?id=${ID}&official=${OFFICIAL}&freeText=${FREE_TEXT}&category=${CATEGORY}&tag=${TAG}&public=${PUBLIC}&private=${PRIVATE}&stage=${STAGE}&offset=${OFFSET}&limit=${LIMIT}\""
- lang: node.js
source: "sdk.steps.list({\n id,\n official,\n freeText,\n category,\n tag,\n public,\n private,\n stage,\n offset,\n limit\n})"
/step-types/{name}:
get:
parameters:
- description: Name of step
in: path
name: name
required: true
schema:
type: string
responses:
'200':
content:
application/json:
schema:
type: object
description: json
tags:
- Step-types
operationId: steps-get
summary: Get
x-sdk-interface: steps.get
x-endpoint:
isEndpoint: false
auth:
middleware:
- auth.isAuthenticatedOrAnonymous
acl:
resource: step-type
postMiddleware:
- global.iseMiddleware
handler: steps.getStepByNameOrId
x-code-samples:
- lang: curl
source: "curl \\\n -X GET \\\n -H \"Authorization: ${API_KEY}\" \\\n \"https://g.codefresh.io/api/step-types/${NAME}\""
- lang: node.js
source: sdk.steps.get({ name })
put:
x-entityId:
pathId: params.name
pathName: body.metadata.name
x-action: updateStep
parameters:
- description: Name of step
in: path
name: name
required: true
schema:
type: string
requestBody:
content:
application/json:
schema:
type: object
properties:
kind:
type: string
metadata:
type: object
properties:
name:
type: string
spec:
type: object
properties: {}
responses:
'200':
description: ok
content:
application/json:
schema:
type: object
properties:
kind:
type: string
metadata:
type: object
properties:
name:
type: string
spec:
type: object
properties: {}
tags:
- Step-types
operationId: steps-replace
summary: Replace
x-sdk-interface: steps.replace
x-endpoint:
isEndpoint: false
auth:
middleware:
- auth.isAuthenticated
acl:
resource: step-type
postMiddleware:
- global.iseMiddleware
handler: steps.replaceStepByName
x-code-samples:
- lang: curl
source: "curl \\\n -X PUT \\\n -H \"Authorization: ${API_KEY}\" \\\n -H 'Content-Type: application/json; charset=utf-8' \\\n -d \"{\\\"kind\\\":\\\"${KIND_STR}\\\",\\\"metadata\\\":{\\\"name\\\":\\\"${NAME_STR}\\\"},\\\"spec\\\":${SPEC_OBJ}}\" \\\n \"https://g.codefresh.io/api/step-types/${NAME}\""
- lang: node.js
source: "sdk.steps.replace({ name }, {\n kind: `${KIND_STR}`,\n metadata: {\n name: `${NAME_STR}`\n },\n spec: { ...SPEC_OBJ }\n})"
delete:
x-entityId:
pathId: params.name
x-action: deleteStep
parameters:
- description: Name of step
in: path
name: name
required: true
schema:
type: string
responses:
'200':
content:
application/json:
schema:
type: object
description: json
tags:
- Step-types
operationId: steps-delete
summary: Delete
x-sdk-interface: steps.delete
x-endpoint:
isEndpoint: false
auth:
middleware:
- auth.isAuthenticated
acl:
resource: step-type
postMiddleware:
- global.iseMiddleware
handler: steps.deleteStepByName
x-code-samples:
- lang: curl
source: "curl \\\n -X DELETE \\\n -H \"Authorization: ${API_KEY}\" \\\n \"https://g.codefresh.io/api/step-types/${NAME}\""
- lang: node.js
source: sdk.steps.delete({ name })
/step-types/{name}/versions:
get:
parameters:
- description: Name of step
in: path
name: name
required: true
schema:
type: string
responses:
'200':
content:
application/json:
schema:
type: object
description: json
tags:
- Step-types
operationId: steps-get-version
summary: Get Versions
x-sdk-interface: steps.getStepVersions
x-endpoint:
isEndpoint: false
auth:
middleware:
- auth.isAuthenticatedOrAnonymous
acl:
resource: step-type
postMiddleware:
- global.iseMiddleware
handler: steps.getStepVersions
x-code-samples:
- lang: curl
source: "curl \\\n -X GET \\\n -H \"Authorization: ${API_KEY}\" \\\n \"https://g.codefresh.io/api/step-types/${NAME}/versions\""
- lang: node.js
source: sdk.steps.getStepVersions({ name })
components:
securitySchemes:
API-key:
in: header
name: Authorization
description: 'An api key got from: User Settings -> API keys -> Generate'
type: apiKey
x-service-name: api-public
x-base-path: /api
x-internal-services:
- pipeline-manager
- api
x-endpoint-conditions:
- weight: 0
condition: global.has-general-service-role
handlerRegex: (.*)
- weight: 1
condition: global.has-kubernetes-endpoints-service-role
handlerRegex: kubernetes\.\w+
- weight: 2
condition: global.has-auth-service-role
handlerRegex: api-key\.\w+
x-tagGroups:
- name: Pipelines / Builds
tags:
- Annotations
- Builds
- Execution Contexts
- Images
- Pipelines
- Progress
- Projects
- Step-types
- Triggers
- Triggers Events
- Triggers Types
- name: Kubernetes / Helm
tags:
- Environments V2
- Helm Boards
- Helm Charts
- Helm Releases
- Helm Sections
- Kubernetes
- name: Swarm
tags:
- Compositions
- Environments
- name: Integrations / Contexts
tags:
- Clusters
- Contexts
- Helm Cluster Configs
- Helm Repos
- Registries
- Repos
- name: Account Management
tags:
- Abac
- Accounts
- Agents
- Audit
- Runtime Environments
- Teams
- Tokens
- Views
- name: User Properties
tags:
- favorites
- name: On-Premise
tags:
- Features
- Runtime Environments (Account)
- Runtime Environments (Plan)
- Runtime Environments (System)
- Runtime Environments.
- name: Platform Analytics
tags:
# --- truncated at 32 KB (138 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/codefresh/refs/heads/main/openapi/codefresh-step-types-api-openapi.yml