v1.0.0 • OAS 3.0 • Staging
This API provides endpoints for managing events, tickets, organizations, payments, and user accounts. Integrate CHI services into your apps and build on top of the CHI ecosystem.
Base URL: https://api.staging.chi.app
GET /events?page=1&limit=20
{
"data": [...],
"total": 156,
"page": 1,
"lastPage": 8
}Most endpoints require Bearer token authentication. Include the JWT token in the Authorization header:
Authorization: Bearer <your-token> # Example request curl -X GET https://api.staging.chi.app/events \ -H "Authorization: Bearer <your-token>" \ -H "Content-Type: application/json"
Register webhook endpoints via the API to receive real-time event notifications for ticket scans, payments, and check-ins.
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"
}
}Use our official packages to integrate with the CHI platform in your preferred language.
Errors return a JSON object with statusCode, message, and error fields. Handle 401 (token expired), 403 (forbidden), and 429 (rate limited).
{
"statusCode": 401,
"message": "Unauthorized",
"error": "Token expired"
}| Code | Meaning | Action |
|---|---|---|
| 400 | Bad Request | Check request body and parameters |
| 401 | Unauthorized | Token expired — refresh and retry |
| 403 | Forbidden | Insufficient permissions for this resource |
| 429 | Rate Limited | Back off with exponential delay |
| 500 | Server Error | Retry later or contact support |
100 requests per minute per API key. Use exponential backoff on 429 responses.
| Tier | Rate | Burst |
|---|---|---|
| Standard | 100 req/min | 20 req/s |
| Enterprise | 1000 req/min | 100 req/s |
We provide standardized context files compliant with the llms.txt specification. Point your AI agents to these URLs to instantly load the full CHI ecosystem context.
To give your coding assistant (Cursor, Windsurf, Copilot) full awareness of the CHI platform, create an agent.md file in your project root and paste the following block. This ensures the AI follows our design tokens and API patterns.
# 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://staging-api.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
- API Docs (Swagger): https://chi.app/docs
- MCP Server: npx @chi-app/mcp-server connect
## 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.Fetch CHI events to display on your platform. We provide multiple feed formats and a dedicated AI context file for aggregators.
Structured JSON for modern applications and APIs
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')Dedicated context file for AI-powered aggregators to understand CHI event data structures
Earn commissions on every ticket sale that comes from your app or platform. Contact us to join our aggregator partnership program and get rewarded for driving sales.
Contact UsOur API is currently available by invitation only. We're working to open access to everyone in the near future.