Escape Projects API
Projects Management The public API provides CRUDs operations to manage projects.
Projects Management The public API provides CRUDs operations to manage projects.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
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.curl "https://apis.io/api/v1/apis/escape-projects-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
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: 3.2.0
info:
version: 3.0.0
title: Escape Public Asm Projects API
description: 'This API enables you to operate [Escape](https://escape.tech/) programmatically.
All requests must be authenticated with a valid API key, provided in the `X-ESCAPE-API-KEY` header.
For example: `X-ESCAPE-API-KEY: YOUR_API_KEY`.
You can find your API key in the [Escape dashboard](https://app.escape.tech/user/).'
servers:
- url: https://public.escape.tech/v3
security:
- apiKey: []
tags:
- name: Projects
description: 'Projects Management
The public API provides CRUDs operations to manage projects.'
paths:
/projects:
get:
tags:
- Projects
summary: List projects
operationId: listProjects
description: List and search projects of the organization.
parameters:
- schema:
type: string
description: The cursor to start the pagination from. Returned by the previous page response. If not provided, the first page will be returned.
example: R1BDOlM6NTEwMzk4NTYtNGIyOS00NTlkLTg0ZDYtMWJhYjM0NWMzZjU5
required: false
description: The cursor to start the pagination from. Returned by the previous page response. If not provided, the first page will be returned.
name: cursor
in: query
- schema:
type: integer
minimum: 1
maximum: 100
default: 50
description: The number of items to return per page
example: 50
required: false
description: The number of items to return per page
name: size
in: query
- schema:
type: string
enum:
- NAME
description: The type to sort by
required: false
description: The type to sort by
name: sortType
in: query
- schema:
type: string
enum:
- asc
- desc
default: asc
description: The direction to sort by
required: false
description: The direction to sort by
name: sortDirection
in: query
- schema:
type: string
description: Search term to filter projects by name
example: My Super Project
required: false
description: Search term to filter projects by name
name: search
in: query
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
properties:
nextCursor:
type:
- string
- 'null'
totalCount:
type: integer
default: 100
example: 20
data:
type: array
items:
type: object
properties:
id:
type: string
format: uuid
description: The id of the project
name:
type: string
description: The name of the project
createdAt:
type: string
format: date-time
description: The date and time the project was created
bindings:
type: array
items:
type: object
properties:
id:
type: string
format: uuid
description: The id of the role binding
createdAt:
type: string
format: date-time
description: The date and time the role binding was created
roleId:
type: string
format: uuid
description: The id of the role bound by the role binding
projectId:
type:
- string
- 'null'
format: uuid
description: The id of the project bound by the role binding
userId:
type: string
format: uuid
description: The id of the user bound by the role binding
required:
- id
- createdAt
- roleId
- userId
description: The bindings of the project
required:
- id
- name
- createdAt
- bindings
required:
- nextCursor
- data
'400':
description: Pagination error
content:
application/json:
schema:
type: object
properties:
message:
type: string
enum:
- Invalid cursor
details:
type: string
required:
- message
- details
title: PaginationError
description: Returned when an invalid pagination cursor is supplied
post:
tags:
- Projects
summary: Create a project
operationId: createProject
description: Create a project for the organization.
requestBody:
description: Body of the request to create a project
required: true
content:
application/json:
schema:
type: object
properties:
name:
type: string
description: The name of the project
example: My super project
slug:
type: string
description: The slug of the project
example: my-super-project
bindings:
type: array
items:
type: object
properties:
roleId:
type: string
description: The role ID
example: 00000000-0000-0000-0000-000000000000
userId:
type: string
description: The user ID
example: 00000000-0000-0000-0000-000000000000
required:
- roleId
- userId
description: An optional list of role bindings to create for the project
example:
- roleId: 00000000-0000-0000-0000-000000000000
userId: 00000000-0000-0000-0000-000000000000
required:
- name
- slug
- bindings
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
properties:
id:
type: string
format: uuid
description: The id of the project
name:
type: string
description: The name of the project
createdAt:
type: string
format: date-time
description: The date and time the project was created
bindings:
type: array
items:
type: object
properties:
id:
type: string
format: uuid
description: The id of the role binding
createdAt:
type: string
format: date-time
description: The date and time the role binding was created
role:
type: object
properties:
id:
type: string
format: uuid
description: The id of the role
name:
type: string
description: The name of the role
createdAt:
type: string
format: date-time
description: The date and time the role was created
required:
- id
- name
- createdAt
project:
type: object
properties:
id:
type: string
format: uuid
description: The id of the project
name:
type: string
description: The name of the project
createdAt:
type: string
format: date-time
description: The date and time the project was created
required:
- id
- name
- createdAt
user:
type: object
properties:
id:
type: string
format: uuid
description: The id of the user
email:
type: string
format: email
description: The email of the user
createdAt:
type: string
format: date-time
description: The date and time the user was created
activatedAt:
type:
- string
- 'null'
format: date-time
description: The date and time the user was activated
required:
- id
- email
- createdAt
- activatedAt
required:
- id
- createdAt
- role
- project
- user
description: The bindings of the project
required:
- id
- name
- createdAt
- bindings
'400':
description: Bad Request
content:
application/json:
schema:
type: object
properties:
message:
type: string
enum:
- Bad Request
details:
type: string
required:
- message
- details
title: BadRequest
description: Returned when the request payload fails validation
'500':
description: Internal Server Error
content:
application/json:
schema:
type: object
properties:
message:
type: string
enum:
- Internal Server Error
details:
type: string
required:
- message
- details
title: InternalServerError
description: Returned when the server fails to fulfil the request
/projects/{projectId}:
get:
tags:
- Projects
summary: Get a project
operationId: getProject
description: Get a project by ID.
parameters:
- schema:
type: string
description: The project ID
example: 00000000-0000-0000-0000-000000000000
required: true
description: The project ID
name: projectId
in: path
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
properties:
id:
type: string
format: uuid
description: The id of the project
name:
type: string
description: The name of the project
createdAt:
type: string
format: date-time
description: The date and time the project was created
bindings:
type: array
items:
type: object
properties:
id:
type: string
format: uuid
description: The id of the role binding
createdAt:
type: string
format: date-time
description: The date and time the role binding was created
role:
type: object
properties:
id:
type: string
format: uuid
description: The id of the role
name:
type: string
description: The name of the role
createdAt:
type: string
format: date-time
description: The date and time the role was created
required:
- id
- name
- createdAt
project:
type: object
properties:
id:
type: string
format: uuid
description: The id of the project
name:
type: string
description: The name of the project
createdAt:
type: string
format: date-time
description: The date and time the project was created
required:
- id
- name
- createdAt
user:
type: object
properties:
id:
type: string
format: uuid
description: The id of the user
email:
type: string
format: email
description: The email of the user
createdAt:
type: string
format: date-time
description: The date and time the user was created
activatedAt:
type:
- string
- 'null'
format: date-time
description: The date and time the user was activated
required:
- id
- email
- createdAt
- activatedAt
required:
- id
- createdAt
- role
- project
- user
description: The bindings of the project
required:
- id
- name
- createdAt
- bindings
put:
tags:
- Projects
summary: Update a project
operationId: updateProject
description: Update a project.
parameters:
- schema:
type: string
description: The project ID
example: 00000000-0000-0000-0000-000000000000
required: true
description: The project ID
name: projectId
in: path
requestBody:
required: true
description: Body of the request to update a project
content:
application/json:
schema:
type: object
properties:
project:
type: object
properties:
name:
type: string
description: The name of the project
example: My updated super project
slug:
type: string
description: The slug of the project
example: my-updated-super-project
required:
- project
responses:
'200':
description: OK
content:
application/json:
schema:
type: object
properties:
id:
type: string
format: uuid
description: The id of the project
name:
type: string
description: The name of the project
createdAt:
type: string
format: date-time
description: The date and time the project was created
bindings:
type: array
items:
type: object
properties:
id:
type: string
format: uuid
description: The id of the role binding
createdAt:
type: string
format: date-time
description: The date and time the role binding was created
role:
type: object
properties:
id:
type: string
format: uuid
description: The id of the role
name:
type: string
description: The name of the role
createdAt:
type: string
format: date-time
description: The date and time the role was created
required:
- id
- name
- createdAt
project:
type: object
properties:
id:
type: string
format: uuid
description: The id of the project
name:
type: string
description: The name of the project
createdAt:
type: string
format: date-time
description: The date and time the project was created
required:
- id
- name
- createdAt
user:
type: object
properties:
id:
type: string
format: uuid
description: The id of the user
email:
type: string
format: email
description: The email of the user
createdAt:
type: string
format: date-time
description: The date and time the user was created
activatedAt:
type:
- string
- 'null'
format: date-time
description: The date and time the user was activated
required:
- id
- email
- createdAt
- activatedAt
required:
- id
- createdAt
- role
- project
- user
description: The bindings of the project
required:
- id
- name
- createdAt
- bindings
'400':
description: Bad Request
content:
application/json:
schema:
type: object
properties:
message:
type: string
enum:
- Bad Request
details:
type: string
required:
- message
- details
title: BadRequest
description: Returned when the request payload fails validation
'500':
description: Internal Server Error
content:
application/json:
schema:
type: object
properties:
message:
type: string
enum:
- Internal Server Error
details:
type: string
required:
- message
- details
title: InternalServerError
description: Returned when the server fails to fulfil the request
components:
securitySchemes:
apiKey:
type: apiKey
in: header
name: X-ESCAPE-API-KEY