> For the complete documentation index, see [llms.txt](https://docs.adaptria.locaria.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.adaptria.locaria.com/client-api/reference/projects.md).

# 🚀 Projects

### Project Management

Projects are active translation/localization work that began after accepting a quote. Track progress, download deliverables, and provide feedback.

#### Project Lifecycle

```
Draft ──▶ Active ──▶ Completed ──▶ Ready for Billing ──▶ Sent for Billing
  │
  └──▶ Cancelled
  └──▶ Overdue
```

#### Status Descriptions

| Status            | Description                                                                                                        |
| ----------------- | ------------------------------------------------------------------------------------------------------------------ |
| Draft             | Project created but not yet started                                                                                |
| Active            | Project is in progress                                                                                             |
| Completed         | All work is finished                                                                                               |
| Ready for Billing | Completed and ready for invoicing                                                                                  |
| Sent for Billing  | Invoice sent                                                                                                       |
| Cancelled         | Project was cancelled                                                                                              |
| Overdue           | Derived status: due date has passed and status is not Completed, Ready for Billing, Sent for Billing, or Cancelled |

#### Project Features

* **View Details**: Get complete project information including description, dates, and status
* **Download Deliverables**: Access final translated files and deliverables
* **Provide Feedback**: Add comments and feedback to communicate with the Locaria team
* **Track Progress**: Monitor project status and important dates

## 📋 List Projects

> \## List Your Projects\
> \
> Retrieve a paginated list of projects accessible to your API credentials.\
> \
> \### Filtering Options\
> \
> \| Parameter | Description |\
> \|-----------|-------------|\
> \| \`status\` | Filter by status (Draft, Active, Completed, etc.) |\
> \| \`search\` | Search by project name or project number |\
> \| \`page\` | Page number (starts at 1) |\
> \| \`limit\` | Items per page (max 100) |\
> \
> \### Response\
> \
> Returns a summary view of each project - use \`GET /api/public/v1/projects/:id\` for full details.

````json
{"openapi":"3.1.0","info":{"title":"Adaptria Public API: Client","version":"1.0.0"},"tags":[{"name":"🚀 Projects","description":"## Project Management\n\nProjects are active translation/localization work that began after accepting a quote. Track progress, download deliverables, and provide feedback.\n\n### Project Lifecycle\n\n```\nDraft ──▶ Active ──▶ Completed ──▶ Ready for Billing ──▶ Sent for Billing\n  │\n  └──▶ Cancelled\n  └──▶ Overdue\n```\n\n### Status Descriptions\n\n| Status | Description |\n|--------|-------------|\n| Draft | Project created but not yet started |\n| Active | Project is in progress |\n| Completed | All work is finished |\n| Ready for Billing | Completed and ready for invoicing |\n| Sent for Billing | Invoice sent |\n| Cancelled | Project was cancelled |\n| Overdue | Derived status: due date has passed and status is not Completed, Ready for Billing, Sent for Billing, or Cancelled |\n\n### Project Features\n\n- **View Details**: Get complete project information including description, dates, and status\n- **Download Deliverables**: Access final translated files and deliverables\n- **Provide Feedback**: Add comments and feedback to communicate with the Locaria team\n- **Track Progress**: Monitor project status and important dates\n"}],"servers":[{"url":"https://api.adaptria.locaria.com","description":"Production Environment"}],"security":[{"apiKeyAuth":[]}],"components":{"securitySchemes":{"apiKeyAuth":{"type":"apiKey","in":"header","name":"Api-key","description":"## API Key Authentication\n\nStatic API key obtained from the Adaptria Portal or via `POST /api/credentials/api-keys`.\n\n**How to authenticate**:\n1. Generate an API key from the Adaptria Portal (Settings → API Keys) or ask your admin\n2. Include the key in all requests using the `Api-key` header\n\n**Key format**: `lla_live_<32-character-string>`\n\n**No token exchange needed** — the key is used directly in every request. Revoke or rotate keys from the portal."}},"schemas":{"ListProjectsResponse":{"type":"object","properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"array","items":{"$ref":"#/components/schemas/ProjectListItem"},"description":"List of projects"},"pagination":{"$ref":"#/components/schemas/Pagination"}},"required":["success","data","pagination"]},"ProjectListItem":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Unique identifier for the project"},"projectNumber":{"type":["string","null"],"description":"Human-readable project number"},"projectName":{"type":["string","null"],"description":"Project name"},"status":{"type":"string","enum":["Draft","Active","Completed","Ready for Billing","Sent for Billing","Cancelled","Overdue"],"description":"Project lifecycle status:\n\n| Status | Description |\n|--------|-------------|\n| `Draft` | Project created but not yet started |\n| `Active` | Project is in progress |\n| `Completed` | All work is finished |\n| `Ready for Billing` | Completed and ready for invoicing |\n| `Sent for Billing` | Invoice sent |\n| `Cancelled` | Project was cancelled |\n| `Overdue` | Derived status: due date has passed and status is not Completed, Ready for Billing, Sent for Billing, or Cancelled |\n"},"companyId":{"type":["string","null"],"format":"uuid","description":"Company ID this project belongs to"},"companyName":{"type":["string","null"],"description":"Company name"},"companyUser":{"type":["object","null"],"properties":{"id":{"type":"string","format":"uuid","description":"User identifier"},"firstName":{"type":"string","description":"User first name"},"lastName":{"type":"string","description":"User last name"},"name":{"type":"string","description":"Full name"},"email":{"type":["string","null"],"format":"email","description":"User email address"}},"required":["id","firstName","lastName","name"],"description":"Company-side contact / project owner (client user)"},"createdBy":{"type":["string","null"],"format":"uuid","description":"User ID who created the project"},"projectDueDate":{"type":["string","null"],"format":"date","pattern":"^\\d{4}-\\d{2}-\\d{2}$","description":"Project delivery deadline"},"startDate":{"type":["string","null"],"format":"date","pattern":"^\\d{4}-\\d{2}-\\d{2}$","description":"Project start date"},"totalPrice":{"type":["object","null"],"properties":{"amount":{"type":"number","description":"Total price amount"},"currency":{"type":"string","minLength":3,"maxLength":3,"description":"Currency code (ISO 4217)"}},"required":["amount","currency"],"description":"Total project price"},"referenceNumber":{"type":["string","null"],"description":"Client or internal reference number"},"createdAt":{"type":"string","format":"date-time","description":"Date and time in ISO 8601 format"},"updatedAt":{"type":["string","null"],"format":"date-time","description":"Date and time in ISO 8601 format"}},"required":["id","projectNumber","projectName","status","companyId","companyName","projectDueDate","startDate","createdAt","updatedAt"]},"Pagination":{"type":"object","properties":{"page":{"type":"integer","exclusiveMinimum":0,"description":"Current page number (1-indexed)"},"limit":{"type":"integer","exclusiveMinimum":0,"maximum":100,"description":"Number of items per page (max 100)"},"total":{"type":"integer","minimum":0,"description":"Total number of items across all pages"},"totalPages":{"type":"integer","minimum":0,"description":"Total number of pages"},"hasNextPage":{"type":"boolean","description":"Whether there are more pages after the current page"},"hasPrevPage":{"type":"boolean","description":"Whether there are pages before the current page"}},"required":["page","limit","total","totalPages","hasNextPage","hasPrevPage"]}}},"paths":{"/api/public/v1/projects":{"get":{"summary":"📋 List Projects","description":"## List Your Projects\n\nRetrieve a paginated list of projects accessible to your API credentials.\n\n### Filtering Options\n\n| Parameter | Description |\n|-----------|-------------|\n| `status` | Filter by status (Draft, Active, Completed, etc.) |\n| `search` | Search by project name or project number |\n| `page` | Page number (starts at 1) |\n| `limit` | Items per page (max 100) |\n\n### Response\n\nReturns a summary view of each project - use `GET /api/public/v1/projects/:id` for full details.","tags":["🚀 Projects"],"parameters":[{"schema":{"type":"string","pattern":"^\\d+$","default":"1","description":"Page number to retrieve (starts from 1)"},"required":false,"description":"Page number to retrieve (starts from 1)","name":"page","in":"query"},{"schema":{"type":"string","pattern":"^\\d+$","default":"20","description":"Number of items per page (max 100)"},"required":false,"description":"Number of items per page (max 100)","name":"limit","in":"query"},{"schema":{"type":"string","description":"Filter by project status. Available values: Draft, Active, Completed, Ready for Billing, Sent for Billing, Cancelled, Overdue"},"required":false,"description":"Filter by project status. Available values: Draft, Active, Completed, Ready for Billing, Sent for Billing, Cancelled, Overdue","name":"status","in":"query"},{"schema":{"type":"string","description":"Search by project name or project number"},"required":false,"description":"Search by project name or project number","name":"search","in":"query"}],"responses":{"200":{"description":"Projects retrieved successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListProjectsResponse"}}}},"401":{"description":"Authentication required"}}}}}}
````

## 🔍 Get Project Details

> \## Get Full Project Details\
> \
> Retrieve complete information about a specific project, including:\
> \- Project number and name\
> \- Description and background information\
> \- Status and important dates\
> \- Company information\
> \- PO and reference numbers

````json
{"openapi":"3.1.0","info":{"title":"Adaptria Public API: Client","version":"1.0.0"},"tags":[{"name":"🚀 Projects","description":"## Project Management\n\nProjects are active translation/localization work that began after accepting a quote. Track progress, download deliverables, and provide feedback.\n\n### Project Lifecycle\n\n```\nDraft ──▶ Active ──▶ Completed ──▶ Ready for Billing ──▶ Sent for Billing\n  │\n  └──▶ Cancelled\n  └──▶ Overdue\n```\n\n### Status Descriptions\n\n| Status | Description |\n|--------|-------------|\n| Draft | Project created but not yet started |\n| Active | Project is in progress |\n| Completed | All work is finished |\n| Ready for Billing | Completed and ready for invoicing |\n| Sent for Billing | Invoice sent |\n| Cancelled | Project was cancelled |\n| Overdue | Derived status: due date has passed and status is not Completed, Ready for Billing, Sent for Billing, or Cancelled |\n\n### Project Features\n\n- **View Details**: Get complete project information including description, dates, and status\n- **Download Deliverables**: Access final translated files and deliverables\n- **Provide Feedback**: Add comments and feedback to communicate with the Locaria team\n- **Track Progress**: Monitor project status and important dates\n"}],"servers":[{"url":"https://api.adaptria.locaria.com","description":"Production Environment"}],"security":[{"apiKeyAuth":[]}],"components":{"securitySchemes":{"apiKeyAuth":{"type":"apiKey","in":"header","name":"Api-key","description":"## API Key Authentication\n\nStatic API key obtained from the Adaptria Portal or via `POST /api/credentials/api-keys`.\n\n**How to authenticate**:\n1. Generate an API key from the Adaptria Portal (Settings → API Keys) or ask your admin\n2. Include the key in all requests using the `Api-key` header\n\n**Key format**: `lla_live_<32-character-string>`\n\n**No token exchange needed** — the key is used directly in every request. Revoke or rotate keys from the portal."}},"schemas":{"GetProjectDetailsResponse":{"type":"object","properties":{"success":{"type":"boolean","enum":[true]},"data":{"$ref":"#/components/schemas/ProjectDetails"}},"required":["success","data"]},"ProjectDetails":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Unique identifier for the project"},"projectNumber":{"type":"string","description":"Human-readable project number"},"projectName":{"type":"string","description":"Project name"},"projectDescription":{"type":"string","description":"Detailed project description"},"status":{"type":"string","enum":["Draft","Active","Completed","Ready for Billing","Sent for Billing","Cancelled","Overdue"],"description":"Project lifecycle status:\n\n| Status | Description |\n|--------|-------------|\n| `Draft` | Project created but not yet started |\n| `Active` | Project is in progress |\n| `Completed` | All work is finished |\n| `Ready for Billing` | Completed and ready for invoicing |\n| `Sent for Billing` | Invoice sent |\n| `Cancelled` | Project was cancelled |\n| `Overdue` | Derived status: due date has passed and status is not Completed, Ready for Billing, Sent for Billing, or Cancelled |\n"},"company":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Universally Unique Identifier (UUID v4)"},"name":{"type":"string","description":"Company name"}},"required":["id","name"],"description":"Company information"},"projectDueDate":{"type":["string","null"],"format":"date","pattern":"^\\d{4}-\\d{2}-\\d{2}$","description":"Project delivery deadline"},"projectStartDate":{"type":["string","null"],"format":"date","pattern":"^\\d{4}-\\d{2}-\\d{2}$","description":"Project start date"},"poNumber":{"type":["string","null"],"description":"Purchase Order number"},"referenceNumber":{"type":["string","null"],"description":"Reference or ticket number"},"backgroundInformation":{"type":["string","null"],"description":"Background information about the project"},"targetAudience":{"type":["string","null"],"description":"Target audience description"},"v2Response":{"type":"object","additionalProperties":{},"description":"Full structured project details response, matching the main app /api/core/projects/{projectId}/v2 nested v2Response payload."},"createdAt":{"type":"string","format":"date-time","description":"Date and time in ISO 8601 format"},"updatedAt":{"type":["string","null"],"format":"date-time","description":"Date and time in ISO 8601 format"}},"required":["id","projectNumber","projectName","projectDescription","status","company","projectDueDate","projectStartDate","poNumber","referenceNumber","backgroundInformation","targetAudience","createdAt","updatedAt"],"additionalProperties":{}}}},"paths":{"/api/public/v1/projects/{id}":{"get":{"summary":"🔍 Get Project Details","description":"## Get Full Project Details\n\nRetrieve complete information about a specific project, including:\n- Project number and name\n- Description and background information\n- Status and important dates\n- Company information\n- PO and reference numbers","tags":["🚀 Projects"],"parameters":[{"schema":{"type":"string","format":"uuid","description":"Project ID"},"required":true,"description":"Project ID","name":"id","in":"path"}],"responses":{"200":{"description":"Project details retrieved","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetProjectDetailsResponse"}}}},"401":{"description":"Authentication required"},"403":{"description":"Access denied"},"404":{"description":"Project not found"}}}}}}
````

## 📦 Get Project Deliverables

> \## Get Project Deliverables (Files)\
> \
> Retrieve all deliverable files for a project. These are the final translated/localized files that have been completed and delivered.\
> \
> \### What are Deliverables?\
> \
> Deliverables are the final output files from your project:\
> \- Translated documents\
> \- Localized content\
> \- Final delivery files\
> \- Any other completed work products\
> \
> \### Download URLs\
> \
> Each deliverable includes a temporary download URL that expires after a set period. Use the URL to download the file directly.

````json
{"openapi":"3.1.0","info":{"title":"Adaptria Public API: Client","version":"1.0.0"},"tags":[{"name":"🚀 Projects","description":"## Project Management\n\nProjects are active translation/localization work that began after accepting a quote. Track progress, download deliverables, and provide feedback.\n\n### Project Lifecycle\n\n```\nDraft ──▶ Active ──▶ Completed ──▶ Ready for Billing ──▶ Sent for Billing\n  │\n  └──▶ Cancelled\n  └──▶ Overdue\n```\n\n### Status Descriptions\n\n| Status | Description |\n|--------|-------------|\n| Draft | Project created but not yet started |\n| Active | Project is in progress |\n| Completed | All work is finished |\n| Ready for Billing | Completed and ready for invoicing |\n| Sent for Billing | Invoice sent |\n| Cancelled | Project was cancelled |\n| Overdue | Derived status: due date has passed and status is not Completed, Ready for Billing, Sent for Billing, or Cancelled |\n\n### Project Features\n\n- **View Details**: Get complete project information including description, dates, and status\n- **Download Deliverables**: Access final translated files and deliverables\n- **Provide Feedback**: Add comments and feedback to communicate with the Locaria team\n- **Track Progress**: Monitor project status and important dates\n"}],"servers":[{"url":"https://api.adaptria.locaria.com","description":"Production Environment"}],"security":[{"apiKeyAuth":[]}],"components":{"securitySchemes":{"apiKeyAuth":{"type":"apiKey","in":"header","name":"Api-key","description":"## API Key Authentication\n\nStatic API key obtained from the Adaptria Portal or via `POST /api/credentials/api-keys`.\n\n**How to authenticate**:\n1. Generate an API key from the Adaptria Portal (Settings → API Keys) or ask your admin\n2. Include the key in all requests using the `Api-key` header\n\n**Key format**: `lla_live_<32-character-string>`\n\n**No token exchange needed** — the key is used directly in every request. Revoke or rotate keys from the portal."}},"schemas":{"GetProjectDeliverablesResponse":{"type":"object","properties":{"success":{"type":"boolean","enum":[true]},"data":{"$ref":"#/components/schemas/ProjectDeliveryData"}},"required":["success","data"]},"ProjectDeliveryData":{"type":"object","properties":{"automationEnabled":{"type":"boolean","description":"Whether delivery automation is enabled"},"isReadyForDelivery":{"type":"boolean","description":"Whether the project is ready for delivery"},"deliveredAt":{"type":["string","null"],"description":"When the project was delivered (ISO timestamp)"},"deliveredByUserId":{"type":["string","null"],"description":"User ID who delivered the project"},"finalDeliveryFiles":{"type":"array","items":{"$ref":"#/components/schemas/FinalDeliveryFilePublic"},"description":"Final delivery files (from end-node jobs and stored uploads)"},"finalDeliveryLinks":{"type":"array","items":{"$ref":"#/components/schemas/FinalDeliveryLinkPublic"},"description":"Final delivery links (from end-node jobs and stored links)"}},"required":["automationEnabled","isReadyForDelivery","deliveredAt","deliveredByUserId","finalDeliveryFiles","finalDeliveryLinks"],"description":"Project delivery data (files, links, and metadata)"},"FinalDeliveryFilePublic":{"type":"object","properties":{"id":{"type":"string","description":"File identifier"},"fileId":{"type":"string","description":"File ID (alias)"},"fileName":{"type":"string","description":"Original file name"},"mimeType":{"type":"string","description":"MIME type"},"size":{"type":"number","description":"File size in bytes"},"uploadedAt":{"type":"string","description":"Upload timestamp"},"downloadUrl":{"type":"string","format":"uri","description":"Temporary download URL"},"sourceJobId":{"type":"string","description":"Source job ID"},"sourceJobNumber":{"type":"string","description":"Source job number"},"sourceJobName":{"type":"string","description":"Source job name"}},"required":["id","fileName","mimeType","size","downloadUrl"]},"FinalDeliveryLinkPublic":{"type":"object","properties":{"id":{"type":"string","description":"Link identifier"},"url":{"type":"string","format":"uri","description":"Delivery URL"},"title":{"type":["string","null"],"description":"Link title"},"description":{"type":["string","null"],"description":"Link description"},"sourceJobId":{"type":"string","description":"Source job ID"},"sourceJobNumber":{"type":"string","description":"Source job number"},"sourceJobName":{"type":"string","description":"Source job name"}},"required":["id","url"]}}},"paths":{"/api/public/v1/projects/{id}/deliverables":{"get":{"summary":"📦 Get Project Deliverables","description":"## Get Project Deliverables (Files)\n\nRetrieve all deliverable files for a project. These are the final translated/localized files that have been completed and delivered.\n\n### What are Deliverables?\n\nDeliverables are the final output files from your project:\n- Translated documents\n- Localized content\n- Final delivery files\n- Any other completed work products\n\n### Download URLs\n\nEach deliverable includes a temporary download URL that expires after a set period. Use the URL to download the file directly.","tags":["🚀 Projects"],"parameters":[{"schema":{"type":"string","format":"uuid","description":"Project ID"},"required":true,"description":"Project ID","name":"id","in":"path"}],"responses":{"200":{"description":"Project deliverables retrieved successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetProjectDeliverablesResponse"}}}},"401":{"description":"Authentication required"},"403":{"description":"Access denied"},"404":{"description":"Project not found"}}}}}}
````

## 💬 Get Project Feedback (Comments)

> \## Get Project Feedback/Comments\
> \
> Retrieve all comments and feedback associated with a project. This includes comments from both your team and the Locaria team.\
> \
> \### Pagination\
> \
> Comments are paginated. Use \`page\` and \`limit\` parameters to navigate through comments.\
> \
> \### Use Cases\
> \
> \- Review feedback from the Locaria team\
> \- See your previous comments\
> \- Track project communication history

````json
{"openapi":"3.1.0","info":{"title":"Adaptria Public API: Client","version":"1.0.0"},"tags":[{"name":"🚀 Projects","description":"## Project Management\n\nProjects are active translation/localization work that began after accepting a quote. Track progress, download deliverables, and provide feedback.\n\n### Project Lifecycle\n\n```\nDraft ──▶ Active ──▶ Completed ──▶ Ready for Billing ──▶ Sent for Billing\n  │\n  └──▶ Cancelled\n  └──▶ Overdue\n```\n\n### Status Descriptions\n\n| Status | Description |\n|--------|-------------|\n| Draft | Project created but not yet started |\n| Active | Project is in progress |\n| Completed | All work is finished |\n| Ready for Billing | Completed and ready for invoicing |\n| Sent for Billing | Invoice sent |\n| Cancelled | Project was cancelled |\n| Overdue | Derived status: due date has passed and status is not Completed, Ready for Billing, Sent for Billing, or Cancelled |\n\n### Project Features\n\n- **View Details**: Get complete project information including description, dates, and status\n- **Download Deliverables**: Access final translated files and deliverables\n- **Provide Feedback**: Add comments and feedback to communicate with the Locaria team\n- **Track Progress**: Monitor project status and important dates\n"}],"servers":[{"url":"https://api.adaptria.locaria.com","description":"Production Environment"}],"security":[{"apiKeyAuth":[]}],"components":{"securitySchemes":{"apiKeyAuth":{"type":"apiKey","in":"header","name":"Api-key","description":"## API Key Authentication\n\nStatic API key obtained from the Adaptria Portal or via `POST /api/credentials/api-keys`.\n\n**How to authenticate**:\n1. Generate an API key from the Adaptria Portal (Settings → API Keys) or ask your admin\n2. Include the key in all requests using the `Api-key` header\n\n**Key format**: `lla_live_<32-character-string>`\n\n**No token exchange needed** — the key is used directly in every request. Revoke or rotate keys from the portal."}},"schemas":{"GetProjectFeedbackResponse":{"type":"object","properties":{"success":{"type":"boolean","enum":[true]},"data":{"type":"object","properties":{"comments":{"type":"array","items":{"$ref":"#/components/schemas/Comment"},"description":"List of comments/feedback"},"pagination":{"$ref":"#/components/schemas/Pagination"}},"required":["comments","pagination"],"description":"Project feedback data"}},"required":["success","data"]},"Comment":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Unique identifier for the comment"},"content":{"type":"string","description":"Comment content/text"},"author":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"User ID of the comment author"},"firstName":{"type":["string","null"],"description":"Author's first name"},"lastName":{"type":["string","null"],"description":"Author's last name"},"email":{"type":"string","format":"email","description":"Author's email address"}},"required":["id","firstName","lastName","email"],"description":"Comment author information"},"createdAt":{"type":"string","format":"date-time","description":"Date and time in ISO 8601 format"},"updatedAt":{"type":"string","format":"date-time","description":"Date and time in ISO 8601 format"}},"required":["id","content","author","createdAt","updatedAt"]},"Pagination":{"type":"object","properties":{"page":{"type":"integer","exclusiveMinimum":0,"description":"Current page number (1-indexed)"},"limit":{"type":"integer","exclusiveMinimum":0,"maximum":100,"description":"Number of items per page (max 100)"},"total":{"type":"integer","minimum":0,"description":"Total number of items across all pages"},"totalPages":{"type":"integer","minimum":0,"description":"Total number of pages"},"hasNextPage":{"type":"boolean","description":"Whether there are more pages after the current page"},"hasPrevPage":{"type":"boolean","description":"Whether there are pages before the current page"}},"required":["page","limit","total","totalPages","hasNextPage","hasPrevPage"]}}},"paths":{"/api/public/v1/projects/{id}/feedback":{"get":{"summary":"💬 Get Project Feedback (Comments)","description":"## Get Project Feedback/Comments\n\nRetrieve all comments and feedback associated with a project. This includes comments from both your team and the Locaria team.\n\n### Pagination\n\nComments are paginated. Use `page` and `limit` parameters to navigate through comments.\n\n### Use Cases\n\n- Review feedback from the Locaria team\n- See your previous comments\n- Track project communication history","tags":["🚀 Projects"],"parameters":[{"schema":{"type":"string","format":"uuid","description":"Project ID"},"required":true,"description":"Project ID","name":"id","in":"path"},{"schema":{"type":"string","pattern":"^\\d+$","default":"1","description":"Page number to retrieve (starts from 1)"},"required":false,"description":"Page number to retrieve (starts from 1)","name":"page","in":"query"},{"schema":{"type":"string","pattern":"^\\d+$","default":"50","description":"Number of items per page (max 100)"},"required":false,"description":"Number of items per page (max 100)","name":"limit","in":"query"}],"responses":{"200":{"description":"Project feedback retrieved successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/GetProjectFeedbackResponse"}}}},"401":{"description":"Authentication required"},"403":{"description":"Access denied"},"404":{"description":"Project not found"}}}}}}
````

## 💬 Create Project Feedback (Comment)

> \## Add Feedback/Comment to Project\
> \
> Create a new comment or feedback on a project. This is useful for:\
> \- Asking questions about the project\
> \- Providing feedback on deliverables\
> \- Requesting changes or clarifications\
> \- Communicating with the Locaria team\
> \
> \### What Happens\
> \
> \- Your comment is added to the project\
> \- The Locaria team is notified\
> \- The comment appears in the project feedback list

````json
{"openapi":"3.1.0","info":{"title":"Adaptria Public API: Client","version":"1.0.0"},"tags":[{"name":"🚀 Projects","description":"## Project Management\n\nProjects are active translation/localization work that began after accepting a quote. Track progress, download deliverables, and provide feedback.\n\n### Project Lifecycle\n\n```\nDraft ──▶ Active ──▶ Completed ──▶ Ready for Billing ──▶ Sent for Billing\n  │\n  └──▶ Cancelled\n  └──▶ Overdue\n```\n\n### Status Descriptions\n\n| Status | Description |\n|--------|-------------|\n| Draft | Project created but not yet started |\n| Active | Project is in progress |\n| Completed | All work is finished |\n| Ready for Billing | Completed and ready for invoicing |\n| Sent for Billing | Invoice sent |\n| Cancelled | Project was cancelled |\n| Overdue | Derived status: due date has passed and status is not Completed, Ready for Billing, Sent for Billing, or Cancelled |\n\n### Project Features\n\n- **View Details**: Get complete project information including description, dates, and status\n- **Download Deliverables**: Access final translated files and deliverables\n- **Provide Feedback**: Add comments and feedback to communicate with the Locaria team\n- **Track Progress**: Monitor project status and important dates\n"}],"servers":[{"url":"https://api.adaptria.locaria.com","description":"Production Environment"}],"security":[{"apiKeyAuth":[]}],"components":{"securitySchemes":{"apiKeyAuth":{"type":"apiKey","in":"header","name":"Api-key","description":"## API Key Authentication\n\nStatic API key obtained from the Adaptria Portal or via `POST /api/credentials/api-keys`.\n\n**How to authenticate**:\n1. Generate an API key from the Adaptria Portal (Settings → API Keys) or ask your admin\n2. Include the key in all requests using the `Api-key` header\n\n**Key format**: `lla_live_<32-character-string>`\n\n**No token exchange needed** — the key is used directly in every request. Revoke or rotate keys from the portal."}},"schemas":{"CreateFeedbackRequest":{"type":"object","properties":{"content":{"type":"string","minLength":1,"maxLength":2000,"description":"Feedback/comment content"}},"required":["content"]},"CreateFeedbackResponse":{"type":"object","properties":{"success":{"type":"boolean","enum":[true]},"data":{"$ref":"#/components/schemas/Comment"}},"required":["success","data"]},"Comment":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"Unique identifier for the comment"},"content":{"type":"string","description":"Comment content/text"},"author":{"type":"object","properties":{"id":{"type":"string","format":"uuid","description":"User ID of the comment author"},"firstName":{"type":["string","null"],"description":"Author's first name"},"lastName":{"type":["string","null"],"description":"Author's last name"},"email":{"type":"string","format":"email","description":"Author's email address"}},"required":["id","firstName","lastName","email"],"description":"Comment author information"},"createdAt":{"type":"string","format":"date-time","description":"Date and time in ISO 8601 format"},"updatedAt":{"type":"string","format":"date-time","description":"Date and time in ISO 8601 format"}},"required":["id","content","author","createdAt","updatedAt"]}}},"paths":{"/api/public/v1/projects/{id}/feedback":{"post":{"summary":"💬 Create Project Feedback (Comment)","description":"## Add Feedback/Comment to Project\n\nCreate a new comment or feedback on a project. This is useful for:\n- Asking questions about the project\n- Providing feedback on deliverables\n- Requesting changes or clarifications\n- Communicating with the Locaria team\n\n### What Happens\n\n- Your comment is added to the project\n- The Locaria team is notified\n- The comment appears in the project feedback list","tags":["🚀 Projects"],"parameters":[{"schema":{"type":"string","format":"uuid","description":"Project ID"},"required":true,"description":"Project ID","name":"id","in":"path"}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateFeedbackRequest"}}}},"responses":{"201":{"description":"Feedback created successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CreateFeedbackResponse"}}}},"400":{"description":"Invalid request (missing content, etc.)"},"401":{"description":"Authentication required"},"403":{"description":"Access denied"},"404":{"description":"Project not found"}}}}}}
````
