v1.0.0 • OAS 3.0 • Staging
Этот API предоставляет эндпоинты для управления мероприятиями, билетами, организациями, платежами и аккаунтами пользователей. Интегрируй сервисы CHI в свои приложения и строй на основе экосистемы CHI.
Base URL: https://api.chi.app
GET /events?page=1&limit=20
{
"data": [...],
"total": 156,
"page": 1,
"lastPage": 8
}Большинство эндпоинтов требуют Bearer-токен аутентификации. Включи JWT-токен в заголовок Authorization:
Authorization: Bearer <your-token> # Example request curl -X GET https://api.chi.app/events \ -H "Authorization: Bearer <your-token>" \ -H "Content-Type: application/json"
Зарегистрируйте webhook-эндпоинты через API для получения уведомлений в реальном времени о сканировании билетов, платежах и регистрациях.
POST https://your-server.com/webhook
{
"event": "ticket.scanned",
"timestamp": "2025-06-15T14:30:00Z",
"data": {
"ticketId": "tkt_abc123",
"eventId": "evt_xyz789",
"visitorId": "vis_456def"
}
}Используйте наши официальные пакеты для интеграции платформы CHI на вашем предпочтительном языке.
Build a full event storefront — live ticket pricing, cart and checkout — without touching REST endpoints, auth, retries, rate limits or data normalization. CHI owns the commerce behavior; you own the visual experience. Ships as headless React hooks plus optional components with zero CSS, so your design system stays yours. Lineup hooks arrive together with the public lineup API.
npm install @chi-ecosystem/storefront-react @tanstack/react-query # .npmrc - GitHub Packages auth for the @chi-ecosystem scope @chi-ecosystem:registry=https://npm.pkg.github.com
import {
ChiStorefrontProvider,
useTicketDefinitions,
useQuote,
formatMoney,
money,
} from '@chi-ecosystem/storefront-react';
// Once, at the root - CHI handles auth, caching, retries,
// outage healing and quote rate-limit budgets from here on.
<ChiStorefrontProvider eventSlug="your-festival" baseUrl="production">
<App />
</ChiStorefrontProvider>;
function Tickets() {
const { definitions } = useTicketDefinitions(); // live prices + stock
const [lines, setLines] = useState([]); // your cart UI state
const { quote } = useQuote({ lines }); // debounced + deduped
return (
<div className="my-tickets"> {/* your CSS, your rules */}
{definitions.map((d) => (
<button key={d.id} onClick={() => addLine(setLines, d)}>
{d.name} - {formatMoney(money(d.priceMinor, d.currency))}
</button>
))}
<Total>{formatMoney(money(quote?.pricing.totalMinor ?? 0, quote?.pricing.currency ?? 'USD'))}</Total>
</div>
);
}Ошибки возвращают JSON-объект с полями statusCode, message и error. Обрабатывайте 401 (токен истёк), 403 (запрещено) и 429 (ограничение частоты).
{
"statusCode": 401,
"message": "Unauthorized",
"error": "Token expired"
}| Код | Значение | Действие |
|---|---|---|
| 400 | Неверный запрос | Проверьте тело запроса и параметры |
| 401 | Не авторизован | Токен истёк — обновите и повторите |
| 403 | Запрещено | Недостаточно прав для этого ресурса |
| 429 | Ограничение частоты | Отступите с экспоненциальной задержкой |
| 500 | Ошибка сервера | Повторите позже или обратитесь в поддержку |
100 запросов в минуту на один API-ключ. Используйте экспоненциальный backoff при ответах 429.
| Уровень | Частота | Пиковая нагрузка |
|---|---|---|
| Стандартный | 100 req/min | 20 req/s |
| Корпоративный | 1000 req/min | 100 req/s |
Мы предоставляем стандартизированные контекстные файлы в соответствии со спецификацией llms.txt. Направьте ваших AI-агентов на эти URL для мгновенной загрузки полного контекста экосистемы CHI.
Чтобы дать вашему помощнику по программированию (Cursor, Windsurf, Copilot) полное представление о платформе CHI, создайте файл agent.md в корне проекта и вставьте следующий блок. Это гарантирует, что ИИ будет следовать нашим дизайн-токенам и шаблонам API.
# CHI Ecosystem API Context for AI Agents
You are integrating with the CHI Ecosystem (EventCHI) REST API.
Base URL: https://api.chi.app (production) | https://api.staging.chi.app (staging)
Auth: Bearer token via Authorization header.
## Resources
- Full Context: https://chi.app/llms-full.txt
- Minimal Context: https://chi.app/llms-minimal.txt
- Обзор для разработчиков: https://chi.app/ru/developers
- Контекст для агрегаторов: https://chi.app/llms-aggregators.txt
- Пока не опубликовано — доступ к API сейчас только по приглашению.
- MCP Сервер: Пока недоступно — сервер CHI MCP всё ещё в разработке.
## API Guidelines
1. **Authentication**: All requests require a Bearer token. Obtain tokens via POST /auth/login.
2. **REST Patterns**: Use strict RESTful conventions — resource-based URLs, proper HTTP methods, JSON request/response bodies.
3. **Pagination**: List endpoints support `?page=` and `?limit=` query params. Responses include `total`, `page`, and `lastPage`.
4. **Error Handling**: Errors return `{ statusCode, message, error }`. Handle 401 (token expired), 403 (forbidden), 429 (rate limited).
5. **Webhooks**: Register webhook endpoints via the API to receive real-time event notifications (ticket scans, payments, check-ins).
6. **Rate Limits**: 100 req/min per API key. Use exponential backoff on 429 responses.
## Key Resources
- **Events**: /events — create, manage, and query events.
- **Tickets**: /tickets — issue, validate, and scan tickets.
- **Payments**: /payments — process and track transactions.
- **Visitors**: /visitors — attendee profiles and wallet data.
- **Coupons**: /coupons — create and redeem discount codes.
- **Organizations**: /organizations — manage org settings and team members.
## Key Terminology
- **Visitor App**: The mobile wallet for attendees.
- **Crew App**: POS and access control for staff.
- **Backstage**: The organizer dashboard.Получайте события CHI для отображения на вашей платформе. Мы предоставляем несколько форматов фидов и специальный файл контекста ИИ для агрегаторов.
Структурированный JSON для современных приложений и API
https://api.chi.app/feeds/events.jsonfetch('https://api.chi.app/feeds/events.json')
.then(res => res.json())
.then(data => {
console.log(data.items);
});
// Organization-scoped
fetch('https://api.chi.app/feeds/organizations/{orgId}/events.json')
// Single event JSON-LD
fetch('https://api.chi.app/feeds/events/{eventId}.json')Специальный контекстный файл для агрегаторов на базе ИИ для понимания структур данных мероприятий CHI
Зарабатывайте комиссионные с каждой продажи билетов, пришедшей с вашего приложения или платформы. Свяжитесь с нами, чтобы присоединиться к нашей партнёрской программе для агрегаторов.
Связаться с намиНаш API в настоящее время доступен только по приглашению. Мы работаем над тем, чтобы открыть доступ для всех в ближайшем будущем.