Projects

Generated from Depllo's own code: every route in this area, what it takes and how to call it.

Method Path What it does
GET /api/v1/projects List projects
POST /api/v1/projects Create a project
DELETE /api/v1/projects/{id} Delete a project
GET /api/v1/projects/{id} Get a project
GET /api/v1/projects/{id}/config List config
PUT /api/v1/projects/{id}/config Config a project
GET /api/v1/projects/{id}/pipelines List pipelines
POST /api/v1/projects/{id}/pipelines Pipelines a project
GET /api/v1/projects/{id}/pipelines/{iid} Get a pipeline
POST /api/v1/projects/{id}/pipelines/{iid}/cancel Cancel a pipeline
POST /api/v1/projects/{id}/pipelines/{iid}/retry Retry a pipeline
GET /api/v1/projects/{id}/schedules List schedules
POST /api/v1/projects/{id}/schedules Schedules a project
DELETE /api/v1/projects/{id}/schedules/{schedId} Delete a schedule
PATCH /api/v1/projects/{id}/schedules/{schedId} Update a schedule
GET /api/v1/projects/{id}/variables List variables
POST /api/v1/projects/{id}/variables Variables a project
DELETE /api/v1/projects/{id}/variables/{varId} Delete a variable
PATCH /api/v1/projects/{id}/variables/{varId} Update a variable
POST /api/v1/projects/{id}/webhook Idempotent webhook (re)create — the settings page "re-create" button.

List projects

GET /api/v1/projects

Example

curl -X GET "https://depllo.forjio.com/api/v1/projects" \
  -H "Authorization: Bearer sk_live_<your API key>"

Create a project

POST /api/v1/projects

Body

Field Type Required Notes
name string no min length 1; max length 200
repoFullName string yes
defaultBranch string no default "master"; min length 1; max length 200
configPath string no default ".depllo-ci.yml"; min length 1; max length 500
cloneToken string no max length 500

Example

curl -X POST "https://depllo.forjio.com/api/v1/projects" \
  -H "Authorization: Bearer sk_live_<your API key>" \
  -H "Content-Type: application/json" \
  -d '{"name":"…","repoFullName":"…","defaultBranch":"master","configPath":".depllo-ci.yml","cloneToken":"…"}'

Delete a project

DELETE /api/v1/projects/{id}

Path parameters

Name Type Required Notes
id string yes

Example

curl -X DELETE "https://depllo.forjio.com/api/v1/projects/:id" \
  -H "Authorization: Bearer sk_live_<your API key>"

Get a project

GET /api/v1/projects/{id}

Path parameters

Name Type Required Notes
id string yes

Example

curl -X GET "https://depllo.forjio.com/api/v1/projects/:id" \
  -H "Authorization: Bearer sk_live_<your API key>"

List config

GET /api/v1/projects/{id}/config

Path parameters

Name Type Required Notes
id string yes

Example

curl -X GET "https://depllo.forjio.com/api/v1/projects/:id/config" \
  -H "Authorization: Bearer sk_live_<your API key>"

Config a project

PUT /api/v1/projects/{id}/config

Path parameters

Name Type Required Notes
id string yes

Body

Field Type Required Notes
configText string yes min length 1; max length 200000
commitMessage string no min length 1; max length 500

Example

curl -X PUT "https://depllo.forjio.com/api/v1/projects/:id/config" \
  -H "Authorization: Bearer sk_live_<your API key>" \
  -H "Content-Type: application/json" \
  -d '{"configText":"…","commitMessage":"…"}'

List pipelines

GET /api/v1/projects/{id}/pipelines

Path parameters

Name Type Required Notes
id string yes

Query parameters

Name Type Required Notes
q any no
ref any no
source any no
status any no

Example

curl -X GET "https://depllo.forjio.com/api/v1/projects/:id/pipelines" \
  -H "Authorization: Bearer sk_live_<your API key>"

Pipelines a project

POST /api/v1/projects/{id}/pipelines

Path parameters

Name Type Required Notes
id string yes

Body

Field Type Required Notes
ref string yes min length 1; max length 300
variables object no default {}

Example

curl -X POST "https://depllo.forjio.com/api/v1/projects/:id/pipelines" \
  -H "Authorization: Bearer sk_live_<your API key>" \
  -H "Content-Type: application/json" \
  -d '{"ref":"…","variables":{}}'

Get a pipeline

GET /api/v1/projects/{id}/pipelines/{iid}

Path parameters

Name Type Required Notes
id string yes
iid string yes

Example

curl -X GET "https://depllo.forjio.com/api/v1/projects/:id/pipelines/:iid" \
  -H "Authorization: Bearer sk_live_<your API key>"

