Public REST API
Documentation for the public REST API of Impactify.
If you want to view the Swagger UI documentation instead, visit the Swagger UI Docs.
🚀 Impactify Public REST API
Welcome to the Impactify Public REST API docs! Here you'll find everything you need to build awesome integrations, automate event workflows, and supercharge your apps with Impactify data. Whether you're an event host, developer, or just curious, we've got you covered. 🎉
🔑 API Keys
Impactify allows event hosts to generate API keys to securely access the public API. Each event can have multiple API keys, each with customizable permissions for granular control over resources and actions.
👉 Learn how to create an Event API Key
📚 API Endpoints
Our API follows the OpenAPI 3.0.0 specification. You can explore the full spec here.
Below is a quick overview of the main endpoints you can use:
🗣️ Chat
GET /api/rest/v1/chat
- Description: Fetch a list of chat messages for an event.
- Response: Array of chat messages (
id
,senderId
,eventId
,content
,createdAt
) - Errors:
401 Unauthorized
,403 Forbidden
,500 Internal Server Error
🎟️ Event
GET /api/rest/v1/event
- Description: Get event details (title, tags, location, thumbnail, pricing, etc.)
- Response: Event object
- Errors:
401 Unauthorized
,403 Forbidden
,404 Not Found
,500 Internal Server Error
POST /api/rest/v1/event
- Description: Update event details (title, livestream link, location)
- Body:
{ title, livestreamLink, location }
- Response: Updated event object
- Errors:
400 Bad Request
,401 Unauthorized
,403 Forbidden
,404 Not Found
,500 Internal Server Error
🩺 Health
GET /api/rest/v1/health
- Description: Check API health status.
- Response: Health check string
- Errors:
500 Internal Server Error
🧩 Widgets
POST /api/rest/v1/widget
- Description: Create a new widget (Info, Markdown, or Poll)
- Body:
- Info:
{ type: "INFO", text }
- Markdown:
{ type: "MARKDOWN", title, content }
- Poll:
{ type: "POLL", question, options, isActive }
- Info:
- Response: Widget object
- Errors:
400 Bad Request
,401 Unauthorized
,403 Forbidden
,500 Internal Server Error
GET /api/rest/v1/widget/{widgetId}
- Description: Get a widget by ID
- Response: Widget object
- Errors:
401 Unauthorized
,403 Forbidden
,404 Not Found
,500 Internal Server Error
POST /api/rest/v1/widget/{widgetId}
- Description: Update a widget by ID
- Body: Updated widget data
- Response: Widget object
- Errors:
401 Unauthorized
,403 Forbidden
,404 Not Found
,500 Internal Server Error
DELETE /api/rest/v1/widget/{widgetId}
- Description: Delete a widget by ID
- Response: Deleted widget object
- Errors:
401 Unauthorized
,403 Forbidden
,404 Not Found
,500 Internal Server Error
GET /api/rest/v1/widgets
- Description: List all widgets for an event
- Response: Array of widget objects
- Errors:
401 Unauthorized
,403 Forbidden
,500 Internal Server Error
🛡️ Authentication
All endpoints require an API key in the Authorization
header:
Authorization: Bearer <your_api_key>
📝 Error Codes
- 400 Bad Request: Your request is invalid.
- 401 Unauthorized: Missing or invalid API key.
- 403 Forbidden: You don't have permission for this resource.
- 404 Not Found: The resource doesn't exist.
- 500 Internal Server Error: Something went wrong on our end.
Ready to build? 🚀 Dive into the endpoints above or check out the full OpenAPI specification for all the details!
If you have questions or need help, reach out to our team or community. Happy coding! 💙