Skip to content
TasksMate Developers

0.x — pre-release, no compatibility promise yet.What this means

Create a team. Any non-guest member of the org may; the creator becomes the team’s owner. 409 when an active team of the org already has the name.

Media typeapplication/json
TeamCreate

The request body of teams.create.

object
org_id
required
Org Id

Organization the team belongs to; the caller must be a non-guest member of it

string
name
required
Name

Unique among the org’s active teams (case-insensitive) — 409 otherwise

string
>= 1 characters <= 120 characters
description
Any of:
string
<= 2000 characters
member_user_ids
Member User Ids

Extra members (user ids) to add as member; each must be an active member of the org. The creator is always the team’s owner.

Array<string>

Example

{
"org_id": "string",
"name": "string",
"description": "string",
"member_user_ids": [
"string"
]
}

Successful Response

Media typeapplication/json
TeamDetail

Returned by teams.create, teams.read, teams.replace and teams.update.

object
team_id
required
Team Id
string
org_id
required
Org Id
string
name
required
Name
string
description
Any of:
string
created_by
Any of:
string
updated_by
Any of:
string
created_at
Any of:
string format: date-time
updated_at
Any of:
string format: date-time
is_active
Is Active
boolean
default: true
member_count
Member Count
integer
0
project_count
Project Count
integer
0
team_role
Any of:
TeamRoleEnum

One of owner, member. Used by TeamDetail and 4 more.

string
Allowed values: owner member
members
Members
Array<object>
TeamMemberOut

Returned by teams.add_member, teams.replace_member and teams.update_member.

object
team_id
required
Team Id
string
user_id
required
User Id
string
username
Any of:
string
team_role
required
TeamRoleEnum

One of owner, member. Used by TeamDetail and 4 more.

string
Allowed values: owner member
added_by
Any of:
string
created_at
Any of:
string format: date-time
updated_at
Any of:
string format: date-time

Example

{
"team_id": "string",
"org_id": "string",
"name": "string",
"description": "string",
"created_by": "string",
"updated_by": "string",
"created_at": "2026-09-25T12:00:00Z",
"updated_at": "2026-09-25T12:00:00Z",
"is_active": true,
"member_count": 0,
"project_count": 0,
"team_role": "owner",
"members": [
{
"team_id": "string",
"user_id": "string",
"username": "string",
"team_role": "owner",
"added_by": "string",
"created_at": "2026-09-25T12:00:00Z",
"updated_at": "2026-09-25T12:00:00Z"
}
]
}

Bad request — a query parameter outside what the operation accepts (invalid-parameter)

Media typeapplication/problem+json
Problem

An RFC 9457 problem details object — the body of every error response. detail is the human-readable explanation; request_id identifies the request for support.

object
type
required

about:blank or a urn:tasksmate:problem:* identifier

string
Allowed values: about:blank urn:tasksmate:problem:validation urn:tasksmate:problem:invalid-parameter urn:tasksmate:problem:precondition-failed urn:tasksmate:problem:idempotency-key-reused urn:tasksmate:problem:idempotency-key-in-flight urn:tasksmate:problem:idempotency-key-invalid urn:tasksmate:problem:rate-limit urn:tasksmate:problem:internal urn:tasksmate:problem:token-invalid urn:tasksmate:problem:token-expired urn:tasksmate:problem:token-revoked urn:tasksmate:problem:insufficient-scope urn:tasksmate:problem:test-token-read-only urn:tasksmate:problem:token-policy urn:tasksmate:problem:url-refused
title
required
string
status
required
integer
detail
required

Human-readable explanation (a string; for a 422, the list of validation errors)

instance
required
string
request_id
required
string
errors

Structured failures: validation errors, or {loc, msg, allowed} for a bad parameter

Array<object>
object

Example

{
"type": "about:blank",
"title": "Bad request",
"status": 400,
"detail": "…",
"instance": "/v1/…",
"request_id": "9b2f1c1e-8c1a-4a53-9f9e-0f5f1f2d7c11"
}