Cancel a pipeline

POST /api/v1/projects/{id}/pipelines/{iid}/cancel

Path parameters

Name Type Required Notes
id string yes
iid string yes

Example

curl -X POST "https://depllo.forjio.com/api/v1/projects/:id/pipelines/:iid/cancel" \
  -H "Authorization: Bearer sk_live_<your API key>"

Retry a pipeline

POST /api/v1/projects/{id}/pipelines/{iid}/retry

Path parameters

Name Type Required Notes
id string yes
iid string yes

Example

curl -X POST "https://depllo.forjio.com/api/v1/projects/:id/pipelines/:iid/retry" \
  -H "Authorization: Bearer sk_live_<your API key>"

List schedules

GET /api/v1/projects/{id}/schedules

Path parameters

Name Type Required Notes
id string yes

Example

curl -X GET "https://depllo.forjio.com/api/v1/projects/:id/schedules" \
  -H "Authorization: Bearer sk_live_<your API key>"

Schedules a project

POST /api/v1/projects/{id}/schedules

Path parameters

Name Type Required Notes
id string yes

Body

Field Type Required Notes
cron string yes min length 9; max length 100
ref string yes min length 1; max length 300
active boolean no default true
variables object no default {}

Example

curl -X POST "https://depllo.forjio.com/api/v1/projects/:id/schedules" \
  -H "Authorization: Bearer sk_live_<your API key>" \
  -H "Content-Type: application/json" \
  -d '{"cron":"…","ref":"…","active":true,"variables":{}}'

Delete a schedule

DELETE /api/v1/projects/{id}/schedules/{schedId}

Path parameters

Name Type Required Notes
id string yes
schedId string yes

Example

curl -X DELETE "https://depllo.forjio.com/api/v1/projects/:id/schedules/:schedId" \
  -H "Authorization: Bearer sk_live_<your API key>"

Update a schedule

PATCH /api/v1/projects/{id}/schedules/{schedId}

Path parameters

Name Type Required Notes
id string yes
schedId string yes

Body

Field Type Required Notes
cron string no min length 9; max length 100
ref string no min length 1; max length 300
active boolean no
variables object no

Example

curl -X PATCH "https://depllo.forjio.com/api/v1/projects/:id/schedules/:schedId" \
  -H "Authorization: Bearer sk_live_<your API key>" \
  -H "Content-Type: application/json" \
  -d '{"cron":"…","ref":"…","active":false,"variables":{}}'

List variables

GET /api/v1/projects/{id}/variables

Path parameters

Name Type Required Notes
id string yes

Example

curl -X GET "https://depllo.forjio.com/api/v1/projects/:id/variables" \
  -H "Authorization: Bearer sk_live_<your API key>"

Variables a project

POST /api/v1/projects/{id}/variables

Path parameters

Name Type Required Notes
id string yes

Body

Field Type Required Notes
key string yes max length 255
value string yes max length 10000
backend local or secronna no default "local"
masked boolean no default false
protected boolean no default false
fileType boolean no default false

Example

curl -X POST "https://depllo.forjio.com/api/v1/projects/:id/variables" \
  -H "Authorization: Bearer sk_live_<your API key>" \
  -H "Content-Type: application/json" \
  -d '{"key":"…","value":"…","backend":"local","masked":false,"protected":false,"fileType":false}'

Delete a variable

DELETE /api/v1/projects/{id}/variables/{varId}

Path parameters

Name Type Required Notes
id string yes
varId string yes

Example

curl -X DELETE "https://depllo.forjio.com/api/v1/projects/:id/variables/:varId" \
  -H "Authorization: Bearer sk_live_<your API key>"

Update a variable

PATCH /api/v1/projects/{id}/variables/{varId}

Path parameters

Name Type Required Notes
id string yes
varId string yes

Body

Field Type Required Notes
value string no max length 10000
backend local or secronna no
masked boolean no
protected boolean no
fileType boolean no

Example

curl -X PATCH "https://depllo.forjio.com/api/v1/projects/:id/variables/:varId" \
  -H "Authorization: Bearer sk_live_<your API key>" \
  -H "Content-Type: application/json" \
  -d '{"value":"…","backend":"local","masked":false,"protected":false,"fileType":false}'

Idempotent webhook (re)create — the settings page "re-create" button.

POST /api/v1/projects/{id}/webhook

Path parameters

Name Type Required Notes
id string yes

Example

curl -X POST "https://depllo.forjio.com/api/v1/projects/:id/webhook" \
  -H "Authorization: Bearer sk_live_<your API key>"