Oore CI
ReferenceAPICategories

Projects

Project CRUD — each project groups one or more pipelines. Per-project role assignments for granular RBAC.

GET
/v1/projects

Authorization

bearer_auth
AuthorizationBearer <token>

In: header

Query Parameters

limit?integer

Page size (default 50)

Formatint64
offset?integer

Page offset (default 0)

Formatint64
search?string

Filter by name (case-insensitive partial match)

integration_id?string

Filter by linked integration

sort?string

Sort by created_at, updated_at, or name

direction?string

Sort direction: asc or desc

Response Body

application/json

application/json

curl -X GET "https://example.com/v1/projects"
{  "projects": [    {      "created_at": 0,      "created_by": "string",      "current_user_role": "maintainer",      "default_branch": "string",      "description": "string",      "id": "string",      "name": "string",      "repository_avatar_url": "string",      "repository_full_name": "string",      "repository_id": "string",      "repository_provider": null,      "settings": {},      "updated_at": 0    }  ],  "total": 0}
POST
/v1/projects

Authorization

bearer_auth
AuthorizationBearer <token>

In: header

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

curl -X POST "https://example.com/v1/projects" \  -H "Content-Type: application/json" \  -d '{    "name": "string"  }'
{  "project": {    "created_at": 0,    "created_by": "string",    "current_user_role": "maintainer",    "default_branch": "string",    "description": "string",    "id": "string",    "name": "string",    "repository_avatar_url": "string",    "repository_full_name": "string",    "repository_id": "string",    "repository_provider": null,    "settings": {},    "updated_at": 0  }}
GET
/v1/projects/{project_id}

Authorization

bearer_auth
AuthorizationBearer <token>

In: header

Path Parameters

project_id*string

Project ID

Response Body

application/json

application/json

curl -X GET "https://example.com/v1/projects/string"
{  "build_count": 0,  "current_user_role": "maintainer",  "pipeline_count": 0,  "project": {    "created_at": 0,    "created_by": "string",    "current_user_role": "maintainer",    "default_branch": "string",    "description": "string",    "id": "string",    "name": "string",    "repository_avatar_url": "string",    "repository_full_name": "string",    "repository_id": "string",    "repository_provider": null,    "settings": {},    "updated_at": 0  }}
PATCH
/v1/projects/{project_id}

Authorization

bearer_auth
AuthorizationBearer <token>

In: header

Path Parameters

project_id*string

Project ID

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

curl -X PATCH "https://example.com/v1/projects/string" \  -H "Content-Type: application/json" \  -d '{}'
{  "project": {    "created_at": 0,    "created_by": "string",    "current_user_role": "maintainer",    "default_branch": "string",    "description": "string",    "id": "string",    "name": "string",    "repository_avatar_url": "string",    "repository_full_name": "string",    "repository_id": "string",    "repository_provider": null,    "settings": {},    "updated_at": 0  }}
DELETE
/v1/projects/{project_id}

Authorization

bearer_auth
AuthorizationBearer <token>

In: header

Path Parameters

project_id*string

Project ID

Response Body

application/json

application/json

application/json

curl -X DELETE "https://example.com/v1/projects/string"
{  "ok": true}
GET
/v1/projects/{project_id}/members

Authorization

bearer_auth
AuthorizationBearer <token>

In: header

Path Parameters

project_id*string

Project ID

Response Body

application/json

application/json

curl -X GET "https://example.com/v1/projects/string/members"
{  "members": [    {      "created_at": 0,      "id": "string",      "project_id": "string",      "role": "maintainer",      "updated_at": 0,      "user_avatar_url": "string",      "user_display_name": "string",      "user_email": "string",      "user_id": "string",      "user_role": "string"    }  ]}
POST
/v1/projects/{project_id}/members

Authorization

bearer_auth
AuthorizationBearer <token>

In: header

Path Parameters

project_id*string

Project ID

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/v1/projects/string/members" \  -H "Content-Type: application/json" \  -d '{    "role": "maintainer",    "user_id": "string"  }'
{  "member": {    "created_at": 0,    "id": "string",    "project_id": "string",    "role": "maintainer",    "updated_at": 0,    "user_avatar_url": "string",    "user_display_name": "string",    "user_email": "string",    "user_id": "string",    "user_role": "string"  }}
GET
/v1/projects/{project_id}/members/candidates

Authorization

bearer_auth
AuthorizationBearer <token>

In: header

Path Parameters

project_id*string

Project ID

Response Body

application/json

application/json

application/json

curl -X GET "https://example.com/v1/projects/string/members/candidates"
{  "candidates": [    {      "display_name": "string",      "email": "string",      "id": "string",      "role": "string",      "status": "string"    }  ]}
PATCH
/v1/projects/{project_id}/members/{user_id}

Authorization

bearer_auth
AuthorizationBearer <token>

In: header

Path Parameters

project_id*string

Project ID

user_id*string

User ID

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

curl -X PATCH "https://example.com/v1/projects/string/members/string" \  -H "Content-Type: application/json" \  -d '{    "role": "maintainer"  }'
{  "member": {    "created_at": 0,    "id": "string",    "project_id": "string",    "role": "maintainer",    "updated_at": 0,    "user_avatar_url": "string",    "user_display_name": "string",    "user_email": "string",    "user_id": "string",    "user_role": "string"  }}
DELETE
/v1/projects/{project_id}/members/{user_id}

Authorization

bearer_auth
AuthorizationBearer <token>

In: header

Path Parameters

project_id*string

Project ID

user_id*string

User ID

Response Body

application/json

application/json

curl -X DELETE "https://example.com/v1/projects/string/members/string"
{  "ok": true}