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-repos-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 Repos 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: Repos
description: repos
x-id: repos
paths:
/repos/webhooks/{repoOwner}/{repoName}/{provider}/{context}:
get:
summary: Get trigger
x-sdk-interface: repos.getTrigger
tags:
- Repos
operationId: get-git-triggers
parameters:
- description: name of owner of repository
in: path
name: repoOwner
required: true
schema:
type: string
- description: repository name
in: path
name: repoName
required: true
schema:
type: string
- in: path
name: provider
description: Repo provider
schema:
type: string
required: true
- in: path
name: context
description: Repo context
schema:
type: string
required: true
responses:
'200':
content:
application/json:
schema:
type: object
description: json
x-endpoint:
isEndpoint: false
auth:
middleware:
- auth.isAuthenticated
acl:
resource: repos
handler: repos.getTrigger
x-code-samples:
- lang: curl
source: "curl \\\n -X GET \\\n -H \"Authorization: ${API_KEY}\" \\\n \"https://g.codefresh.io/api/repos/webhooks/${REPO_OWNER}/${REPO_NAME}/${PROVIDER}/${CONTEXT}\""
- lang: node.js
source: "sdk.repos.getTrigger({\n repoOwner,\n repoName,\n provider,\n context\n})"
/repos:
get:
responses:
'200':
content:
application/json:
schema:
type: array
items:
type: object
properties:
_id:
type: string
id:
type: string
provider:
type: string
features:
type: object
properties:
create_branch:
type: boolean
merge_branch:
type: boolean
remove_branch:
type: boolean
pull_request:
type: boolean
name:
type: string
private:
type: boolean
pushed_at:
type: string
open_issues:
type: integer
clone_url:
type: string
ssh_url:
type: string
owner:
type: object
properties:
login:
type: string
avatar_url:
type: string
org:
type: string
default_branch:
type: string
permissions:
type: object
properties:
admin:
type: string
context:
type: string
description: list of repos by git integration
tags:
- Repos
operationId: repos-git-list
parameters:
- in: query
name: context
schema:
type: string
description: Context
summary: List git repos (github, bitbucket, etc)
x-sdk-interface: repos.git.list
x-code-samples:
- lang: curl
source: "curl \\\n -X GET \\\n -H \"Authorization: ${API_KEY}\" \\\n \"https://g.codefresh.io/api/repos?context=${CONTEXT}\""
- lang: node.js
source: sdk.repos.git.list({ context })
/repos/refresh:
post:
responses:
'201':
content:
application/json:
schema:
type: object
description: json
tags:
- Repos
operationId: refresh-repos-git-list
parameters:
- in: query
name: context
schema:
type: string
description: Context
requestBody:
content:
application/json:
schema:
properties:
repos:
items:
type: string
type: array
x-sdk-interface: repos.git.refresh
summary: Refresh the list of cached git repos for behind firewall git contexts
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/repos/refresh?context=${CONTEXT}\""
- lang: node.js
source: sdk.repos.git.refresh({ context }, { ...REQUEST_BODY_OBJ })
get:
responses:
'200':
content:
application/json:
schema:
type: object
description: json
tags:
- Repos
operationId: repos-git-get-refresh
parameters:
- in: query
name: context
schema:
type: string
description: Context
x-sdk-interface: repos.git.lastRefresh
summary: Get info on the last refresh of the list of cached git repos for behind…
x-code-samples:
- lang: curl
source: "curl \\\n -X GET \\\n -H \"Authorization: ${API_KEY}\" \\\n \"https://g.codefresh.io/api/repos/refresh?context=${CONTEXT}\""
- lang: node.js
source: sdk.repos.git.lastRefresh({ context })
/repos/existing:
get:
responses:
'200':
content:
application/json:
schema:
type: object
description: json
tags:
- Repos
operationId: repos-list
parameters:
- in: query
name: context
schema:
type: string
description: Context
- in: query
name: thin
schema:
type: string
allowEmptyValue: true
description: Thin
summary: List
x-sdk-interface: repos.list
x-code-samples:
- lang: curl
source: "curl \\\n -X GET \\\n -H \"Authorization: ${API_KEY}\" \\\n \"https://g.codefresh.io/api/repos/existing?context=${CONTEXT}&thin=${THIN}\""
- lang: node.js
source: sdk.repos.list({ context, thin })
/repos/settings/{repoOwner}/{repoName}:
get:
parameters:
- description: name of owner of repository
in: path
name: repoOwner
required: true
schema:
type: string
- description: repository name
in: path
name: repoName
required: true
schema:
type: string
responses:
'200':
content:
application/json:
schema:
type: object
description: json
tags:
- Repos
operationId: repos-get-settings
summary: Get settings
x-sdk-interface: repos.getSettings
x-code-samples:
- lang: curl
source: "curl \\\n -X GET \\\n -H \"Authorization: ${API_KEY}\" \\\n \"https://g.codefresh.io/api/repos/settings/${REPO_OWNER}/${REPO_NAME}\""
- lang: node.js
source: sdk.repos.getSettings({ repoOwner, repoName })
/repos/{owner}/{repo}:
get:
responses:
'200':
content:
application/json:
schema:
type: object
description: json
tags:
- Repos
operationId: repos-git-get-repo
parameters:
- in: path
name: owner
schema:
type: string
required: true
description: Owner
- in: path
name: repo
schema:
type: string
required: true
description: Repo
- in: query
name: context
schema:
type: string
description: Context
summary: Get git repo
x-sdk-interface: repos.git.get
x-code-samples:
- lang: curl
source: "curl \\\n -X GET \\\n -H \"Authorization: ${API_KEY}\" \\\n \"https://g.codefresh.io/api/repos/${OWNER}/${REPO}?context=${CONTEXT}\""
- lang: node.js
source: sdk.repos.git.get({ owner, repo, context })
/services:
post:
parameters:
- description: The git context name
in: query
name: context
schema:
type: string
responses:
'200':
content:
application/json:
schema:
type: object
description: json
deprecated: true
tags:
- Repos
operationId: repos-create
requestBody:
content:
application/json:
schema:
properties:
serviceDetails:
properties:
name:
type: string
scm:
properties:
name:
type: string
owner:
properties:
name:
type: string
type: object
type: object
type: object
type: object
summary: Create
x-sdk-interface: repos.create
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 \"{\\\"serviceDetails\\\":{\\\"name\\\":\\\"${NAME_STR}\\\",\\\"scm\\\":{\\\"name\\\":\\\"${NAME_STR}\\\",\\\"owner\\\":{\\\"name\\\":\\\"${NAME_STR}\\\"}}}}\" \\\n \"https://g.codefresh.io/api/services?context=${CONTEXT}\""
- lang: node.js
source: "sdk.repos.create({ context }, {\n serviceDetails: {\n name: `${NAME_STR}`,\n scm: {\n name: `${NAME_STR}`,\n owner: {\n name: `${NAME_STR}`\n }\n }\n }\n})"
/services/{name}:
get:
responses:
'200':
content:
application/json:
schema:
type: object
description: json
tags:
- Repos
operationId: repos-get
parameters:
- in: path
name: name
schema:
type: string
required: true
description: Name
- in: query
name: context
schema:
type: string
description: Context
summary: Get
x-sdk-interface: repos.get
x-code-samples:
- lang: curl
source: "curl \\\n -X GET \\\n -H \"Authorization: ${API_KEY}\" \\\n \"https://g.codefresh.io/api/services/${NAME}?context=${CONTEXT}\""
- lang: node.js
source: sdk.repos.get({ name, context })
delete:
x-action: serviceDeleted
x-entityId:
pathName: params.name
responses:
'200':
content:
application/json:
schema:
type: object
description: json
tags:
- Repos
operationId: repos-delete
parameters:
- in: path
name: name
schema:
type: string
required: true
description: Name
- in: query
name: context
schema:
type: string
description: Context
summary: Delete
x-sdk-interface: repos.delete
x-code-samples:
- lang: curl
source: "curl \\\n -X DELETE \\\n -H \"Authorization: ${API_KEY}\" \\\n \"https://g.codefresh.io/api/services/${NAME}?context=${CONTEXT}\""
- lang: node.js
source: sdk.repos.delete({ name, context })
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 (139 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/codefresh/refs/heads/main/openapi/codefresh-repos-api-openapi.yml