Documentation Index
Fetch the complete documentation index at: https://mintlify.com/cgwire/zou/llms.txt
Use this file to discover all available pages before exploring further.
Core Project Endpoints
Get Open Projects
Retrieve all currently active projects. This endpoint returns projects with “Open”, “open”, or “Active” status, along with enriched data including metadata descriptors, task types, and task statuses.
Authentication: Required (JWT)
Query Parameters
Response
Project unique identifier
Project status identifier
Type of production (short, tvshow, featurefilm, etc.)
Visual style (2d, 3d, vfx, etc.)
Array of metadata descriptors for this project
Task type IDs mapped to their priority values
Task status IDs mapped to priority and roles_for_board
First episode ID (for TV shows)
Example Request
curl -X GET "https://kitsu.example.com/api/data/projects/open" \
-H "Authorization: Bearer YOUR_TOKEN"
Example Response
[
{
"id": "a24a6ea4-ce75-4665-a070-57453082c25",
"name": "My Animation Project",
"code": "MAP",
"description": "An exciting animation production",
"project_status_id": "b35b7fb5-df86-5776-b181-68564193d36",
"production_type": "short",
"production_style": "3d",
"fps": "24",
"ratio": "16:9",
"resolution": "1920x1080",
"start_date": "2024-01-01",
"end_date": "2024-12-31",
"descriptors": [
{
"id": "c46c8gc6-eg97-6887-c292-79675204e47",
"name": "Difficulty",
"field_name": "difficulty",
"data_type": "list",
"choices": ["easy", "medium", "hard"],
"entity_type": "Asset",
"for_client": false
}
],
"task_types_priority": {
"d57d9hd7-fh08-7998-d403-02120870i92": 1,
"e68e0ie8-gi19-8009-e514-91897426g69": 2
},
"task_statuses_link": {
"f79f1jf9-hj20-9110-f625-02908537h70": {
"priority": 1,
"roles_for_board": ["user", "admin"]
}
},
"has_avatar": true,
"created_at": "2023-12-01T10:00:00Z",
"updated_at": "2024-01-15T14:30:00Z"
}
]
Get All Projects
Retrieve all projects in the database regardless of status. Requires manager or admin permissions. Regular users will only see their assigned projects.
Authentication: Required (JWT)
Permissions: Manager or Admin (regular users see only their projects)
Query Parameters
Filter projects by exact name match
Response
Project unique identifier
Project status identifier
Name of the project status
Example Request
curl -X GET "https://kitsu.example.com/api/data/projects/all" \
-H "Authorization: Bearer YOUR_TOKEN"
Example Response
[
{
"id": "a24a6ea4-ce75-4665-a070-57453082c25",
"name": "My Animation Project",
"code": "MAP",
"project_status_id": "b35b7fb5-df86-5776-b181-68564193d36",
"project_status_name": "Open",
"description": "An exciting animation production",
"production_type": "short",
"created_at": "2023-12-01T10:00:00Z"
},
{
"id": "b35b7fb5-df86-5776-b181-68564193d36",
"name": "Archived Project",
"code": "ARCH",
"project_status_id": "c46c8gc6-eg97-6887-c292-79675204e47",
"project_status_name": "Closed",
"description": "Completed project",
"production_type": "commercial",
"created_at": "2022-01-01T10:00:00Z"
}
]
Team Management
Get Production Team
Retrieve all people assigned to the project team.
Authentication: Required (JWT)
Path Parameters
Project unique identifier
Response
Person’s role (user, admin, manager, client, vendor)
Department IDs the person belongs to
Example Request
curl -X GET "https://kitsu.example.com/api/data/projects/a24a6ea4-ce75-4665-a070-57453082c25/team" \
-H "Authorization: Bearer YOUR_TOKEN"
Example Response
[
{
"id": "d57d9hd7-fh08-7998-d403-02120870i92",
"first_name": "John",
"last_name": "Doe",
"email": "john.doe@example.com",
"role": "user",
"departments": ["e68e0ie8-gi19-8009-e514-91897426g69"],
"active": true
},
{
"id": "e68e0ie8-gi19-8009-e514-91897426g69",
"first_name": "Jane",
"last_name": "Smith",
"email": "jane.smith@example.com",
"role": "manager",
"departments": [],
"active": true
}
]
Add Person to Team
Add a person to the project team.
Authentication: Required (JWT)
Permissions: Manager on project
Path Parameters
Project unique identifier
Request Body
ID of the person to add to the team
Response
Example Request
curl -X POST "https://kitsu.example.com/api/data/projects/a24a6ea4-ce75-4665-a070-57453082c25/team" \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"person_id": "d57d9hd7-fh08-7998-d403-02120870i92"
}'
Example Response
{
"id": "a24a6ea4-ce75-4665-a070-57453082c25",
"name": "My Animation Project",
"team": [
"d57d9hd7-fh08-7998-d403-02120870i92",
"e68e0ie8-gi19-8009-e514-91897426g69"
]
}
Remove Person from Team
Remove a person from the project team.
Authentication: Required (JWT)
Permissions: Manager on project
Path Parameters
Project unique identifier
Person unique identifier to remove
Response
Returns 204 No Content on success
Example Request
curl -X DELETE "https://kitsu.example.com/api/data/projects/a24a6ea4-ce75-4665-a070-57453082c25/team/d57d9hd7-fh08-7998-d403-02120870i92" \
-H "Authorization: Bearer YOUR_TOKEN"
Task Type Settings
Get Project Task Types
Retrieve all task types linked to the project.
Authentication: Required (JWT)
Path Parameters
Project unique identifier
Response
Task type unique identifier
Task type name (e.g., “Modeling”, “Animation”)
Entity type (Asset, Shot, Edit, etc.)
Example Request
curl -X GET "https://kitsu.example.com/api/data/projects/a24a6ea4-ce75-4665-a070-57453082c25/task-types" \
-H "Authorization: Bearer YOUR_TOKEN"
Example Response
[
{
"id": "f79f1jf9-hj20-9110-f625-02908537h70",
"name": "Modeling",
"short_name": "mdl",
"color": "#3273dc",
"for_entity": "Asset",
"priority": 1
},
{
"id": "g80g2kg0-ik31-0221-g736-13019648i81",
"name": "Animation",
"short_name": "anim",
"color": "#22d160",
"for_entity": "Shot",
"priority": 2
}
]
Add Task Type to Project
Add a task type to the project configuration.
Authentication: Required (JWT)
Permissions: Manager on project
Path Parameters
Project unique identifier
Request Body
ID of the task type to add
Display priority for ordering (optional)
Response
Example Request
curl -X POST "https://kitsu.example.com/api/data/projects/a24a6ea4-ce75-4665-a070-57453082c25/settings/task-types" \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"task_type_id": "f79f1jf9-hj20-9110-f625-02908537h70",
"priority": 1
}'
Remove Task Type from Project
Remove a task type from the project configuration.
Authentication: Required (JWT)
Permissions: Manager on project
Path Parameters
Project unique identifier
Task type unique identifier to remove
Response
Returns 204 No Content on success
Example Request
curl -X DELETE "https://kitsu.example.com/api/data/projects/a24a6ea4-ce75-4665-a070-57453082c25/settings/task-types/f79f1jf9-hj20-9110-f625-02908537h70" \
-H "Authorization: Bearer YOUR_TOKEN"
Task Status Settings
Get Project Task Statuses
Retrieve all task statuses linked to the project.
Authentication: Required (JWT)
Path Parameters
Project unique identifier
Response
Task status unique identifier
Task status name (e.g., “Todo”, “WIP”, “Done”)
Whether this status marks completion
Example Request
curl -X GET "https://kitsu.example.com/api/data/projects/a24a6ea4-ce75-4665-a070-57453082c25/settings/task-status" \
-H "Authorization: Bearer YOUR_TOKEN"
Add Task Status to Project
Add a task status to the project configuration.
Authentication: Required (JWT)
Permissions: Manager on project
Path Parameters
Project unique identifier
Request Body
ID of the task status to add
Response
Example Request
curl -X POST "https://kitsu.example.com/api/data/projects/a24a6ea4-ce75-4665-a070-57453082c25/settings/task-status" \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"task_status_id": "h91h3lh1-jl42-1332-h847-24120759j92"
}'
Remove Task Status from Project
Remove a task status from the project configuration.
Authentication: Required (JWT)
Permissions: Manager on project
Path Parameters
Project unique identifier
Task status unique identifier to remove
Response
Returns 204 No Content on success
Example Request
curl -X DELETE "https://kitsu.example.com/api/data/projects/a24a6ea4-ce75-4665-a070-57453082c25/settings/task-status/h91h3lh1-jl42-1332-h847-24120759j92" \
-H "Authorization: Bearer YOUR_TOKEN"
Asset Type Settings
Add Asset Type to Project
Add an asset type to the project configuration.
Authentication: Required (JWT)
Permissions: Manager on project
Path Parameters
Project unique identifier
Request Body
ID of the asset type to add
Response
Example Request
curl -X POST "https://kitsu.example.com/api/data/projects/a24a6ea4-ce75-4665-a070-57453082c25/settings/asset-types" \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"asset_type_id": "c46c8gc6-eg97-6887-c292-79675204e47"
}'
Remove Asset Type from Project
Remove an asset type from the project configuration.
Authentication: Required (JWT)
Permissions: Manager on project
Path Parameters
Project unique identifier
Asset type unique identifier to remove
Response
Returns 204 No Content on success
Example Request
curl -X DELETE "https://kitsu.example.com/api/data/projects/a24a6ea4-ce75-4665-a070-57453082c25/settings/asset-types/c46c8gc6-eg97-6887-c292-79675204e47" \
-H "Authorization: Bearer YOUR_TOKEN"
Retrieve all metadata descriptors (custom fields) for the project.
Authentication: Required (JWT)
Path Parameters
Project unique identifier
Response
Metadata descriptor unique identifier
Entity type (Asset, Shot, Edit, Episode, Sequence)
Data type (string, number, boolean, list, etc.)
Available choices for list fields
Whether visible to clients
Department IDs that can access this field
Example Request
curl -X GET "https://kitsu.example.com/api/data/projects/a24a6ea4-ce75-4665-a070-57453082c25/metadata-descriptors" \
-H "Authorization: Bearer YOUR_TOKEN"
Example Response
[
{
"id": "i02i4mi2-km53-2443-i958-35231860k03",
"name": "Difficulty",
"field_name": "difficulty",
"entity_type": "Asset",
"data_type": "list",
"choices": ["easy", "medium", "hard"],
"for_client": false,
"departments": [],
"position": 1
},
{
"id": "j13j5nj3-ln64-3554-j069-46342971l14",
"name": "Frame Range",
"field_name": "frame_range",
"entity_type": "Shot",
"data_type": "string",
"choices": [],
"for_client": false,
"departments": [],
"position": 2
}
]
Create a new metadata descriptor (custom field) for the project.
Authentication: Required (JWT)
Permissions: Manager on project
Path Parameters
Project unique identifier
Request Body
Display name for the field
Entity type: “Asset”, “Shot”, “Edit”, “Episode”, or “Sequence” (default: “Asset”)
Data type: “string”, “number”, “boolean”, “list”, “checklist”, “tags”, etc.
List of choices for list/dropdown fields
Whether visible to clients: “True” or “False” (default: “False”)
Array of department IDs that can access this field
Response
Created metadata descriptor object
Error Codes
- 400: Invalid parameters (wrong entity_type, data_type, or empty name)
Example Request
curl -X POST "https://kitsu.example.com/api/data/projects/a24a6ea4-ce75-4665-a070-57453082c25/metadata-descriptors" \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"name": "Difficulty",
"entity_type": "Asset",
"data_type": "list",
"choices": ["easy", "medium", "hard"],
"for_client": "False",
"departments": []
}'
Example Response
{
"id": "i02i4mi2-km53-2443-i958-35231860k03",
"name": "Difficulty",
"field_name": "difficulty",
"entity_type": "Asset",
"data_type": "list",
"choices": ["easy", "medium", "hard"],
"for_client": false,
"departments": [],
"position": 1,
"created_at": "2024-01-15T10:30:00Z"
}
Retrieve a specific metadata descriptor.
Authentication: Required (JWT)
Path Parameters
Project unique identifier
Metadata descriptor unique identifier
Response
Metadata descriptor object
Example Request
curl -X GET "https://kitsu.example.com/api/data/projects/a24a6ea4-ce75-4665-a070-57453082c25/metadata-descriptors/i02i4mi2-km53-2443-i958-35231860k03" \
-H "Authorization: Bearer YOUR_TOKEN"
Update a metadata descriptor.
Authentication: Required (JWT)
Permissions: Manager on project
Path Parameters
Project unique identifier
Metadata descriptor unique identifier
Request Body
Updated array of department IDs
Response
Updated metadata descriptor object
Example Request
curl -X PUT "https://kitsu.example.com/api/data/projects/a24a6ea4-ce75-4665-a070-57453082c25/metadata-descriptors/i02i4mi2-km53-2443-i958-35231860k03" \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"name": "Asset Complexity",
"choices": ["simple", "moderate", "complex", "very complex"]
}'
Delete a metadata descriptor. This will also remove the field data from all entities.
Authentication: Required (JWT)
Permissions: Manager on project
Path Parameters
Project unique identifier
Metadata descriptor unique identifier
Response
Returns 204 No Content on success
Example Request
curl -X DELETE "https://kitsu.example.com/api/data/projects/a24a6ea4-ce75-4665-a070-57453082c25/metadata-descriptors/i02i4mi2-km53-2443-i958-35231860k03" \
-H "Authorization: Bearer YOUR_TOKEN"
Reorder metadata descriptors for a specific entity type. This sets the display order in the UI.
Authentication: Required (JWT)
Permissions: Manager on project
Path Parameters
Project unique identifier
Request Body
Entity type: “Asset”, “Shot”, “Edit”, “Episode”, or “Sequence”
Array of descriptor IDs in the desired order
Response
Reordered array of metadata descriptors
Example Request
curl -X POST "https://kitsu.example.com/api/data/projects/a24a6ea4-ce75-4665-a070-57453082c25/metadata-descriptors/reorder" \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"entity_type": "Asset",
"descriptor_ids": [
"j13j5nj3-ln64-3554-j069-46342971l14",
"i02i4mi2-km53-2443-i958-35231860k03"
]
}'
Status Automations
Get Status Automations
Retrieve all status automations linked to the project.
Authentication: Required (JWT)
Permissions: Manager on project
Path Parameters
Project unique identifier
Response
Array of status automation objects
Example Request
curl -X GET "https://kitsu.example.com/api/data/projects/a24a6ea4-ce75-4665-a070-57453082c25/settings/status-automations" \
-H "Authorization: Bearer YOUR_TOKEN"
Add Status Automation to Project
Add a status automation to the project.
Authentication: Required (JWT)
Permissions: Manager on project
Path Parameters
Project unique identifier
Request Body
ID of the status automation to add
Response
Example Request
curl -X POST "https://kitsu.example.com/api/data/projects/a24a6ea4-ce75-4665-a070-57453082c25/settings/status-automations" \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"status_automation_id": "k24k6ok4-mo75-4665-k170-57564082l25"
}'
Remove Status Automation from Project
Remove a status automation from the project.
Authentication: Required (JWT)
Permissions: Manager on project
Path Parameters
Project unique identifier
Status automation unique identifier to remove
Response
Returns 204 No Content on success
Example Request
curl -X DELETE "https://kitsu.example.com/api/data/projects/a24a6ea4-ce75-4665-a070-57453082c25/settings/status-automations/k24k6ok4-mo75-4665-k170-57564082l25" \
-H "Authorization: Bearer YOUR_TOKEN"
Preview Background Files
Get Preview Background Files
Retrieve all preview background files linked to the project.
Authentication: Required (JWT)
Path Parameters
Project unique identifier
Response
Array of preview background file objects
Example Request
curl -X GET "https://kitsu.example.com/api/data/projects/a24a6ea4-ce75-4665-a070-57453082c25/settings/preview-background-files" \
-H "Authorization: Bearer YOUR_TOKEN"
Add Preview Background File to Project
Add a preview background file to the project.
Authentication: Required (JWT)
Permissions: Manager on project
Path Parameters
Project unique identifier
Request Body
preview_background_file_id
ID of the preview background file to add
Response
Example Request
curl -X POST "https://kitsu.example.com/api/data/projects/a24a6ea4-ce75-4665-a070-57453082c25/settings/preview-background-files" \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"preview_background_file_id": "l35l7pl5-np86-5776-l281-68675193m36"
}'
Remove Preview Background File from Project
Remove a preview background file from the project.
Authentication: Required (JWT)
Permissions: Manager on project
Path Parameters
Project unique identifier
preview_background_file_id
Preview background file unique identifier to remove
Response
Returns 204 No Content on success
Example Request
curl -X DELETE "https://kitsu.example.com/api/data/projects/a24a6ea4-ce75-4665-a070-57453082c25/settings/preview-background-files/l35l7pl5-np86-5776-l281-68675193m36" \
-H "Authorization: Bearer YOUR_TOKEN"
Time Tracking
Get Project Time Spents
Retrieve all time spent entries for the project.
Authentication: Required (JWT)
Path Parameters
Project unique identifier
Response
Array of time spent objects
Example Request
curl -X GET "https://kitsu.example.com/api/data/projects/a24a6ea4-ce75-4665-a070-57453082c25/time-spents" \
-H "Authorization: Bearer YOUR_TOKEN"
Get Task Type Time Spents
Retrieve time spent entries for a specific task type in the project.
Authentication: Required (JWT)
Permissions: Manager on project
Path Parameters
Project unique identifier
Task type unique identifier
Query Parameters
Start date for filtering (ISO 8601 format: YYYY-MM-DD)
End date for filtering (ISO 8601 format: YYYY-MM-DD)
Response
Dictionary of time spent data grouped by person
Example Request
curl -X GET "https://kitsu.example.com/api/data/projects/a24a6ea4-ce75-4665-a070-57453082c25/task-types/f79f1jf9-hj20-9110-f625-02908537h70/time-spents?start_date=2024-01-01&end_date=2024-01-31" \
-H "Authorization: Bearer YOUR_TOKEN"
Get Month Time Spents
Get aggregated time spents by month for the project.
Authentication: Required (JWT)
Permissions: Admin
Path Parameters
Project unique identifier
Response
Aggregated time spent data by month
Example Request
curl -X GET "https://kitsu.example.com/api/data/projects/a24a6ea4-ce75-4665-a070-57453082c25/budgets/time-spents" \
-H "Authorization: Bearer YOUR_TOKEN"
Get Day Offs
Retrieve day offs (vacations, holidays) for project team members.
Authentication: Required (JWT)
Permissions: Project member (not client/vendor)
Path Parameters
Project unique identifier
Query Parameters
Start date for filtering (ISO 8601 format: YYYY-MM-DD)
End date for filtering (ISO 8601 format: YYYY-MM-DD)
Response
Dictionary of day off entries
Example Request
curl -X GET "https://kitsu.example.com/api/data/projects/a24a6ea4-ce75-4665-a070-57453082c25/day-offs?start_date=2024-01-01&end_date=2024-12-31" \
-H "Authorization: Bearer YOUR_TOKEN"
Scheduling
Get Milestones
Retrieve all milestones for the project.
Authentication: Required (JWT)
Path Parameters
Project unique identifier
Response
Array of milestone objects
Example Request
curl -X GET "https://kitsu.example.com/api/data/projects/a24a6ea4-ce75-4665-a070-57453082c25/milestones" \
-H "Authorization: Bearer YOUR_TOKEN"
Get Schedule Items
Retrieve all schedule items for the project.
Authentication: Required (JWT)
Permissions: Project member (not vendor)
Path Parameters
Project unique identifier
Response
Array of schedule item objects
Example Request
curl -X GET "https://kitsu.example.com/api/data/projects/a24a6ea4-ce75-4665-a070-57453082c25/schedule-items" \
-H "Authorization: Bearer YOUR_TOKEN"
Get Task Type Schedule Items
Retrieve schedule items grouped by task type.
Authentication: Required (JWT)
Permissions: Project member (not vendor)
Path Parameters
Project unique identifier
Response
Array of task type schedule items
Example Request
curl -X GET "https://kitsu.example.com/api/data/projects/a24a6ea4-ce75-4665-a070-57453082c25/schedule-items/task-types" \
-H "Authorization: Bearer YOUR_TOKEN"
Get Asset Type Schedule Items
Retrieve schedule items for asset types within a task type.
Authentication: Required (JWT)
Permissions: Project member (not vendor)
Path Parameters
Project unique identifier
Task type unique identifier
Response
Array of asset type schedule items
Example Request
curl -X GET "https://kitsu.example.com/api/data/projects/a24a6ea4-ce75-4665-a070-57453082c25/schedule-items/f79f1jf9-hj20-9110-f625-02908537h70/asset-types" \
-H "Authorization: Bearer YOUR_TOKEN"
Get Episode Schedule Items
Retrieve schedule items for episodes within a task type.
Authentication: Required (JWT)
Permissions: Project member (not vendor)
Path Parameters
Project unique identifier
Task type unique identifier
Response
Array of episode schedule items
Example Request
curl -X GET "https://kitsu.example.com/api/data/projects/a24a6ea4-ce75-4665-a070-57453082c25/schedule-items/f79f1jf9-hj20-9110-f625-02908537h70/episodes" \
-H "Authorization: Bearer YOUR_TOKEN"
Get Sequence Schedule Items
Retrieve schedule items for sequences within a task type.
Authentication: Required (JWT)
Permissions: Project member (not vendor)
Path Parameters
Project unique identifier
Task type unique identifier
Response
Array of sequence schedule items
Example Request
curl -X GET "https://kitsu.example.com/api/data/projects/a24a6ea4-ce75-4665-a070-57453082c25/schedule-items/f79f1jf9-hj20-9110-f625-02908537h70/sequences" \
-H "Authorization: Bearer YOUR_TOKEN"
Budget Management
Get Budgets
Retrieve all budgets for the project.
Authentication: Required (JWT)
Permissions: Manager on project
Path Parameters
Project unique identifier
Response
Currency code (e.g., “USD”, “EUR”)
Example Request
curl -X GET "https://kitsu.example.com/api/data/projects/a24a6ea4-ce75-4665-a070-57453082c25/budgets" \
-H "Authorization: Bearer YOUR_TOKEN"
Example Response
[
{
"id": "m46m8qm6-oq97-6887-m392-79786304n47",
"name": "Q1 2024 Budget",
"currency": "USD",
"project_id": "a24a6ea4-ce75-4665-a070-57453082c25",
"created_at": "2024-01-01T10:00:00Z",
"updated_at": "2024-01-15T14:30:00Z"
}
]
Create Budget
Create a new budget for the project.
Authentication: Required (JWT)
Permissions: Manager on project
Path Parameters
Project unique identifier
Request Body
Currency code (default: “USD”)
Response
Example Request
curl -X POST "https://kitsu.example.com/api/data/projects/a24a6ea4-ce75-4665-a070-57453082c25/budgets" \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"name": "Q1 2024 Budget",
"currency": "USD"
}'
Get Budget
Retrieve a specific budget.
Authentication: Required (JWT)
Permissions: Manager on project
Path Parameters
Project unique identifier
Response
Example Request
curl -X GET "https://kitsu.example.com/api/data/projects/a24a6ea4-ce75-4665-a070-57453082c25/budgets/m46m8qm6-oq97-6887-m392-79786304n47" \
-H "Authorization: Bearer YOUR_TOKEN"
Update Budget
Update a budget.
Authentication: Required (JWT)
Permissions: Manager on project
Path Parameters
Project unique identifier
Request Body
Response
Example Request
curl -X PUT "https://kitsu.example.com/api/data/projects/a24a6ea4-ce75-4665-a070-57453082c25/budgets/m46m8qm6-oq97-6887-m392-79786304n47" \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"name": "Q1 2024 Budget (Revised)"
}'
Delete Budget
Delete a budget.
Authentication: Required (JWT)
Permissions: Manager on project
Path Parameters
Project unique identifier
Response
Returns 204 No Content on success
Example Request
curl -X DELETE "https://kitsu.example.com/api/data/projects/a24a6ea4-ce75-4665-a070-57453082c25/budgets/m46m8qm6-oq97-6887-m392-79786304n47" \
-H "Authorization: Bearer YOUR_TOKEN"
Budget Entries
Get Budget Entries
Retrieve all entries for a budget.
Authentication: Required (JWT)
Permissions: Manager on project
Path Parameters
Project unique identifier
Response
Person identifier (optional)
Example Request
curl -X GET "https://kitsu.example.com/api/data/projects/a24a6ea4-ce75-4665-a070-57453082c25/budgets/m46m8qm6-oq97-6887-m392-79786304n47/entries" \
-H "Authorization: Bearer YOUR_TOKEN"
Create Budget Entry
Create a new budget entry.
Authentication: Required (JWT)
Permissions: Manager on project
Path Parameters
Project unique identifier
Request Body
Department unique identifier
Person unique identifier (optional)
Start date (ISO 8601 format)
Response
Created budget entry object
Example Request
curl -X POST "https://kitsu.example.com/api/data/projects/a24a6ea4-ce75-4665-a070-57453082c25/budgets/m46m8qm6-oq97-6887-m392-79786304n47/entries" \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"department_id": "n57n9rn7-pr08-7998-n503-80897415o58",
"person_id": "d57d9hd7-fh08-7998-d403-02120870i92",
"position": "Senior Animator",
"seniority": "Senior",
"daily_salary": 450.00,
"start_date": "2024-01-01",
"months_duration": 6
}'
Get Budget Entry
Retrieve a specific budget entry.
Authentication: Required (JWT)
Permissions: Manager on project
Path Parameters
Project unique identifier
Budget entry unique identifier
Response
Example Request
curl -X GET "https://kitsu.example.com/api/data/projects/a24a6ea4-ce75-4665-a070-57453082c25/budgets/m46m8qm6-oq97-6887-m392-79786304n47/entries/o68o0so8-qs19-8109-o614-91008526p69" \
-H "Authorization: Bearer YOUR_TOKEN"
Update Budget Entry
Update a budget entry.
Authentication: Required (JWT)
Permissions: Manager on project
Path Parameters
Project unique identifier
Budget entry unique identifier
Request Body
Updated department identifier
Updated person identifier
Updated daily salary amount
Updated duration in months
Map of date-specific amount exceptions (key: date, value: amount)
Response
Updated budget entry object
Example Request
curl -X PUT "https://kitsu.example.com/api/data/projects/a24a6ea4-ce75-4665-a070-57453082c25/budgets/m46m8qm6-oq97-6887-m392-79786304n47/entries/o68o0so8-qs19-8109-o614-91008526p69" \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"daily_salary": 475.00,
"exceptions": {
"2024-02-01": 500.00,
"2024-03-01": 520.00
}
}'
Delete Budget Entry
Delete a budget entry.
Authentication: Required (JWT)
Permissions: Manager on project
Path Parameters
Project unique identifier
Budget entry unique identifier
Response
Returns 204 No Content on success
Example Request
curl -X DELETE "https://kitsu.example.com/api/data/projects/a24a6ea4-ce75-4665-a070-57453082c25/budgets/m46m8qm6-oq97-6887-m392-79786304n47/entries/o68o0so8-qs19-8109-o614-91008526p69" \
-H "Authorization: Bearer YOUR_TOKEN"
Production Schedule Versions
Get Schedule Version Task Links
Retrieve task links for a production schedule version.
Authentication: Required (JWT)
Permissions: Project member (not vendor/client)
Path Parameters
production_schedule_version_id
Production schedule version unique identifier
Query Parameters
Response
Array of task link objects
Example Request
curl -X GET "https://kitsu.example.com/api/data/production-schedule-versions/p79p1tp9-rt20-9220-p725-02119637q80/task-links" \
-H "Authorization: Bearer YOUR_TOKEN"
Set Task Links from Production
Set task links for a schedule version based on current production tasks.
Authentication: Required (JWT)
Permissions: Manager on project
Path Parameters
production_schedule_version_id
Production schedule version unique identifier
Response
Example Request
curl -X POST "https://kitsu.example.com/api/actions/production-schedule-versions/p79p1tp9-rt20-9220-p725-02119637q80/set-task-links-from-production" \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json"
Set Task Links from Schedule Version
Copy task links from another schedule version.
Authentication: Required (JWT)
Permissions: Manager on project
Path Parameters
production_schedule_version_id
Target production schedule version unique identifier
Request Body
production_schedule_version_id
Source production schedule version unique identifier to copy from
Response
Error Codes
- 400: Schedule versions must belong to the same project
Example Request
curl -X POST "https://kitsu.example.com/api/actions/production-schedule-versions/p79p1tp9-rt20-9220-p725-02119637q80/set-task-links-from-production-schedule-version" \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"production_schedule_version_id": "q80q2uq0-su31-0331-q836-13220748r91"
}'
Apply Schedule Version to Production
Apply a schedule version’s task links and dates to the actual production.
Authentication: Required (JWT)
Permissions: Manager on project
Path Parameters
production_schedule_version_id
Production schedule version unique identifier
Response
Example Request
curl -X POST "https://kitsu.example.com/api/actions/production-schedule-versions/p79p1tp9-rt20-9220-p725-02119637q80/apply-to-production" \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json"