Taskoor for business

Build local-service workflows with Taskoor APIs

Connect your platform to Taskoor's service network. Discover taskers, book work, follow task status, and manage tasks through versioned, key-protected endpoints.

Authentication

Every B2B request must include its API key in the X-API-Key header. Keys stay on your server and must never be embedded in browser or mobile application code.

API access is currently issued manually. Contact Taskoor to receive a test or production key.
GET/api/v1/servicesAPI key required

Returns Taskoor's available service categories, hourly rates, and indicative starting totals in EUR.

Request

curl https://taskoor.com/api/v1/services \
  --header "X-API-Key: YOUR_API_KEY"

Example response

{
  "data": [
    {
      "slug": "moving-help",
      "name": "Moving Help",
      "currency": "EUR",
      "rate": 45,
      "rateUnit": "hour",
      "indicativeTotal": 185
    }
  ],
  "meta": {
    "version": "v1",
    "pricing": "indicative"
  }
}

Task and tasker APIs

Every task belongs to the client account linked to your API key.

GET/api/v1/taskersAPI key required

Returns completed tasker profiles with their location, sectors, skills, and hourly rates.

Request payload

No request body

Response payload

{
  "data": [
    {
      "id": "a2179185-8992-4c02-93f8-cc5da05464d5",
      "name": "Alex Morgan",
      "location": "Rotterdam, Netherlands",
      "bio": "Experienced local handyman.",
      "sectors": ["Handyman Services"],
      "skills": [
        { "name": "Electrical Help", "rate": 55 }
      ]
    }
  ],
  "meta": { "count": 1, "version": "v1" }
}
POST/api/v1/tasksAPI key required

Creates a task. Category and description are required; price and coordinates are optional.

Request payload

{
  "category": "Handyman Services",
  "description": "Install a new electrical outlet in the home office.",
  "estimatedTotal": 165,
  "location": {
    "label": "Rotterdam, Netherlands",
    "latitude": 51.9244,
    "longitude": 4.4777
  }
}

Response payload

{
  "data": {
    "id": "c736e462-91e2-4f50-b7d6-4b2863559220",
    "status": "looking_for_tasker",
    "estimatedTotal": 165,
    "currency": "USD"
  }
}
GET/api/v1/tasks/{taskId}API key required

Returns the current task status, payment status, estimate, location, description, and assignment details.

Request payload

No request body

Path parameter:
taskId = c736e462-91e2-4f50-b7d6-4b2863559220

Response payload

{
  "data": {
    "id": "c736e462-91e2-4f50-b7d6-4b2863559220",
    "category": "Handyman Services",
    "description": "Install a new electrical outlet in the home office.",
    "status": "looking_for_tasker",
    "paymentStatus": "not_started",
    "estimatedTotal": 165,
    "tasker": "Awaiting Match",
    "location": {
      "label": "Rotterdam, Netherlands",
      "latitude": 51.9244,
      "longitude": 4.4777
    }
  }
}
PATCH/api/v1/tasks/{taskId}API key required

Edits a task description and/or locationLabel while preserving ownership under the API key’s client account.

Request payload

{
  "description": "Install two electrical outlets in the home office.",
  "locationLabel": "Nieuwe Binnenweg 10, Rotterdam"
}

Response payload

{
  "data": {
    "id": "c736e462-91e2-4f50-b7d6-4b2863559220",
    "description": "Install two electrical outlets in the home office.",
    "status": "looking_for_tasker",
    "paymentStatus": "not_started",
    "location": {
      "label": "Nieuwe Binnenweg 10, Rotterdam",
      "latitude": 51.9244,
      "longitude": 4.4777
    }
  }
}
DELETE/api/v1/tasks/{taskId}API key required

Cancels a task. Repeating the request for an already cancelled task is safe and returns the cancelled status.

Request payload

No request body

Path parameter:
taskId = c736e462-91e2-4f50-b7d6-4b2863559220

Response payload

{
  "data": {
    "id": "c736e462-91e2-4f50-b7d6-4b2863559220",
    "status": "cancelled"
  }
}

Versioned

Stable /api/v1 contracts make integration upgrades predictable.

Protected

Requests fail closed when the server has no matching API key.

Rotation ready

Multiple active keys can be configured during a safe key rotation.

Need a custom integration? Contact Taskoor Support.