Missing or invalid bearer token

Media typeapplication/problem+json
Problem

An RFC 9457 problem details object — the body of every error response. detail is the human-readable explanation; request_id identifies the request for support.

object
type
required

about:blank or a urn:tasksmate:problem:* identifier

string
Allowed values: about:blank urn:tasksmate:problem:validation urn:tasksmate:problem:invalid-parameter urn:tasksmate:problem:precondition-failed urn:tasksmate:problem:idempotency-key-reused urn:tasksmate:problem:idempotency-key-in-flight urn:tasksmate:problem:idempotency-key-invalid urn:tasksmate:problem:rate-limit urn:tasksmate:problem:internal urn:tasksmate:problem:token-invalid urn:tasksmate:problem:token-expired urn:tasksmate:problem:token-revoked urn:tasksmate:problem:insufficient-scope urn:tasksmate:problem:test-token-read-only urn:tasksmate:problem:token-policy urn:tasksmate:problem:url-refused
title
required
string
status
required
integer
detail
required

Human-readable explanation (a string; for a 422, the list of validation errors)

instance
required
string
request_id
required
string
errors

Structured failures: validation errors, or {loc, msg, allowed} for a bad parameter

Array<object>
object

Example

{
"type": "about:blank",
"title": "Missing or invalid bearer token",
"status": 401,
"detail": "…",
"instance": "/v1/…",
"request_id": "9b2f1c1e-8c1a-4a53-9f9e-0f5f1f2d7c11"
}

Authenticated, but not allowed

Media typeapplication/problem+json
Problem

An RFC 9457 problem details object — the body of every error response. detail is the human-readable explanation; request_id identifies the request for support.

object
type
required

about:blank or a urn:tasksmate:problem:* identifier

string
Allowed values: about:blank urn:tasksmate:problem:validation urn:tasksmate:problem:invalid-parameter urn:tasksmate:problem:precondition-failed urn:tasksmate:problem:idempotency-key-reused urn:tasksmate:problem:idempotency-key-in-flight urn:tasksmate:problem:idempotency-key-invalid urn:tasksmate:problem:rate-limit urn:tasksmate:problem:internal urn:tasksmate:problem:token-invalid urn:tasksmate:problem:token-expired urn:tasksmate:problem:token-revoked urn:tasksmate:problem:insufficient-scope urn:tasksmate:problem:test-token-read-only urn:tasksmate:problem:token-policy urn:tasksmate:problem:url-refused
title
required
string
status
required
integer
detail
required

Human-readable explanation (a string; for a 422, the list of validation errors)

instance
required
string
request_id
required
string
errors

Structured failures: validation errors, or {loc, msg, allowed} for a bad parameter

Array<object>
object

Example

{
"type": "about:blank",
"title": "Authenticated, but not allowed",
"status": 403,
"detail": "…",
"instance": "/v1/…",
"request_id": "9b2f1c1e-8c1a-4a53-9f9e-0f5f1f2d7c11"
}

Not found

Media typeapplication/problem+json
Problem

An RFC 9457 problem details object — the body of every error response. detail is the human-readable explanation; request_id identifies the request for support.

object
type
required

about:blank or a urn:tasksmate:problem:* identifier

string
Allowed values: about:blank urn:tasksmate:problem:validation urn:tasksmate:problem:invalid-parameter urn:tasksmate:problem:precondition-failed urn:tasksmate:problem:idempotency-key-reused urn:tasksmate:problem:idempotency-key-in-flight urn:tasksmate:problem:idempotency-key-invalid urn:tasksmate:problem:rate-limit urn:tasksmate:problem:internal urn:tasksmate:problem:token-invalid urn:tasksmate:problem:token-expired urn:tasksmate:problem:token-revoked urn:tasksmate:problem:insufficient-scope urn:tasksmate:problem:test-token-read-only urn:tasksmate:problem:token-policy urn:tasksmate:problem:url-refused
title
required
string
status
required
integer
detail
required

Human-readable explanation (a string; for a 422, the list of validation errors)

