List all manual position categories
Retrieves all manual position categories for the workspace, sorted alphabetically by name.
What are Manual Position Categories? Manual position categories are organizational labels used to group and structure manual positions (custom invoice line items) in projects. Categories help organize manual positions for better clarity in offers and invoices, making it easier to understand different types of services or costs.
What is returned:
- List of all active categories with:
id: Unique category identifier (UUID)name: Category name (e.g., “Development”, “Consulting”, “Travel Expenses”)
How it works:
- Categories are workspace-wide and can be used across all projects
- Categories are sorted alphabetically by name for consistent ordering
- Only active (non-deleted) categories are returned
- Categories can be assigned to manual positions when creating or updating them
Use cases:
- Organizing manual positions by service type (e.g., “Development”, “Design”, “Consulting”)
- Grouping costs by nature (e.g., “Travel Expenses”, “External Services”, “Licenses”)
- Improving invoice readability by categorizing line items
GET
/workspace/manual-position-categoriesAuthorization
AuthorizationOAuth2 access token · headerrequiredScopes:
api:reador
AuthorizationBearer token (JWT) · headerrequiredResponses
200
Array of
ManualPositionCategoryResponseDtoidstringrequiredUnique category identifier. A UUID that uniquely identifies this category within the workspace. Use this ID when assigning the category to manual positions or when updating/deleting the category.
namestringrequiredCategory name. The display name of the category as it appears in the application. This is the name that will be shown when the category is assigned to manual positions in offers and invoices.
401Unauthorized - Invalid or missing authentication token
403Forbidden - Insufficient API scopes or permissions
Request
curl -X GET "https://leadtime.app/api/public/workspace/manual-position-categories" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN"const response = await fetch("https://leadtime.app/api/public/workspace/manual-position-categories", {
method: "GET",
headers: {
"Authorization": "Bearer YOUR_ACCESS_TOKEN"
}
});import requests
response = requests.get(
"https://leadtime.app/api/public/workspace/manual-position-categories",
headers={
"Authorization": "Bearer YOUR_ACCESS_TOKEN"
},
)Response
[
{
"id": "550e8400-e29b-41d4-a716-446655440000",
"name": "Development"
}
]Unauthorized - Invalid or missing authentication token
Forbidden - Insufficient API scopes or permissions