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

# API Overview

> Technical reference for developers and IT teams.

## Architecture

TinyBell is a client-side notification system. The main integration point is the **pixel**: a JavaScript file that runs on your hotel website.

```
Hotel Website  ←→  TinyBell Pixel (JS)  ←→  TinyBell Server
```

The pixel handles:

* Loading active notifications for the property
* Evaluating trigger conditions (exit intent, scroll, time)
* Rendering the notification UI
* Tracking impressions and clicks
* Sending events to the TinyBell server

## Pixel endpoint

```
GET https://thetinybell.com/pixel/{PIXEL_KEY}
```

Returns a JavaScript file containing the notification configuration and rendering logic for the property identified by `PIXEL_KEY`.

## Event tracking endpoint

```
POST https://thetinybell.com/pixel-track/{PIXEL_KEY}
```

The pixel sends events (impressions, clicks, conversions) to this endpoint automatically. You don't need to call it manually.

## Authentication

The pixel is public and requires no authentication. It is restricted by the domain configured in the property settings. Requests from unauthorized domains are ignored.

## Rate limits

| Endpoint       | Limit                          |
| -------------- | ------------------------------ |
| Pixel load     | No limit                       |
| Event tracking | 100 events/minute per property |

## Data format

All event payloads are JSON:

```json theme={null}
{
  "type": "impression",
  "notification_id": 123,
  "campaign_id": 456,
  "url": "https://www.myhotel.com/rooms",
  "device_type": "desktop",
  "visitor_id": "abc123"
}
```