instance
required
string
request_id
required
string
errors

Structured failures: validation errors, or {loc, msg, allowed} for a bad parameter

Array<object>
object

Example

{
"type": "about:blank",
"title": "Not found",
"status": 404,
"detail": "…",
"instance": "/v1/…",
"request_id": "9b2f1c1e-8c1a-4a53-9f9e-0f5f1f2d7c11"
}

Conflict (a duplicate, or an Idempotency-Key still in flight)

Media typeapplication/problem+json
Problem

An RFC 9457 problem details object — the body of every error response. detail is the human-readable explanation; request_id identifies the request for support.

object
type
required

about:blank or a urn:tasksmate:problem:* identifier

string
Allowed values: about:blank urn:tasksmate:problem:validation urn:tasksmate:problem:invalid-parameter urn:tasksmate:problem:precondition-failed urn:tasksmate:problem:idempotency-key-reused urn:tasksmate:problem:idempotency-key-in-flight urn:tasksmate:problem:idempotency-key-invalid urn:tasksmate:problem:rate-limit urn:tasksmate:problem:internal urn:tasksmate:problem:token-invalid urn:tasksmate:problem:token-expired urn:tasksmate:problem:token-revoked urn:tasksmate:problem:insufficient-scope urn:tasksmate:problem:test-token-read-only urn:tasksmate:problem:token-policy urn:tasksmate:problem:url-refused
title
required
string
status
required
integer
detail
required

Human-readable explanation (a string; for a 422, the list of validation errors)

instance
required
string
request_id
required
string
errors

Structured failures: validation errors, or {loc, msg, allowed} for a bad parameter

Array<object>
object

Example

{
"type": "about:blank",
"title": "Conflict (a duplicate, or an `Idempotency-Key` still in flight)",
"status": 409,
"detail": "…",
"instance": "/v1/…",
"request_id": "9b2f1c1e-8c1a-4a53-9f9e-0f5f1f2d7c11"
}

If-Match does not match the current ETag

Media typeapplication/problem+json
Problem

An RFC 9457 problem details object — the body of every error response. detail is the human-readable explanation; request_id identifies the request for support.

object
type
required

about:blank or a urn:tasksmate:problem:* identifier

string
Allowed values: about:blank urn:tasksmate:problem:validation urn:tasksmate:problem:invalid-parameter urn:tasksmate:problem:precondition-failed urn:tasksmate:problem:idempotency-key-reused urn:tasksmate:problem:idempotency-key-in-flight urn:tasksmate:problem:idempotency-key-invalid urn:tasksmate:problem:rate-limit urn:tasksmate:problem:internal urn:tasksmate:problem:token-invalid urn:tasksmate:problem:token-expired urn:tasksmate:problem:token-revoked urn:tasksmate:problem:insufficient-scope urn:tasksmate:problem:test-token-read-only urn:tasksmate:problem:token-policy urn:tasksmate:problem:url-refused
title
required
string
status
required
integer
detail
required

Human-readable explanation (a string; for a 422, the list of validation errors)

instance
required
string
request_id
required
string
errors

Structured failures: validation errors, or {loc, msg, allowed} for a bad parameter

Array<object>
object

Example

{
"type": "about:blank",
"title": "`If-Match` does not match the current `ETag`",
"status": 412,
"detail": "…",
"instance": "/v1/…",
"request_id": "9b2f1c1e-8c1a-4a53-9f9e-0f5f1f2d7c11"
}

The body or query did not validate (validation), or an Idempotency-Key was reused

Media typeapplication/problem+json
Problem

An RFC 9457 problem details object — the body of every error response. detail is the human-readable explanation; request_id identifies the request for support.

object
type
required

about:blank or a urn:tasksmate:problem:* identifier

