> ## Content Index
> Fetch the complete content index at: https://faro.planethemes.com/llms.txt
> Use this file to discover other available public pages before exploring further.

# 04. API and webhooks
- URL: https://faro.planethemes.com/api-and-webhooks/
- Published: 2026-09-21T13:00:00.000Z
- Updated: 2026-09-26T15:30:00.000Z
- Description: Build your own integrations with the REST API.
- Author: Faro Team
- Tags: 04. Integrations, #Import 2026-10-02 10:36

The Lumbre REST API lets you read and write projects, tasks and comments. Webhooks notify your app when something changes.

## Authentication

Create a key in **Settings → API**. Send it in the `Authorization` header of every request:

```bash
curl https://api.lumbre.example/v1/projects \
  -H "Authorization: Bearer YOUR_API_KEY"
```

🔒

Treat API keys like passwords. Never put them in front-end code or public repositories.

## Create a task

```javascript
const res = await fetch('https://api.lumbre.example/v1/tasks', {
  method: 'POST',
  headers: {
    'Authorization': `Bearer ${process.env.LUMBRE_KEY}`,
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({
    project_id: 'prj_8f2a',
    title: 'Review the October report',
    due_on: '2026-10-15'
  })
});
const task = await res.json();
```

## Webhooks

Register a URL in **Settings → API → Webhooks** and choose the events. Lumbre sends a `POST` with a JSON body like this:

```json
{
  "event": "task.completed",
  "task": { "id": "tsk_51c9", "title": "Review the October report" },
  "occurred_at": "2026-10-02T14:03:00Z"
}
```

### Limits

| Plan     | Requests per minute |
| -------- | ------------------- |
| Free     | 60                  |
| Team     | 300                 |
| Business | 1,000               |