Generated API docs
Copy-ready documentation template
# Project Evidence API Documentation
## 1. Overview
API style: REST
Guidance: Document resources, HTTP methods, status codes, pagination, filtering, and idempotency rules.
Audience: Frontend engineers, partner developers, support engineers, and solutions architects
Base URL: https://api.nitrobuilds.com/v1
The Project Evidence API lets teams create projects, attach launch evidence, publish portfolio entries, and retrieve profile-ready project data.
## 2. Quickstart
- Create an API token in dashboard settings
- Call GET /v1/projects to verify access
- POST evidence to /v1/projects/{project_id}/evidence
## 3. Authentication
Authentication type: Bearer token
Send the token in the Authorization header as Bearer <token>. Tokens are workspace-scoped and can be rotated from dashboard settings.
```bash
curl "https://api.nitrobuilds.com/v1/projects" \
-H "Authorization: Bearer <token>" \
-H "Accept: application/json"
```
## 4. Endpoint summary
| Method and path | Description |
|---|---|
| GET /v1/projects | List projects visible to the authenticated user |
| POST /v1/projects | Create a new shipped project |
| POST /v1/projects/{project_id}/evidence | Attach launch evidence to a project |
## 5. Endpoint reference
### GET /v1/projects
List projects visible to the authenticated user
**Required scopes**
- Add the permission, role, or token scope required for this request.
**Parameters**
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| id | string | path | Yes | Resource identifier. |
**Example request**
```bash
curl -X GET "https://api.example.com/v1/projects" \
-H "Authorization: Bearer <token>" \
-H "Content-Type: application/json"
```
**Example response**
```json
{
"id": "example_123",
"status": "active",
"updated_at": "2026-06-06T00:00:00Z"
}
```
### POST /v1/projects
Create a new shipped project
**Required scopes**
- Add the permission, role, or token scope required for this request.
**Parameters**
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| id | string | path | Yes | Resource identifier. |
**Example request**
```bash
curl -X POST "https://api.example.com/v1/projects" \
-H "Authorization: Bearer <token>" \
-H "Content-Type: application/json"
```
**Example response**
```json
{
"id": "example_123",
"status": "active",
"updated_at": "2026-06-06T00:00:00Z"
}
```
### POST /v1/projects/{project_id}/evidence
Attach launch evidence to a project
**Required scopes**
- Add the permission, role, or token scope required for this request.
**Parameters**
| Name | Type | Location | Required | Description |
|---|---|---|---|---|
| id | string | path | Yes | Resource identifier. |
**Example request**
```bash
curl -X POST "https://api.example.com/v1/projects/{project_id}/evidence" \
-H "Authorization: Bearer <token>" \
-H "Content-Type: application/json"
```
**Example response**
```json
{
"id": "example_123",
"status": "active",
"updated_at": "2026-06-06T00:00:00Z"
}
```
## 6. Request fields
- name: string, required, project display name
- url: string, optional, public project URL
- evidence_url: string, required for evidence uploads
## 7. Response fields
- id: string, stable project identifier
- status: string, draft or published
- updated_at: string, ISO timestamp for last update
## 8. Error handling
- 400 invalid_request - Missing or invalid request field
- 401 unauthorized - Token missing, expired, or malformed
- 429 rate_limited - Too many requests in the current window
## 9. Rate limits and retries
Default limit is 120 requests per minute per workspace. Bulk evidence uploads should be retried with exponential backoff after 429 responses.
## 10. Versioning and compatibility
The current stable version is v1. Breaking changes ship in a new path version and are announced at least 90 days before older versions are retired.
## 11. SDKs, schemas, and examples
Official SDKs are planned for TypeScript and Python. Until then, use the HTTP examples and OpenAPI schema as the integration contract.
## 12. Changelog
- 2026-06-06: Added evidence upload endpoint and workspace-scoped token examples
## 13. Support
- Support channel: Add email, Slack, Discord, ticket queue, or partner contact.
- Status page: Link uptime and incident history.
- Escalation notes: Explain what request id, account id, timestamp, and endpoint details support needs.