string
Allowed values: about:blank urn:tasksmate:problem:validation urn:tasksmate:problem:invalid-parameter urn:tasksmate:problem:precondition-failed urn:tasksmate:problem:idempotency-key-reused urn:tasksmate:problem:idempotency-key-in-flight urn:tasksmate:problem:idempotency-key-invalid urn:tasksmate:problem:rate-limit urn:tasksmate:problem:internal urn:tasksmate:problem:token-invalid urn:tasksmate:problem:token-expired urn:tasksmate:problem:token-revoked urn:tasksmate:problem:insufficient-scope urn:tasksmate:problem:test-token-read-only urn:tasksmate:problem:token-policy urn:tasksmate:problem:url-refused
title
required
string
status
required
integer
detail
required

Human-readable explanation (a string; for a 422, the list of validation errors)

instance
required
string
request_id
required
string
errors

Structured failures: validation errors, or {loc, msg, allowed} for a bad parameter

Array<object>
object

Example

{
"type": "about:blank",
"title": "The body or query did not validate (`validation`), or an `Idempotency-Key` was reused",
"status": 422,
"detail": "…",
"instance": "/v1/…",
"request_id": "9b2f1c1e-8c1a-4a53-9f9e-0f5f1f2d7c11"
}

An access token over its per-minute limit (rate-limit; see Retry-After)

Media typeapplication/problem+json
Problem

An RFC 9457 problem details object — the body of every error response. detail is the human-readable explanation; request_id identifies the request for support.

object
type
required

about:blank or a urn:tasksmate:problem:* identifier

string
Allowed values: about:blank urn:tasksmate:problem:validation urn:tasksmate:problem:invalid-parameter urn:tasksmate:problem:precondition-failed urn:tasksmate:problem:idempotency-key-reused urn:tasksmate:problem:idempotency-key-in-flight urn:tasksmate:problem:idempotency-key-invalid urn:tasksmate:problem:rate-limit urn:tasksmate:problem:internal urn:tasksmate:problem:token-invalid urn:tasksmate:problem:token-expired urn:tasksmate:problem:token-revoked urn:tasksmate:problem:insufficient-scope urn:tasksmate:problem:test-token-read-only urn:tasksmate:problem:token-policy urn:tasksmate:problem:url-refused
title
required
string
status
required
integer
detail
required

Human-readable explanation (a string; for a 422, the list of validation errors)

instance
required
string
request_id
required
string
errors

Structured failures: validation errors, or {loc, msg, allowed} for a bad parameter

Array<object>
object

Example

{
"type": "about:blank",
"title": "An access token over its per-minute limit (`rate-limit`; see `Retry-After`)",
"status": 429,
"detail": "…",
"instance": "/v1/…",
"request_id": "9b2f1c1e-8c1a-4a53-9f9e-0f5f1f2d7c11"
}

Unexpected server error — quote request_id

Media typeapplication/problem+json
Problem

An RFC 9457 problem details object — the body of every error response. detail is the human-readable explanation; request_id identifies the request for support.

object
type
required

about:blank or a urn:tasksmate:problem:* identifier

string
Allowed values: about:blank urn:tasksmate:problem:validation urn:tasksmate:problem:invalid-parameter urn:tasksmate:problem:precondition-failed urn:tasksmate:problem:idempotency-key-reused urn:tasksmate:problem:idempotency-key-in-flight urn:tasksmate:problem:idempotency-key-invalid urn:tasksmate:problem:rate-limit urn:tasksmate:problem:internal urn:tasksmate:problem:token-invalid urn:tasksmate:problem:token-expired urn:tasksmate:problem:token-revoked urn:tasksmate:problem:insufficient-scope urn:tasksmate:problem:test-token-read-only urn:tasksmate:problem:token-policy urn:tasksmate:problem:url-refused
title
required
string
status
required
integer
detail
required

Human-readable explanation (a string; for a 422, the list of validation errors)

instance
required
string
request_id
required
string
errors

Structured failures: validation errors, or {loc, msg, allowed} for a bad parameter

Array<object>
object

Example

{
"type": "about:blank",
"title": "Unexpected server error",
"status": 500,
"detail": "…",
"instance": "/v1/…",
"request_id": "9b2f1c1e-8c1a-4a53-9f9e-0f5f1f2d7c11"
}