Events
Events are the core resource of the Qariyb platform. Use these endpoints to retrieve event listings and detailed information including tickets, features, and registration settings.
List all events
Retrieve a paginated list of your events. Returns a compact summary for each event.
Query parameters
- Name
state- Type
- string
- Description
Filter by state: draft, preview, published, cancelled, completed.
- Name
page- Type
- integer
- Description
Page number for pagination.
- Name
per_page- Type
- integer
- Description
Events per page (1–20, default 15). A value above 20 is rejected with HTTP 422 rather than silently clamped, so read the error instead of assuming you received 20.
Request
curl -G https://api.qariyb.com/api/v1/events \
-H "Authorization: Bearer sk_live_..." \
-H "Accept: application/json" \
-d state=published
Response
{
"success": true,
"code": 100,
"locale": "en",
"message": "OK",
"data": {
"items": [
{
"id": "01HWX9KPQR5T7V8MNCBDJ3GFYZ",
"title": "Community Iftar Dinner",
"slug": "community-iftar-dinner",
"summary": "Join us for a blessed evening of community iftar...",
"public_url": "https://qariyb.com/discover/events/community-iftar-dinner",
"state": "published",
"visibility": "public",
"pricing_model": "paid",
"currency": "USD",
"start_date": "2025-03-15",
"start_time": "18:30:00",
"end_date": "2025-03-15",
"end_time": "21:30:00",
"timezone": "America/New_York",
"start_datetime_utc": "2025-03-15T22:30:00+00:00",
"end_datetime_utc": "2025-03-16T01:30:00+00:00",
"is_online": false,
"location": "New York",
"has_tickets": true,
"requires_registration": true,
"category": {
"id": "01HWX9CAT123",
"name": "Community",
"slug": "community"
},
"cover_image": {
"url": "https://qariyb.com/storage/events/iftar.jpg",
"alt_text": "Community Iftar Dinner"
},
"created_at": "2025-01-10T14:30:00+00:00",
"updated_at": "2025-02-20T09:15:00+00:00"
}
],
"current_page": 1,
"per_page": 15,
"total": 42,
"last_page": 3
}
}
Retrieve an event
Retrieve the full details of a specific event including tickets, features, address, and registration settings.
Path parameters
- Name
id- Type
- string
- Description
The unique ULID identifier of the event.
Response fields
Core
id- Unique ULID identifiertitle,slug,summary,descriptionpublic_url- Full URL to the event's public page
State
state- draft, preview, published, cancelled, completedvisibility- public, privatepricing_model- free, paid, externalcurrency- ISO 4217 code, e.g. USD, GBP (null when pricing_model is not paid)
Date and Time
start_date,end_date- YYYY-MM-DD formatstart_time,end_time- HH:mm:ss formattimezone- IANA identifierstart_datetime_utc,end_datetime_utc- ISO 8601
Location
is_online- Booleanvirtual_url,virtual_platform- Always present; both arenullfor an in-person eventaddress- Object with venue_name, line1, line2, city, state, postal_code, country, latitude, longitude, full_address, display_address
Registration
has_tickets,requires_registration,requires_approval,registration_open- Booleansmax_attendees- Integer or nullis_sold_out- Boolean, true when all active tickets are unavailableexternal_registration_url- String or null
Relationships
category- id, name, slugorganizer- id, nameorganization- id, name, slug, logo, is_verifiedcover_image- url, alt_text
Collections
ticket_types[]- id, name, description, price_cents, currency, quantity, quantity_sold, is_available, is_free, max_per_order, min_per_order, sale_start_date, sale_end_datefeatures[]- name, slug, categorytags[]- name, slug, colorcustom_questions[]- id, question, type, required, options, display_order
Request
curl https://api.qariyb.com/api/v1/events/01HWX9KPQR5T7V8MNCBDJ3GFYZ \
-H "Authorization: Bearer sk_live_..." \
-H "Accept: application/json"
Response
{
"success": true,
"code": 100,
"locale": "en",
"message": "OK",
"data": {
"id": "01HWX9KPQR5T7V8MNCBDJ3GFYZ",
"title": "Community Iftar Dinner",
"slug": "community-iftar-dinner",
"summary": "Join us for a blessed evening...",
"description": "<p>Full description with HTML formatting...</p>",
"public_url": "https://qariyb.com/discover/events/community-iftar-dinner",
"state": "published",
"visibility": "public",
"pricing_model": "paid",
"currency": "USD",
"start_date": "2025-03-15",
"start_time": "18:30:00",
"end_date": "2025-03-15",
"end_time": "21:00:00",
"timezone": "America/New_York",
"start_datetime_utc": "2025-03-15T22:30:00+00:00",
"end_datetime_utc": "2025-03-16T01:00:00+00:00",
"is_online": false,
"virtual_url": null,
"virtual_platform": null,
"address": {
"venue_name": "Islamic Center",
"line1": "123 Main Street",
"line2": "Suite 100",
"city": "New York",
"state": "NY",
"postal_code": "10001",
"country": "US",
"latitude": 40.7128,
"longitude": -74.006,
"full_address": "123 Main Street, Suite 100, New York, NY 10001, US",
"display_address": "Islamic Center, New York, NY"
},
"has_tickets": true,
"requires_registration": true,
"requires_approval": false,
"registration_open": true,
"max_attendees": 200,
"is_sold_out": false,
"external_registration_url": null,
"is_recurring": false,
"category": {
"id": "01HWX9CAT123",
"name": "Community",
"slug": "community"
},
"organizer": {
"id": "01HWX9USER123",
"name": "Ahmad Hassan"
},
"organization": {
"id": "01HWX9ORG123",
"name": "Islamic Center of NY",
"slug": "islamic-center-ny",
"logo": "https://qariyb.com/storage/orgs/logo.png",
"is_verified": true
},
"cover_image": {
"url": "https://qariyb.com/storage/events/iftar.jpg",
"alt_text": "Community Iftar Dinner"
},
"ticket_types": [
{
"id": "01HWX9TKT123",
"name": "General Admission",
"description": "Standard entry ticket",
"price_cents": 2500,
"currency": "USD",
"quantity": 200,
"quantity_sold": 95,
"is_available": true,
"is_free": false,
"max_per_order": 10,
"min_per_order": 1,
"sale_start_date": "2025-01-01T00:00:00+00:00",
"sale_end_date": "2025-03-15T18:00:00+00:00"
}
],
"features": [
{
"name": "Halal Food",
"slug": "halal_food",
"category": "dietary"
},
{
"name": "Prayer Space",
"slug": "prayer_space",
"category": "prayer-worship"
}
],
"tags": [
{
"name": "Ramadan",
"slug": "ramadan",
"color": "#4CAF50"
}
],
"custom_questions": [
{
"id": "01HWX9Q001",
"question": "Do you have any dietary requirements?",
"type": "text",
"required": false,
"options": [],
"display_order": 1
},
{
"id": "01HWX9Q002",
"question": "T-shirt size",
"type": "select",
"required": true,
"options": [
"S",
"M",
"L",
"XL"
],
"display_order": 2
}
],
"created_at": "2025-01-10T14:30:00+00:00",
"updated_at": "2025-02-20T09:15:00+00:00"
}
}
Check availability
Quick endpoint for widgets to check if an event is available for registration before showing the checkout UI. Uses widget key authentication (X-Widget-Key header).
Response attributes
- Name
available- Type
- boolean
- Description
Whether the event is currently available for registration (not sold out and registration is open).
- Name
event_id- Type
- string
- Description
The event ULID.
- Name
registration_open- Type
- boolean
- Description
Whether the organizer has enabled registration.
- Name
has_tickets- Type
- boolean
- Description
Whether the event has ticket types.
- Name
is_sold_out- Type
- boolean
- Description
Whether all available tickets have been sold.
- Name
total_tickets_available- Type
- integer
- Description
Total number of tickets still available across all ticket types.
- Name
reason- Type
- string | null
- Description
Why the event is unavailable:
event_not_found,event_not_available,sold_out,registration_closed, ornullwhen available.
Request
curl https://api.qariyb.com/api/v1/public/events/01HWX9KPQR/availability \
-H "X-Widget-Key: pk_live_..." \
-H "Accept: application/json"
Response (Available)
{
"success": true,
"code": 100,
"locale": "en",
"message": "OK",
"data": {
"available": true,
"event_id": "01HWX9KPQR5T7V8MNCBDJ3GFYZ",
"registration_open": true,
"has_tickets": true,
"is_sold_out": false,
"total_tickets_available": 365,
"reason": null
}
}
Response (Sold Out)
{
"success": true,
"code": 100,
"locale": "en",
"message": "OK",
"data": {
"available": false,
"event_id": "01HWX9KPQR5T7V8MNCBDJ3GFYZ",
"registration_open": true,
"has_tickets": true,
"is_sold_out": true,
"total_tickets_available": 0,
"reason": "sold_out"
}
}