# Quick start

> Your first request to the FanConvert public API, in curl, JavaScript and Python.

URL : https://docs.fanconvert.ai/en/api/rest/demarrage

The public API reads your creators, conversations, fans, sales, statistics, scripts, media and emergencies, with the same isolation as the dashboard. It can **never send a message to a fan**.

Base URL: `https://app.fanconvert.ai/public/v1`

## 1. Create a key [#1-create-a-key]

In FanConvert: **Réglages › API & MCP › Nouvelle clé** (Settings › API & MCP › New key), choosing **Connecter un outil ou un développeur (API)**. Details: [Create a key](/en/api/cles). Keep it in an environment variable, never in code.

## 2. First request [#2-first-request]

`GET /me` describes the key in use: its creators, permissions and expiry.

```bash
curl https://app.fanconvert.ai/public/v1/me \
  -H "Authorization: Bearer $FANCONVERT_API_KEY"
```

```json
{
  "keyId": "3f1c…",
  "organizationId": "org_…",
  "scopes": ["creators:read", "statistics:read"],
  "creatorIds": ["emma-demo"],
  "expiresAt": "2026-12-07T05:40:00Z"
}
```

## 3. List your creators [#3-list-your-creators]

<Tabs items={['curl', 'JavaScript', 'Python']}>
<Tab value="curl">

```bash
curl https://app.fanconvert.ai/public/v1/creators \
  -H "Authorization: Bearer $FANCONVERT_API_KEY"
```

</Tab>
<Tab value="JavaScript">

```js
const res = await fetch("https://app.fanconvert.ai/public/v1/creators", {
  headers: { Authorization: `Bearer ${process.env.FANCONVERT_API_KEY}` },
});
if (!res.ok) throw new Error((await res.json()).detail);
const { items } = await res.json();
```

</Tab>
<Tab value="Python">

```python
import os, requests

r = requests.get(
    "https://app.fanconvert.ai/public/v1/creators",
    headers={"Authorization": f"Bearer {os.environ['FANCONVERT_API_KEY']}"},
    timeout=30,
)
r.raise_for_status()
print(r.json()["items"])
```

</Tab>
</Tabs>

## Next [#next]

- [Authentication and permissions](/en/api/rest/authentification)
- [Pagination](/en/api/rest/pagination), [Errors](/en/api/rest/erreurs), [Rate limits](/en/api/rest/limites)
- [Webhooks](/en/api/rest/webhooks): receive sales without polling
- [Full reference](/en/api/reference)

