Skip to main content

GET /api/v1/internal/projects

Returns a list of projects resources.

This endpoint documentation is generated from the current Fastify route implementation and should be treated as the implementation-level contract for this version of the API.

Source route file: src/api/routes/internal/private/bearer/projects/getAll.ts

Request Method

GET

Base URL

https://api.userdocks.local:5000

Endpoint

/api/v1/internal/projects

Path Variables

No path variables.

Query Parameters

VariableTypeRequiredDescription
pagestringfalseQuery parameter parsed by route handler.
limitstringfalseQuery parameter parsed by route handler.

HTTP Headers

VariableTypeRequiredDescription
AuthorizationstringtrueBearer token in the form Bearer <jwt>.
Content-TypestringfalseUse application/json for JSON request bodies.

Successful Response

Success status code(s): 200.

{
"kind": "projects",
"totalItems": 1,
"itemsLength": 1,
"items": [
{
"uuid": "8bb9e8a1-3333-4a2d-9f1a-333333333333",
"name": "Core Project",
"description": "Main project",
"isDisabled": false,
"createdAt": "2026-01-01T00:00:00.000Z",
"updatedAt": "2026-01-01T00:00:00.000Z"
}
]
}

Error Responses

HTTP StatusExample Error
401{"errors":[{"validation":"error","code":"[E4010]","message":"Unauthorized Token"}]}
403{"errors":[{"validation":"error","code":"[E4030]","message":"App Is Disabled"}]}
400{"errors":[{"validation":"error","code":"[E4000]","message":"Bad Request / validation error"}]}
500{"errors":[{"validation":"error","code":"[E0000]","message":"Internal Server Error"}]}

Example

const query = new URLSearchParams({
page: 'page-value',
limit: 'limit-value',
});
const url = `https://api.userdocks.local:5000/api/v1/internal/projects?${query.toString()}`;

const response = await fetch(url, {
method: 'GET',
headers: {
Authorization: 'Bearer <jwt>',
},
});
const data = await response.json();
console.log(response.status, data);