> ## Documentation Index
> Fetch the complete documentation index at: https://help.emaillove.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Overview

> Programmatic access to templates and design systems: authentication, endpoints, and resources.

The Email Love Builder API provides programmatic access to templates, design systems, and Figma plugin sync functionality. This overview covers authentication, base endpoints, and key resources.

## API Basics

### Base URL

All API requests should be made to:

```text theme={null}
https://api.emaillove.com/api
```

### Authentication

All API requests require a Bearer token (your API key) in the Authorization header:

```text theme={null}
Authorization: Bearer ef_xxxxxxxxxxxxxxxxxxxxx
```

Your API key can be generated in Email Love Builder at **Settings > API Keys**. Keys always start with `ef_`.

### Rate Limiting

Each API key is limited to **100 requests per minute**. If you exceed this limit, the API will return a 429 (Too Many Requests) response. Wait briefly before retrying.

## Key Endpoints

### Templates

```http theme={null}
POST /api/templates
```

Create a new email template in your workspace.

```http theme={null}
GET /api/templates
```

Retrieve all templates in your workspace.

```http theme={null}
GET /api/templates/:id
```

Retrieve a specific template by ID.

```http theme={null}
PUT /api/templates/:id
```

Update template properties or content.

```http theme={null}
DELETE /api/templates/:id
```

Delete a template from your workspace.

### Design Systems

```http theme={null}
POST /api/plugin/design-systems/:id/sync
```

Sync design system components from Figma. Used by the Email Love Figma plugin to push components to your design system.

```http theme={null}
GET /api/plugin/design-systems/:id/changes
```

Retrieve components that have changed since a specific timestamp. Useful for detecting updates and conflicts when syncing with Figma.

## Common Use Cases

### Automated Template Creation

Use the Templates endpoints to programmatically create, update, and manage templates. Integrate with your workflow automation tools to generate templates based on data or events.

### Design System Sync Automation

Integrate component syncing with your CI/CD pipeline or design tool workflows to automatically keep your Email Love Builder design system in sync with your source designs.

### Template Management

Build custom interfaces for template organization, search, and management using the API.

## Response Format

All API responses are returned in JSON format. Successful requests return the created or modified resource along with relevant metadata.

### Error Responses

Errors include an error code and descriptive message:

```json theme={null}
{
  "error": "invalid_api_key",
  "message": "The provided API key is not valid"
}
```

## Best Practices

* **Use Bearer Token Authentication:** Always include your API key in the Authorization header
* **Handle Rate Limits:** Implement exponential backoff when approaching the 100 requests per minute limit
* **Validate Responses:** Check response status codes and error messages to handle failures gracefully
* **Store API Keys Securely:** Never commit API keys to version control or expose them in client-side code
* **Generate Workspace-Specific Keys:** Create separate API keys for different integrations or purposes

## Security Considerations

* API keys grant full access to your workspace: treat them as secrets
* Rotate API keys periodically for enhanced security
* Revoke keys that are no longer needed (go to Settings > API Keys > Revoke)
* Never share API keys via email or unsecured channels
* Use API keys only with HTTPS connections

## Detailed Documentation

For complete endpoint documentation including request bodies, response schemas, and code examples, see the full API reference in the repository.

## Examples

### Authenticate and List Templates

```bash theme={null}
curl -X GET https://api.emaillove.com/api/templates \
  -H "Authorization: Bearer ef_xxxxxxxxxxxxxxxxxxxxx"
```

### Create a New Template

```bash theme={null}
curl -X POST https://api.emaillove.com/api/templates \
  -H "Authorization: Bearer ef_xxxxxxxxxxxxxxxxxxxxx" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Welcome Email",
    "description": "Onboarding email for new users"
  }'
```

## Need Help?

* Review endpoint-specific documentation in the detailed reference
* Check the [Figma plugin guide](/builder/figma-plugin/overview) for plugin-specific API usage
* Contact our support team for integration assistance

## Changelog

API updates and new endpoints are documented in our changelog. Check back regularly for new features and improvements.
