Codefresh Execution Contexts API

Execution Contexts

Operations 10

GET /execution-contexts-tags Get tags of execution contexts #
GET /execution-contexts-default Current default execution context #
PATCH /execution-contexts-default/{id} Set default execution context #
GET /execution-contexts/{id}/assignments Get execution context assignments #
POST /execution-contexts Create execution context #
GET /execution-contexts List execution contexts #
GET /execution-contexts/current Get current execution context #
GET /execution-contexts/{id} Get execution context by id #
PATCH /execution-contexts/{id} Update execution context #
DELETE /execution-contexts/{id} Delete execution context #

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.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/codefresh:codefresh-execution-contexts-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

codefresh-execution-contexts-api-openapi.yml Raw ↑
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 Execution Contexts 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: Execution Contexts
  description: Execution Contexts
  x-id: execution-contexts
paths:
  /execution-contexts-tags:
    get:
      x-sdk-interface: executionContexts.getTags
      operationId: execution-contexts-tags
      summary: Get tags of execution contexts
      description: get the tags for the account execution contexts
      parameters: []
      responses:
        '200':
          description: tags array response
          content:
            application/json:
              schema:
                items:
                  type: string
      tags:
      - Execution Contexts
      x-endpoint:
        isEndpoint: false
        auth:
          acl:
            resource: execution-context
          middleware:
          - auth.isAuthenticated
        postMiddleware:
        - global.iseMiddleware
        handler: execution-context.getTags
      x-code-samples:
      - lang: curl
        source: "curl  \\\n    -X GET \\\n    -H \"Authorization: ${API_KEY}\" \\\n    \"https://g.codefresh.io/api/execution-contexts-tags\""
      - lang: node.js
        source: sdk.executionContexts.getTags()
  /execution-contexts-default:
    get:
      x-sdk-interface: executionContexts.getDefault
      operationId: execution-contexts-default-get
      summary: Current default execution context
      description: get the default execution context for the account
      parameters: []
      responses:
        '200':
          description: Execution context response
          content:
            application/json:
              schema:
                type: object
                properties:
                  _id:
                    type: string
                    description: execution context id
                    example: 602d13fd8d78ab7c4d9d81b2
                  name:
                    description: Unique name
                    type: string
                  description:
                    description: Informative description
                    type: string
                  account:
                    description: account id
                    type: string
                  accountDefault:
                    description: is account default
                    type: boolean
                  createdAt:
                    type: string
                    description: Date created
                    example: '2021-02-17T13:02:53.905Z'
                  updatedAt:
                    type: string
                    description: Date updated
                    example: '2021-02-17T13:02:53.905Z'
                  tags:
                    description: Tags used for ABAC assignment of that execution context
                    type: array
                    items:
                      type: string
      tags:
      - Execution Contexts
      x-endpoint:
        isEndpoint: false
        auth:
          acl:
            resource: execution-context
          middleware:
          - auth.isAuthenticated
        postMiddleware:
        - global.iseMiddleware
        handler: execution-context.getAccountDefault
      x-code-samples:
      - lang: curl
        source: "curl  \\\n    -X GET \\\n    -H \"Authorization: ${API_KEY}\" \\\n    \"https://g.codefresh.io/api/execution-contexts-default\""
      - lang: node.js
        source: sdk.executionContexts.getDefault()
  /execution-contexts-default/{id}:
    patch:
      x-sdk-interface: executionContexts.setDefault
      operationId: execution-contexts-default-set
      summary: Set default execution context
      description: Set execution context as the account default (instead of the current default)
      x-action: setAccountDefault
      x-audit:
        id:
          path: _id
          source: res
      parameters:
      - description: ID of an object
        in: path
        name: id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              type: object
              x-allowed:
                body: []
      responses:
        '200':
          description: Execution context response
          content:
            application/json:
              schema:
                type: object
                properties:
                  _id:
                    type: string
                    description: execution context id
                    example: 602d13fd8d78ab7c4d9d81b2
                  name:
                    description: Unique name
                    type: string
                  description:
                    description: Informative description
                    type: string
                  account:
                    description: account id
                    type: string
                  accountDefault:
                    description: is account default
                    type: boolean
                  createdAt:
                    type: string
                    description: Date created
                    example: '2021-02-17T13:02:53.905Z'
                  updatedAt:
                    type: string
                    description: Date updated
                    example: '2021-02-17T13:02:53.905Z'
                  tags:
                    description: Tags used for ABAC assignment of that execution context
                    type: array
                    items:
                      type: string
      tags:
      - Execution Contexts
      x-endpoint:
        isEndpoint: false
        auth:
          acl:
            resource: execution-context
          middleware:
          - auth.isAuthenticated
          - auth.isAccountAdmin
        postMiddleware:
        - global.iseMiddleware
        handler: execution-context.setAccountDefault
      x-code-samples:
      - lang: curl
        source: "curl  \\\n    -X PATCH \\\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/execution-contexts-default/${ID}\""
      - lang: node.js
        source: sdk.executionContexts.setDefault({ id }, { ...REQUEST_BODY_OBJ })
  /execution-contexts/{id}/assignments:
    get:
      x-sdk-interface: executionContexts.listAssignments
      operationId: execution-contexts-assignments
      summary: Get execution context assignments
      parameters:
      - description: ID of an object
        in: path
        name: id
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Execution context response
          content:
            application/json:
              schema:
                type: object
                properties:
                  account:
                    type: string
                    description: account
                  pipelineId:
                    type: string
                    description: pipelineId
                  executionContextId:
                    type: string
                    description: executionContextId
      tags:
      - Execution Contexts
      x-endpoint:
        isEndpoint: false
        auth:
          acl:
            resource: execution-context
          middleware:
          - auth.isAuthenticated
        postMiddleware:
        - global.iseMiddleware
        handler: execution-context.listAssignments
      x-code-samples:
      - lang: curl
        source: "curl  \\\n    -X GET \\\n    -H \"Authorization: ${API_KEY}\" \\\n    \"https://g.codefresh.io/api/execution-contexts/${ID}/assignments\""
      - lang: node.js
        source: sdk.executionContexts.listAssignments({ id })
  /execution-contexts:
    post:
      x-action: executionContextsCreate
      x-audit:
        name:
          path: body.name
          source: req
        id:
          path: id
          source: res
      x-sdk-interface: executionContexts.create
      operationId: execution-contexts-create
      summary: Create execution context
      description: Create execution context assign permissions for the running pipeline
      parameters: []
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                name:
                  description: Unique name
                  type: string
                description:
                  description: Informative description
                  type: string
                tags:
                  description: Tags for attribute access control of that entity assignment
                  type: array
                  items:
                    type: string
      responses:
        '200':
          description: Execution context create response
          content:
            application/json:
              schema:
                type: object
                properties:
                  _id:
                    type: string
                    description: execution context id
                    example: 602d13fd8d78ab7c4d9d81b2
                  name:
                    description: Unique name
                    type: string
                  description:
                    description: Informative description
                    type: string
                  account:
                    description: account id
                    type: string
                  accountDefault:
                    description: is account default
                    type: boolean
                  createdAt:
                    type: string
                    description: Date created
                    example: '2021-02-17T13:02:53.905Z'
                  updatedAt:
                    type: string
                    description: Date updated
                    example: '2021-02-17T13:02:53.905Z'
                  tags:
                    description: Tags used for ABAC assignment of that execution context
                    type: array
                    items:
                      type: string
      tags:
      - Execution Contexts
      x-endpoint:
        isEndpoint: false
        auth:
          acl:
            resource: execution-context
          middleware:
          - auth.isAuthenticated
          - auth.isAccountAdmin
        postMiddleware:
        - global.iseMiddleware
        handler: execution-context.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 \"{\\\"name\\\":\\\"${NAME_STR}\\\",\\\"description\\\":\\\"${DESCRIPTION_STR}\\\",\\\"tags\\\":[\\\"${TAGS_ARR_STR}\\\"]}\" \\\n    \"https://g.codefresh.io/api/execution-contexts\""
      - lang: node.js
        source: "sdk.executionContexts.create({\n    name: `${NAME_STR}`,\n    description: `${DESCRIPTION_STR}`,\n    tags: [\n        `${TAGS_ARR_STR}`\n    ]\n})"
    get:
      x-sdk-interface: executionContexts.list
      operationId: execution-contexts-list
      summary: List execution contexts
      description: List account exection context filtered by optional query parameters
      parameters:
      - in: query
        name: id
        description: Filter by id
        schema:
          type: string
      - in: query
        name: name
        description: Filter by unique name
        schema:
          type: string
      - in: query
        name: tags
        description: Filter by all tags
        schema:
          type: string
      - in: query
        name: accountDefault
        description: Filter by if is the execution context is default for the account
        schema:
          type: string
      responses:
        '200':
          description: Execution context list response
          content:
            application/json:
              schema:
                type: array
                items:
                  type: object
                  properties:
                    _id:
                      type: string
                      description: execution context id
                      example: 602d13fd8d78ab7c4d9d81b2
                    name:
                      description: Unique name
                      type: string
                    description:
                      description: Informative description
                      type: string
                    account:
                      description: account id
                      type: string
                    accountDefault:
                      description: is account default
                      type: boolean
                    createdAt:
                      type: string
                      description: Date created
                      example: '2021-02-17T13:02:53.905Z'
                    updatedAt:
                      type: string
                      description: Date updated
                      example: '2021-02-17T13:02:53.905Z'
                    tags:
                      description: Tags used for ABAC assignment of that execution context
                      type: array
                      items:
                        type: string
      tags:
      - Execution Contexts
      x-endpoint:
        isEndpoint: false
        auth:
          acl:
            resource: execution-context
          middleware:
          - auth.isAuthenticated
        postMiddleware:
        - global.iseMiddleware
        handler: execution-context.get
      x-code-samples:
      - lang: curl
        source: "curl  \\\n    -X GET \\\n    -H \"Authorization: ${API_KEY}\" \\\n    \"https://g.codefresh.io/api/execution-contexts?id=${ID}&name=${NAME}&tags=${TAGS}&accountDefault=${ACCOUNT_DEFAULT}\""
      - lang: node.js
        source: "sdk.executionContexts.list({\n    id,\n    name,\n    tags,\n    accountDefault\n})"
  /execution-contexts/current:
    get:
      x-sdk-interface: executionContexts.getCurrent
      operationId: execution-contexts-get-current
      summary: Get current execution context
      description: Get current session execution context
      responses:
        '200':
          description: Current execution context response
          content:
            application/json:
              schema:
                type: object
                properties:
                  _id:
                    type: string
                    description: execution context id
                    example: 602d13fd8d78ab7c4d9d81b2
                  name:
                    description: Unique name
                    type: string
                  description:
                    description: Informative description
                    type: string
                  account:
                    description: account id
                    type: string
                  accountDefault:
                    description: is account default
                    type: boolean
                  createdAt:
                    type: string
                    description: Date created
                    example: '2021-02-17T13:02:53.905Z'
                  updatedAt:
                    type: string
                    description: Date updated
                    example: '2021-02-17T13:02:53.905Z'
                  tags:
                    description: Tags used for ABAC assignment of that execution context
                    type: array
                    items:
                      type: string
      tags:
      - Execution Contexts
      x-endpoint:
        isEndpoint: false
        auth:
          acl:
            resource: execution-context
          middleware:
          - auth.enableExecutionContextSupport
          - auth.isAuthenticated
        postMiddleware:
        - global.iseMiddleware
        handler: execution-context.current
      x-code-samples:
      - lang: curl
        source: "curl  \\\n    -X GET \\\n    -H \"Authorization: ${API_KEY}\" \\\n    \"https://g.codefresh.io/api/execution-contexts/current\""
      - lang: node.js
        source: sdk.executionContexts.getCurrent()
      parameters: []
  /execution-contexts/{id}:
    get:
      x-sdk-interface: executionContexts.get
      operationId: execution-contexts-get
      summary: Get execution context by id
      description: Get by id 404 if not found
      parameters:
      - description: ID of an object
        in: path
        name: id
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Execution context response
          content:
            application/json:
              schema:
                type: object
                properties:
                  _id:
                    type: string
                    description: execution context id
                    example: 602d13fd8d78ab7c4d9d81b2
                  name:
                    description: Unique name
                    type: string
                  description:
                    description: Informative description
                    type: string
                  account:
                    description: account id
                    type: string
                  accountDefault:
                    description: is account default
                    type: boolean
                  createdAt:
                    type: string
                    description: Date created
                    example: '2021-02-17T13:02:53.905Z'
                  updatedAt:
                    type: string
                    description: Date updated
                    example: '2021-02-17T13:02:53.905Z'
                  tags:
                    description: Tags used for ABAC assignment of that execution context
                    type: array
                    items:
                      type: string
      tags:
      - Execution Contexts
      x-endpoint:
        isEndpoint: false
        auth:
          acl:
            resource: execution-context
          middleware:
          - auth.isAuthenticated
        postMiddleware:
        - global.iseMiddleware
        handler: execution-context.getByIdOrName
      x-code-samples:
      - lang: curl
        source: "curl  \\\n    -X GET \\\n    -H \"Authorization: ${API_KEY}\" \\\n    \"https://g.codefresh.io/api/execution-contexts/${ID}\""
      - lang: node.js
        source: sdk.executionContexts.get({ id })
    patch:
      x-action: executionContextsUpdate
      x-entityId:
        pathId: params.id
        pathName: body.name
      x-sdk-interface: executionContexts.patch
      operationId: execution-contexts-patch
      summary: Update execution context
      description: Update execution context fields
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                name:
                  description: Unique name
                  type: string
                description:
                  description: Informative description
                  type: string
                tags:
                  description: Tags used for ABAC assignment of that execution context
                  type: array
                  items:
                    type: string
      parameters:
      - description: ID of an object
        in: path
        name: id
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Execution context response
          content:
            application/json:
              schema:
                type: object
                properties:
                  _id:
                    type: string
                    description: execution context id
                    example: 602d13fd8d78ab7c4d9d81b2
                  name:
                    description: Unique name
                    type: string
                  description:
                    description: Informative description
                    type: string
                  account:
                    description: account id
                    type: string
                  accountDefault:
                    description: is account default
                    type: boolean
                  createdAt:
                    type: string
                    description: Date created
                    example: '2021-02-17T13:02:53.905Z'
                  updatedAt:
                    type: string
                    description: Date updated
                    example: '2021-02-17T13:02:53.905Z'
                  tags:
                    description: Tags used for ABAC assignment of that execution context
                    type: array
                    items:
                      type: string
      tags:
      - Execution Contexts
      x-endpoint:
        isEndpoint: false
        auth:
          acl:
            resource: execution-context
          middleware:
          - auth.isAuthenticated
          - auth.isAccountAdmin
        postMiddleware:
        - global.iseMiddleware
        handler: execution-context.update
      x-code-samples:
      - lang: curl
        source: "curl  \\\n    -X PATCH \\\n    -H \"Authorization: ${API_KEY}\" \\\n    -H 'Content-Type: application/json; charset=utf-8' \\\n    -d \"{\\\"name\\\":\\\"${NAME_STR}\\\",\\\"description\\\":\\\"${DESCRIPTION_STR}\\\",\\\"tags\\\":[\\\"${TAGS_ARR_STR}\\\"]}\" \\\n    \"https://g.codefresh.io/api/execution-contexts/${ID}\""
      - lang: node.js
        source: "sdk.executionContexts.patch({ id }, {\n    name: `${NAME_STR}`,\n    description: `${DESCRIPTION_STR}`,\n    tags: [\n        `${TAGS_ARR_STR}`\n    ]\n})"
    delete:
      x-action: executionContextsDelete
      x-entityId:
        pathId: params.id
      x-sdk-interface: executionContexts.delete
      operationId: execution-contexts-delete
      summary: Delete execution context
      description: Delete execution context, if its not used/default
      parameters:
      - description: ID of an object
        in: path
        name: id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                type: object
          description: json
      tags:
      - Execution Contexts
      x-endpoint:
        isEndpoint: false
        auth:
          acl:
            resource: execution-context
          middleware:
          - auth.isAuthenticated
          - auth.isAccountAdmin
        postMiddleware:
        - global.iseMiddleware
        handler: execution-context.delete
      x-code-samples:
      - lang: curl
        source: "curl  \\\n    -X DELETE \\\n    -H \"Authorization: ${API_KEY}\" \\\n    \"https://g.codefresh.io/api/execution-contexts/${ID}\""
      - lang: node.js
        source: sdk.executionContexts.delete({ id })
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 (149 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/codefresh/refs/heads/main/openapi/codefresh-execution-contexts-api-openapi.yml