RecoupGet a Free AuditFree Audit

API REFERENCE

List Task Comments

On this page
GET/api/projects/{projectId}/tasks/{taskId}/comments

Every comment on a task, oldest first.

Authentication

x-api-key in header

bearerAuth bearer

Request

cURL
curl --request GET \
  --url 'https://api.recoupable.dev/api/projects/YOUR_PROJECT_ID/tasks/YOUR_TASK_ID/comments' \
  --header 'x-api-key: YOUR_API_KEY'

Replace the YOUR_ placeholders with your values. Required query parameters are included; optional parameters are listed below.

Parameters

Path parameters

projectIdstringrequired

The project's UUID.

taskIdstringrequired

The task's UUID.

Responses

200The task's comments.

application/json

statusstringrequired
commentsarray<ProjectComment>required
Item properties for comments
idstringrequired

format: uuid

task_idstringrequired

format: uuid

account_idstringrequired

format: uuid

author_namestringnullable

The author's accounts.name, resolved server-side. Frequently null; render a fallback.

bodystringrequired
created_atstringrequired

format: date-time

400Bad request — invalid path parameter or request body.

application/json

statusstring · enumrequired

Always "error" for error responses.

Values: "error"

errorstringrequired

Human-readable error message.

messagestring

Carries the message in place of error when the failure comes from the authentication layer, so a 401 raised while verifying the credential reads message and every other error reads error.

401Unauthorized — missing or invalid credentials.

application/json

statusstring · enumrequired

Always "error" for error responses.

Values: "error"

errorstringrequired

Human-readable error message.

messagestring

Carries the message in place of error when the failure comes from the authentication layer, so a 401 raised while verifying the credential reads message and every other error reads error.

404Not found — either no project or task with this id exists, or the authenticated account is not a collaborator on it. The two cases are deliberately indistinguishable so the response cannot be used to discover which project ids are real.

application/json

statusstring · enumrequired

Always "error" for error responses.

Values: "error"

errorstringrequired

Human-readable error message.

messagestring

Carries the message in place of error when the failure comes from the authentication layer, so a 401 raised while verifying the credential reads message and every other error reads error.

500Internal server error.

application/json

statusstring · enumrequired

Always "error" for error responses.

Values: "error"

errorstringrequired

Human-readable error message.

messagestring

Carries the message in place of error when the failure comes from the authentication layer, so a 401 raised while verifying the credential reads message and every other error reads error.

Full specification

Download the OpenAPI file for complete schemas, constraints, and examples.

Download projects.json
View operation source
json
{
  "summary": "List task comments",
  "description": "Every comment on a task, oldest first.",
  "security": [
    {
      "apiKeyAuth": []
    },
    {
      "bearerAuth": []
    }
  ],
  "parameters": [
    {
      "name": "projectId",
      "in": "path",
      "required": true,
      "description": "The project's UUID.",
      "schema": {
        "type": "string",
        "format": "uuid"
      }
    },
    {
      "name": "taskId",
      "in": "path",
      "required": true,
      "description": "The task's UUID.",
      "schema": {
        "type": "string",
        "format": "uuid"
      }
    }
  ],
  "responses": {
    "200": {
      "description": "The task's comments.",
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/ProjectCommentsResponse"
          }
        }
      }
    },
    "400": {
      "description": "Bad request — invalid path parameter or request body.",
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/Error"
          }
        }
      }
    },
    "401": {
      "description": "Unauthorized — missing or invalid credentials.",
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/Error"
          }
        }
      }
    },
    "404": {
      "description": "Not found — either no project or task with this id exists, or the authenticated account is not a collaborator on it. The two cases are deliberately indistinguishable so the response cannot be used to discover which project ids are real.",
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/Error"
          }
        }
      }
    },
    "500": {
      "description": "Internal server error.",
      "content": {
        "application/json": {
          "schema": {
            "$ref": "#/components/schemas/Error"
          }
        }
      }
    }
  }
}