Cloud Foundry Service Bindings API

The ServiceBindings API from Cloud Foundry — 2 operation(s) for servicebindings.

Operations 4

GET /v2/service_instances/{instance_id}/service_bindings/{binding_id}/last_operation get the last requested operation state for service binding #
PUT /v2/service_instances/{instance_id}/service_bindings/{binding_id} generate a service binding #
DELETE /v2/service_instances/{instance_id}/service_bindings/{binding_id} deprovision a service binding #
GET /v2/service_instances/{instance_id}/service_bindings/{binding_id} get a service binding #

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/cloud-foundry-servicebindings-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

cloud-foundry-servicebindings-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Open Service Broker Service Bindings API
  description: The Open Service Broker API defines an HTTP(S) interface between Platforms and Service Brokers.
  license:
    name: Apache 2.0
    url: http://www.apache.org/licenses/LICENSE-2.0.html
  contact:
    name: Open Service Broker API
    url: https://www.openservicebrokerapi.org/
    email: open-service-broker-api@googlegroups.com
  version: master - might contain changes that are not yet released
servers:
- url: http://example.com
  description: Broker Endpoint
- url: http://localhost:3000
  description: OSB Checker - MockOSB
security:
- basicAuth: []
tags:
- name: ServiceBindings
paths:
  /v2/service_instances/{instance_id}/service_bindings/{binding_id}/last_operation:
    get:
      summary: get the last requested operation state for service binding
      tags:
      - ServiceBindings
      operationId: serviceBinding.lastOperation.get
      parameters:
      - $ref: '#/components/parameters/APIVersion'
      - name: instance_id
        in: path
        description: instance id of instance to find last operation applied to it
        required: true
        schema:
          type: string
      - name: binding_id
        in: path
        description: binding id of service binding to find last operation applied to it
        required: true
        schema:
          type: string
      - name: service_id
        in: query
        description: id of the service associated with the instance
        schema:
          type: string
      - name: plan_id
        in: query
        description: id of the plan associated with the instance
        schema:
          type: string
      - name: operation
        in: query
        description: a provided identifier for the operation
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/LastOperationResource'
          headers:
            Retry-After:
              description: Indicates when to retry the request
              required: false
              schema:
                type: string
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '410':
          description: Gone
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
  /v2/service_instances/{instance_id}/service_bindings/{binding_id}:
    put:
      summary: generate a service binding
      tags:
      - ServiceBindings
      operationId: serviceBinding.binding
      parameters:
      - $ref: '#/components/parameters/APIVersion'
      - $ref: '#/components/parameters/OriginatingIdentity'
      - name: instance_id
        in: path
        description: instance id of instance to create a binding on
        required: true
        schema:
          type: string
      - name: binding_id
        in: path
        description: binding id of binding to create
        required: true
        schema:
          type: string
      - name: accepts_incomplete
        in: query
        description: asynchronous operations supported
        schema:
          type: boolean
      requestBody:
        description: parameters for the requested service binding
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ServiceBindingRequest'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceBindingResponse'
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceBindingResponse'
        '202':
          description: Accepted
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AsyncOperation'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '409':
          description: Conflict
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '422':
          description: Unprocessable Entity
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
    delete:
      summary: deprovision a service binding
      tags:
      - ServiceBindings
      operationId: serviceBinding.unbinding
      parameters:
      - $ref: '#/components/parameters/APIVersion'
      - $ref: '#/components/parameters/OriginatingIdentity'
      - name: instance_id
        in: path
        description: id of the instance associated with the binding being deleted
        required: true
        schema:
          type: string
      - name: binding_id
        in: path
        description: id of the binding being deleted
        required: true
        schema:
          type: string
      - name: service_id
        in: query
        description: id of the service associated with the instance for which a binding is being deleted
        required: true
        schema:
          type: string
      - name: plan_id
        in: query
        description: id of the plan associated with the instance for which a binding is being deleted
        required: true
        schema:
          type: string
      - name: accepts_incomplete
        in: query
        description: asynchronous operations supported
        schema:
          type: boolean
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Object'
        '202':
          description: Accepted
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/AsyncOperation'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '410':
          description: Gone
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '422':
          description: Unprocessable Entity
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
    get:
      summary: get a service binding
      tags:
      - ServiceBindings
      operationId: serviceBinding.get
      parameters:
      - $ref: '#/components/parameters/APIVersion'
      - $ref: '#/components/parameters/OriginatingIdentity'
      - name: instance_id
        in: path
        description: instance id of instance associated with the binding
        required: true
        schema:
          type: string
      - name: binding_id
        in: path
        description: binding id of binding to fetch
        required: true
        schema:
          type: string
      - name: service_id
        in: query
        description: id of the service associated with the instance
        schema:
          type: string
      - name: plan_id
        in: query
        description: id of the plan associated with the instance
        schema:
          type: string
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceBindingResource'
        '404':
          description: Not Found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
