Skip to content
GET/{organizationId}/work/todo/items/{itemId}

Get todo item

Gets one todo item

Required permissions:

  • todoItem.read

Path Parameters

organizationIdstringrequired
itemIdstringrequired

Query Parameters

contextTypestringoptional

Options:

teameventresource
contextIdstringoptional

Authentication: X-API-Key

Request

GET/{organizationId}/work/todo/items/{itemId}
curl --request GET 'https://cloud.campai.com/api/{organizationId}/work/todo/items/{itemId}' \
  --header 'X-API-Key: YOUR_API_KEY'

Responses

This endpoint returns different response codes based on the request outcome.

200Successful response

Content-Type: application/json

ObjectId as string

createdAtdate-time | nulloptional
updatedAtdate-time | nulloptional
removedAtdate-time | nulloptional
__ignoreTriggersstring | nulloptional

ObjectId as string

ObjectId as string

childrenCountintegerrequired

minimum: 0

maximum: 100

childrenCompletedCountintegerrequired

minimum: 0

maximum: 100

commentsCountintegerrequired

minimum: 0

maximum: 9007199254740991

Additional properties are not allowed.

Additional properties are not allowed.

Additional properties are not allowed.

Additional properties are not allowed.

sequenceNumberintegerrequired

maximum: 9007199254740991

exclusiveMinimum: 0

titlestringrequired

minLength: 1

maxLength: 140

descriptionstringrequired

minLength: 1

maxLength: 10000

maxItems: 10

attachmentCountintegerrequired

minimum: 0

maximum: 10

maxItems: 100

tagsstring arrayrequired
dueDatedate-time | nullrequired

Additional properties are not allowed.

Additional properties are not allowed.

workCompletedAtdate-time | nullrequired
completedAtdate-time | nullrequired

Additional properties are not allowed.

currentAssignmentIndexintegerrequired

minimum: -1

maximum: 9007199254740991

Response

200
{
  "_id": "000000000000000000000001",
  "organization": "000000000000000000000001",
  "parentItem": "000000000000000000000001",
  "childrenCount": 0,
  "childrenCompletedCount": 0,
  "commentsCount": 0,
  "topic": {
    "_id": "000000000000000000000001",
    "name": "string",
    "identifier": "string",
    "color": "slate"
  },
  "type": {
    "_id": "000000000000000000000001",
    "name": "string",
    "emoji": "string"
  },
  "status": {
    "_id": "000000000000000000000001",
    "label": "string",
    "color": "slate",
    "role": "regular"
  },
  "context": {
    "type": "team",
    "teamId": "000000000000000000000001",
    "name": "string"
  },
  "project": {
    "_id": "000000000000000000000001",
    "name": "string",
    "color": "slate"
  },
  "sequenceNumber": 1,
  "title": "string",
  "description": "string",
  "customFields": {},
  "attachments": [
    {
      "resource": "string",
      "id": "string"
    }
  ],
  "attachmentCount": 0,
  "assignees": [
    {
      "id": "string",
      "actor": {
        "name": "string",
        "type": "user",
        "userId": "string",
        "image": {
          "resource": "string"
        }
      },
      "completedAt": "2026-06-15T22:30:00Z",
      "timeSpentMinutes": 0
    }
  ],
  "tags": "string",
  "dueDate": "2026-06-15T22:30:00Z",
  "reviewer": {
    "name": "string",
    "type": "user",
    "userId": "string",
    "image": {
      "resource": "string"
    }
  },
  "reviews": [
    {
      "_id": "000000000000000000000001",
      "round": 1,
      "reviewer": {
        "name": "string",
        "type": "user",
        "userId": "string",
        "image": {
          "resource": "string"
        }
      },
      "requestedAt": "2026-06-15T22:30:00Z",
      "requestedBy": {
        "name": "string",
        "type": "user",
        "userId": "string",
        "image": {
          "resource": "string"
        }
      },
      "workCompletedAt": "2026-06-15T22:30:00Z",
      "decision": "pending",
      "decidedAt": "2026-06-15T22:30:00Z",
      "decidedBy": {
        "name": "string",
        "type": "user",
        "userId": "string",
        "image": {
          "resource": "string"
        }
      },
      "note": "string"
    }
  ],
  "statusBeforeReview": {
    "_id": "000000000000000000000001",
    "label": "string",
    "color": "slate",
    "role": "regular"
  },
  "workCompletedAt": "2026-06-15T22:30:00Z",
  "completedAt": "2026-06-15T22:30:00Z",
  "statusBeforeCompletion": {
    "_id": "000000000000000000000001",
    "label": "string",
    "color": "slate",
    "role": "regular"
  },
  "currentAssignmentIndex": -1
}

400Invalid input data

Content-Type: application/json

The error information

messagestringrequired

The error message

codestringrequired

The error code

An array of issues that were responsible for the error

Response

400
{
  "code": "BAD_REQUEST",
  "message": "Invalid input data",
  "issues": []
}

401Authorization not provided

Content-Type: application/json

The error information

messagestringrequired

The error message

codestringrequired

The error code

An array of issues that were responsible for the error

Response

401
{
  "code": "UNAUTHORIZED",
  "message": "Authorization not provided",
  "issues": []
}

403Insufficient access

Content-Type: application/json

The error information

messagestringrequired

The error message

codestringrequired

The error code

An array of issues that were responsible for the error

Response

403
{
  "code": "FORBIDDEN",
  "message": "Insufficient access",
  "issues": []
}

404Not found

Content-Type: application/json

The error information

messagestringrequired

The error message

codestringrequired

The error code

An array of issues that were responsible for the error

Response

404
{
  "code": "NOT_FOUND",
  "message": "Not found",
  "issues": []
}

500Internal server error

Content-Type: application/json

The error information

messagestringrequired

The error message

codestringrequired

The error code

An array of issues that were responsible for the error

Response

500
{
  "code": "INTERNAL_SERVER_ERROR",
  "message": "Internal server error",
  "issues": []
}