Skip to main content Link Menu Expand (external link) Document Search Copy Copied

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/f42afe4a-4c8e-415a-8d48-00efd2b53a9f/deployments' -i -X POST \
    -H 'Content-Type: application/json'

Python (requests)

import requests

url = "https://app.matatika.com/api/workspaces/f42afe4a-4c8e-415a-8d48-00efd2b53a9f/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" : "a0ca1b73-2c66-4a65-b8d0-bf19e82e348d",
  "created" : "2026-01-11T19:00:24.444319",
  "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/a0ca1b73-2c66-4a65-b8d0-bf19e82e348d"
    },
    "delete job" : {
      "href" : "https://app.matatika.com/api/jobs/a0ca1b73-2c66-4a65-b8d0-bf19e82e348d",
      "type" : "DELETE"
    },
    "logs" : {
      "href" : "https://app.matatika.com/api/jobs/a0ca1b73-2c66-4a65-b8d0-bf19e82e348d/logs?sequence=0",
      "type" : "GET"
    },
    "withdraw job" : {
      "href" : "https://app.matatika.com/api/jobs/a0ca1b73-2c66-4a65-b8d0-bf19e82e348d/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/f42afe4a-4c8e-415a-8d48-00efd2b53a9f/deployments/github-webhook' -i -X POST \
    -H 'X-Hub-Signature: sha1=588952b50c437809a6064410240c4ad7e1303542' \
    -H 'Content-Type: application/json' \
    -d '{ }'

Python (requests)

import requests

url = "https://app.matatika.com/api/workspaces/f42afe4a-4c8e-415a-8d48-00efd2b53a9f/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" : "10180ed2-dbf0-4ffb-9d7f-bf738d2ef4c8",
  "created" : "2026-01-11T19:00:27.370385",
  "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/10180ed2-dbf0-4ffb-9d7f-bf738d2ef4c8"
    },
    "delete job" : {
      "href" : "https://app.matatika.com/api/jobs/10180ed2-dbf0-4ffb-9d7f-bf738d2ef4c8",
      "type" : "DELETE"
    },
    "logs" : {
      "href" : "https://app.matatika.com/api/jobs/10180ed2-dbf0-4ffb-9d7f-bf738d2ef4c8/logs?sequence=0",
      "type" : "GET"
    },
    "withdraw job" : {
      "href" : "https://app.matatika.com/api/jobs/10180ed2-dbf0-4ffb-9d7f-bf738d2ef4c8/stopped",
      "type" : "PUT"
    }
  }
}