components:
  schemas:
    ServiceBindingResource:
      type: object
      properties:
        metadata:
          $ref: '#/components/schemas/ServiceBindingMetadata'
        credentials:
          $ref: '#/components/schemas/Object'
        syslog_drain_url:
          type: string
        route_service_url:
          type: string
        volume_mounts:
          type: array
          items:
            $ref: '#/components/schemas/ServiceBindingVolumeMount'
        endpoints:
          type: array
          items:
            $ref: '#/components/schemas/ServiceBindingEndpoint'
        parameters:
          $ref: '#/components/schemas/Object'
    ServiceBindingVolumeMountDevice:
      type: object
      required:
      - volume_id
      properties:
        volume_id:
          type: string
        mount_config:
          $ref: '#/components/schemas/Object'
        device_config:
          $ref: '#/components/schemas/Object'
    ServiceBindingRequest:
      type: object
      required:
      - service_id
      - plan_id
      properties:
        context:
          $ref: '#/components/schemas/Context'
        service_id:
          type: string
        plan_id:
          type: string
        app_guid:
          type: string
          deprecated: true
        bind_resource:
          $ref: '#/components/schemas/ServiceBindingResouceObject'
        parameters:
          $ref: '#/components/schemas/Object'
        predecessor_binding_id:
          type: string
    Object:
      type: object
    ServiceBindingEndpoint:
      type: object
      required:
      - host
      - ports
      properties:
        host:
          type: string
        ports:
          type: array
          items:
            type: string
        protocol:
          type: string
          enum:
          - tcp
          - udp
          - all
          default: tcp
    Error:
      description: See [Service Broker Errors](https://github.com/openservicebrokerapi/servicebroker/blob/master/spec.md#service-broker-errors) for more details.
      type: object
      properties:
        error:
          type: string
        description:
          type: string
        instance_usable:
          type: boolean
        update_repeatable:
          type: boolean
    LastOperationResource:
      type: object
      required:
      - state
      properties:
        state:
          type: string
          enum:
          - in progress
          - succeeded
          - failed
        description:
          type: string
        instance_usable:
          type: boolean
        update_repeatable:
          type: boolean
    ServiceBindingResponse:
      type: object
      properties:
        metadata:
          $ref: '#/components/schemas/ServiceBindingMetadata'
        credentials:
          $ref: '#/components/schemas/Object'
        syslog_drain_url:
          type: string
        route_service_url:
          type: string
        volume_mounts:
          type: array
          items:
            $ref: '#/components/schemas/ServiceBindingVolumeMount'
        endpoints:
          type: array
          items:
            $ref: '#/components/schemas/ServiceBindingEndpoint'
    AsyncOperation:
      type: object
      properties:
        operation:
          type: string
    ServiceBindingMetadata:
      type: object
      properties:
        expires_at:
          type: string
        renew_before:
          type: string
    ServiceBindingResouceObject:
      type: object
      properties:
        app_guid:
          type: string
        route:
          type: string
    ServiceBindingVolumeMount:
      type: object
      required:
      - driver
      - container_dir
      - mode
      - device_type
      - device
      properties:
        driver:
          type: string
        container_dir:
          type: string
        mode:
          type: string
          enum:
          - r
          - rw
        device_type:
          type: string
          enum:
          - shared
        device:
          $ref: '#/components/schemas/ServiceBindingVolumeMountDevice'
    Context:
      description: See [Context Conventions](https://github.com/openservicebrokerapi/servicebroker/blob/master/profile.md#context-object) for more details.
      type: object
  parameters:
    APIVersion:
      name: X-Broker-API-Version
      in: header
      description: version number of the Service Broker API that the Platform will use
      required: true
      schema:
        type: string
        default: '2.13'
    OriginatingIdentity:
      name: X-Broker-API-Originating-Identity
      in: header
      description: identity of the user that initiated the request from the Platform
      schema:
        type: string
  securitySchemes:
    basicAuth:
      type: http
      scheme: basic
externalDocs:
  description: The official Open Service Broker API specification
  url: https://github.com/openservicebrokerapi/servicebroker/