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-abac-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 Abac 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: Abac
description: abac
x-id: abac
paths:
/abac:
post:
x-action: createGrantRule
responses:
'200':
content:
application/json:
schema:
type: object
description: json
tags:
- Abac
operationId: abac-rules-create
requestBody:
content:
application/json:
schema:
properties:
tags:
items:
type: string
type: array
action:
type: string
resource:
type: string
relatedResource:
type: string
team:
type: string
type: object
required: true
summary: Create rule
parameters: []
x-sdk-interface: abac.rules.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 \"{\\\"tags\\\":[\\\"${TAGS_ARR_STR}\\\"],\\\"action\\\":\\\"${ACTION_STR}\\\",\\\"resource\\\":\\\"${RESOURCE_STR}\\\",\\\"relatedResource\\\":\\\"${RELATED_RESOURCE_STR}\\\",\\\"team\\\":\\\"${TEAM_STR}\\\"}\" \\\n \"https://g.codefresh.io/api/abac\""
- lang: node.js
source: "sdk.abac.rules.create({\n tags: [\n `${TAGS_ARR_STR}`\n ],\n action: `${ACTION_STR}`,\n resource: `${RESOURCE_STR}`,\n relatedResource: `${RELATED_RESOURCE_STR}`,\n team: `${TEAM_STR}`\n})"
get:
responses:
'200':
content:
application/json:
schema:
type: object
description: json
tags:
- Abac
operationId: abac-rules-list
summary: List rules
parameters: []
x-sdk-interface: abac.rules.list
x-code-samples:
- lang: curl
source: "curl \\\n -X GET \\\n -H \"Authorization: ${API_KEY}\" \\\n \"https://g.codefresh.io/api/abac\""
- lang: node.js
source: sdk.abac.rules.list()
/abac/batch:
post:
x-action: updateRules
responses:
'200':
content:
application/json:
schema:
type: object
description: json
tags:
- Abac
operationId: abac-rules-create-or-delete
requestBody:
content:
application/json:
schema:
properties:
create:
items:
properties:
teams:
type: array
items:
type: string
actions:
type: array
items:
type: string
resource:
type: string
relatedResource:
type: string
tags:
type: array
items:
type: string
type: array
delete:
items:
type: string
type: array
type: object
required: true
summary: Create or delete rules
parameters: []
x-sdk-interface: abac.rules.createOrDelete
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 \"{\\\"create\\\":[${CREATE_ARR_OBJ}],\\\"delete\\\":[\\\"${DELETE_ARR_STR}\\\"]}\" \\\n \"https://g.codefresh.io/api/abac/batch\""
- lang: node.js
source: "sdk.abac.rules.createOrDelete({\n create: [\n { ...CREATE_ARR_OBJ }\n ],\n delete: [\n `${DELETE_ARR_STR}`\n ]\n})"
/abac/resource/{resource}:
get:
parameters:
- description: The id of the resource
in: path
name: resource
required: true
schema:
type: string
responses:
'200':
content:
application/json:
schema:
type: object
description: json
tags:
- Abac
operationId: abac-list-by-resource
summary: Get rules by resource
x-sdk-interface: abac.rules.listByResource
x-code-samples:
- lang: curl
source: "curl \\\n -X GET \\\n -H \"Authorization: ${API_KEY}\" \\\n \"https://g.codefresh.io/api/abac/resource/${RESOURCE}\""
- lang: node.js
source: sdk.abac.rules.listByResource({ resource })
/abac/tags/rule/{rule}:
post:
x-action: updateRule
x-entityId:
pathId: params.rule
pathName: body.tags[0]
parameters:
- description: The id of the rule
in: path
name: rule
required: true
schema:
type: string
responses:
'200':
content:
application/json:
schema:
type: object
description: json
tags:
- Abac
operationId: abac-rules-tags-update
requestBody:
content:
application/json:
schema:
properties:
tags:
items:
type: string
type: array
type: object
required: true
summary: Update rule tags
x-sdk-interface: abac.rules.tags.update
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 \"{\\\"tags\\\":[\\\"${TAGS_ARR_STR}\\\"]}\" \\\n \"https://g.codefresh.io/api/abac/tags/rule/${RULE}\""
- lang: node.js
source: "sdk.abac.rules.tags.update({ rule }, {\n tags: [\n `${TAGS_ARR_STR}`\n ]\n})"
/abac/tags/rules:
post:
x-action: updateTagsForRules
responses:
'200':
content:
application/json:
schema:
type: object
description: json
tags:
- Abac
operationId: abac-rules-tags-create
requestBody:
content:
application/json:
schema:
properties:
tags:
items:
type: string
type: array
rules:
items:
type: string
type: array
type: object
required: true
summary: Create rules tags
parameters: []
x-sdk-interface: abac.rules.tags.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 \"{\\\"tags\\\":[\\\"${TAGS_ARR_STR}\\\"],\\\"rules\\\":[\\\"${RULES_ARR_STR}\\\"]}\" \\\n \"https://g.codefresh.io/api/abac/tags/rules\""
- lang: node.js
source: "sdk.abac.rules.tags.create({\n tags: [\n `${TAGS_ARR_STR}`\n ],\n rules: [\n `${RULES_ARR_STR}`\n ]\n})"
/abac/team/{teamId}:
get:
parameters:
- description: The id of the team
in: path
name: teamId
required: true
schema:
type: string
responses:
'200':
content:
application/json:
schema:
type: object
description: json
tags:
- Abac
operationId: abac-list-by-team
summary: Get rules by team id
x-sdk-interface: abac.rules.listByTeam
x-code-samples:
- lang: curl
source: "curl \\\n -X GET \\\n -H \"Authorization: ${API_KEY}\" \\\n \"https://g.codefresh.io/api/abac/team/${TEAM_ID}\""
- lang: node.js
source: sdk.abac.rules.listByTeam({ teamId })
/abac/teamRules:
post:
x-action: createRulesForTeam
x-entityId:
pathName: body.teams[0]
responses:
'200':
content:
application/json:
schema:
type: object
description: json
tags:
- Abac
operationId: abac-rules-create-in-batch
requestBody:
content:
application/json:
schema:
properties:
teams:
type: array
items:
type: string
actions:
type: array
items:
type: string
resource:
type: string
relatedResource:
type: string
tags:
type: array
items:
type: string
required: true
summary: Create rules in batch
parameters: []
x-sdk-interface: abac.rules.createInBatch
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/abac/teamRules\""
- lang: node.js
source: sdk.abac.rules.createInBatch({ ...REQUEST_BODY_OBJ })
/abac/{rule}:
get:
parameters:
- description: The id of the rule
in: path
name: rule
required: true
schema:
type: string
responses:
'200':
content:
application/json:
schema:
type: object
description: json
tags:
- Abac
operationId: abac-rules-get
summary: Get rule
x-sdk-interface: abac.rules.get
x-code-samples:
- lang: curl
source: "curl \\\n -X GET \\\n -H \"Authorization: ${API_KEY}\" \\\n \"https://g.codefresh.io/api/abac/${RULE}\""
- lang: node.js
source: sdk.abac.rules.get({ rule })
delete:
x-action: deleteRuleForTeam
x-entityId:
pathName: params.rule
parameters:
- description: The id of the rule
in: path
name: rule
required: true
schema:
type: string
responses:
'200':
content:
application/json:
schema:
type: object
description: json
tags:
- Abac
operationId: abac-rules-delete
summary: Delete rule
x-sdk-interface: abac.rules.delete
x-code-samples:
- lang: curl
source: "curl \\\n -X DELETE \\\n -H \"Authorization: ${API_KEY}\" \\\n \"https://g.codefresh.io/api/abac/${RULE}\""
- lang: node.js
source: sdk.abac.rules.delete({ rule })
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-abac-api-openapi.yml