Deployments
Deployments let the user schedule a job to deploy the contents of their workspace repository to their workspace in the Matatika cloud.
This can be done manually or via a GitHub Webhook which you can see how to set up in our Quick Start Guide: Workspace Deploy Hook
Requests
Deploy your workspace repository
POST
/api/workspaces/{workspaces-id}/deployments
Deploys the workspace {workspace-id}.
Request
Example Snippets
cURL
curl -H "Authorization: Bearer $ACCESS_TOKEN" 'https://app.matatika.com/api/workspaces/031e1c9d-2e09-47e0-b116-6ea117a0a7f6/deployments' -i -X POST \
-H 'Content-Type: application/json'
Python (requests)
import requests
url = "https://app.matatika.com/api/workspaces/031e1c9d-2e09-47e0-b116-6ea117a0a7f6/deployments"
headers = {
'Authorization': ACCESS_TOKEN
}
response = requests.request("POST", url, headers=headers)
print(response.text.encode('utf8'))
Response
202 Accepted
Job with HAL links.
{
"id" : "f2bcac5a-2aca-4bf5-b5b4-013e353c4d4a",
"created" : "2026-01-25T08:27:33.041214",
"type" : "WORKSPACE_DEPLOY",
"maxAttempts" : 0,
"attempt" : 0,
"status" : "QUEUED",
"_embedded" : {
"profile" : {
"id" : "auth0|5eb0327cbfd7490bff55feeb",
"name" : "[email protected]",
"handle" : "@sit+prod",
"email" : "[email protected]"
}
},
"_links" : {
"self" : {
"href" : "https://app.matatika.com/api/jobs/f2bcac5a-2aca-4bf5-b5b4-013e353c4d4a"
},
"delete job" : {
"href" : "https://app.matatika.com/api/jobs/f2bcac5a-2aca-4bf5-b5b4-013e353c4d4a",
"type" : "DELETE"
},
"logs" : {
"href" : "https://app.matatika.com/api/jobs/f2bcac5a-2aca-4bf5-b5b4-013e353c4d4a/logs?sequence=0",
"type" : "GET"
},
"withdraw job" : {
"href" : "https://app.matatika.com/api/jobs/f2bcac5a-2aca-4bf5-b5b4-013e353c4d4a/stopped",
"type" : "PUT"
}
}
}
GitHub webhook workspace deployment
POST
/api/workspaces/{workspaces-id}/deployments/github-webhook
Receives POST requests from GitHub and starts a workspace deploy job.
Request
Example Snippets
cURL
curl -H "Authorization: Bearer $ACCESS_TOKEN" 'https://app.matatika.com/api/workspaces/031e1c9d-2e09-47e0-b116-6ea117a0a7f6/deployments/github-webhook' -i -X POST \
-H 'X-Hub-Signature: sha1=3f9b30d815e0953ca420dabaf874beaca16619e2' \
-H 'Content-Type: application/json' \
-d '{ }'
Python (requests)
import requests
url = "https://app.matatika.com/api/workspaces/031e1c9d-2e09-47e0-b116-6ea117a0a7f6/deployments/github-webhook"
data = { }
headers = {
'Authorization': ACCESS_TOKEN
}
response = requests.request("POST", url, headers=headers, data=data)
print(response.text.encode('utf8'))
Response
202 Accepted
Job with HAL links.
{
"id" : "bd5b6ed2-da7f-469b-872c-017ce6bc5755",
"created" : "2026-01-25T08:27:39.82331",
"type" : "WORKSPACE_DEPLOY",
"maxAttempts" : 0,
"attempt" : 0,
"status" : "QUEUED",
"_embedded" : {
"profile" : {
"id" : "auth0|5eb0327cbfd7490bff55feeb",
"name" : "[email protected]",
"handle" : "@sit+prod",
"email" : "[email protected]"
}
},
"_links" : {
"self" : {
"href" : "https://app.matatika.com/api/jobs/bd5b6ed2-da7f-469b-872c-017ce6bc5755"
},
"delete job" : {
"href" : "https://app.matatika.com/api/jobs/bd5b6ed2-da7f-469b-872c-017ce6bc5755",
"type" : "DELETE"
},
"logs" : {
"href" : "https://app.matatika.com/api/jobs/bd5b6ed2-da7f-469b-872c-017ce6bc5755/logs?sequence=0",
"type" : "GET"
},
"withdraw job" : {
"href" : "https://app.matatika.com/api/jobs/bd5b6ed2-da7f-469b-872c-017ce6bc5755/stopped",
"type" : "PUT"
}
}
}