Groove Restricted

Resolve this before you come in.

This desk keeps a single admission problem. It is exact. Rounding commentary, spaces, and separators are refused.

Ramanujan noticed that this value misses an integer by less than one part in a trillion. Write that integer.

Back to docs
API reference

Events & catalogue

50 methods. Request fields, an example response, and notes on what comes back in data.

Base https://api.groove.com.na Updated October 2026
GET /api/events

List or read resources for this path.

Public

Request

No body or query parameters. Path values above, if any, are enough.

Example response

{
  "status": "success",
  "success": true,
  "statusCode": "00000",
  "message": "OK",
  "shortMessage": "SUCCESS",
  "timestamp": "2026-10-10T21:00:00.000Z",
  "requestId": "a1b2c3d4e5f6g7h8",
  "data": {}
}

Response data

Success returns the standard envelope. data holds the payload for this method — confirm the shape in your client when integrating.

POST /api/events

Create a resource or run this action.

Bearer token

Request

ParameterInReq.Description
namebodyYDisplay name.
startDatebodyYRequest field. See Zod schema in the route module for constraints.
endDatebodyYRequest field. See Zod schema in the route module for constraints.
venuebodyYVenue name.
citybodyYCity name.
countrybodyYRequest field. See Zod schema in the route module for constraints.

Example body

{
  "name": "UAT Festival",
  "startDate": "2026-12-01T18:00:00.000Z",
  "endDate": "2026-12-01T23:00:00.000Z",
  "venue": "Windhoek",
  "city": "Windhoek",
  "country": "Namibia"
}

Example response

{
  "status": "success",
  "success": true,
  "statusCode": "00000",
  "message": "OK",
  "shortMessage": "SUCCESS",
  "timestamp": "2026-10-10T21:00:00.000Z",
  "requestId": "a1b2c3d4e5f6g7h8",
  "data": {}
}

Response data

Success returns the standard envelope. data holds the payload for this method — confirm the shape in your client when integrating.

GET /api/events/:eventId/allocations

List or read resources for this path.

Bearer token

Request

ParameterInReq.Description
eventIdpathYMongo ObjectId of the event.

Example response

{
  "status": "success",
  "success": true,
  "statusCode": "00000",
  "message": "OK",
  "shortMessage": "SUCCESS",
  "timestamp": "2026-10-10T21:00:00.000Z",
  "requestId": "a1b2c3d4e5f6g7h8",
  "data": {}
}

Response data

Success returns the standard envelope. data holds the payload for this method — confirm the shape in your client when integrating.

POST /api/events/:eventId/allocations

Create a resource or run this action.

Bearer token

Request

ParameterInReq.Description
eventIdpathYMongo ObjectId of the event.

Example response

{
  "status": "success",
  "success": true,
  "statusCode": "00000",
  "message": "OK",
  "shortMessage": "SUCCESS",
  "timestamp": "2026-10-10T21:00:00.000Z",
  "requestId": "a1b2c3d4e5f6g7h8",
  "data": {}
}

Response data

Success returns the standard envelope. data holds the payload for this method — confirm the shape in your client when integrating.

GET /api/events/:eventId/allocations/:blockId

Fetch one resource by id or token.

Bearer token

Request

ParameterInReq.Description
eventIdpathYMongo ObjectId of the event.
blockIdpathYPath parameter identifying the resource.

Example response

{
  "status": "success",
  "success": true,
  "statusCode": "00000",
  "message": "OK",
  "shortMessage": "SUCCESS",
  "timestamp": "2026-10-10T21:00:00.000Z",
  "requestId": "a1b2c3d4e5f6g7h8",
  "data": {}
}

Response data

Success returns the standard envelope. data holds the payload for this method — confirm the shape in your client when integrating.

POST /api/events/:eventId/allocations/:blockId/allocator-link

Create a resource or run this action.

Bearer token

Request

ParameterInReq.Description
eventIdpathYMongo ObjectId of the event.
blockIdpathYPath parameter identifying the resource.

Example response

{
  "status": "success",
  "success": true,
  "statusCode": "00000",
  "message": "OK",
  "shortMessage": "SUCCESS",
  "timestamp": "2026-10-10T21:00:00.000Z",
  "requestId": "a1b2c3d4e5f6g7h8",
  "data": {}
}

Response data

Success returns the standard envelope. data holds the payload for this method — confirm the shape in your client when integrating.

POST /api/events/:eventId/allocations/:blockId/codes

Create a resource or run this action.

Bearer token

Request

ParameterInReq.Description
eventIdpathYMongo ObjectId of the event.
blockIdpathYPath parameter identifying the resource.

Example response

{
  "status": "success",
  "success": true,
  "statusCode": "00000",
  "message": "OK",
  "shortMessage": "SUCCESS",
  "timestamp": "2026-10-10T21:00:00.000Z",
  "requestId": "a1b2c3d4e5f6g7h8",
  "data": {}
}

Response data

Success returns the standard envelope. data holds the payload for this method — confirm the shape in your client when integrating.

POST /api/events/:eventId/allocations/:blockId/invite

Create a resource or run this action.

Bearer token

Request

ParameterInReq.Description
eventIdpathYMongo ObjectId of the event.
blockIdpathYPath parameter identifying the resource.

Example response

{
  "status": "success",
  "success": true,
  "statusCode": "00000",
  "message": "OK",
  "shortMessage": "SUCCESS",
  "timestamp": "2026-10-10T21:00:00.000Z",
  "requestId": "a1b2c3d4e5f6g7h8",
  "data": {}
}

Response data

Success returns the standard envelope. data holds the payload for this method — confirm the shape in your client when integrating.

GET /api/events/:eventId/allocations/:blockId/invoice.pdf

List or read resources for this path.

Bearer token

Request

ParameterInReq.Description
eventIdpathYMongo ObjectId of the event.
blockIdpathYPath parameter identifying the resource.

Example response

{
  "status": "success",
  "success": true,
  "statusCode": "00000",
  "message": "OK",
  "shortMessage": "SUCCESS",
  "timestamp": "2026-10-10T21:00:00.000Z",
  "requestId": "a1b2c3d4e5f6g7h8",
  "data": {}
}

Response data

Success returns the standard envelope. data holds the payload for this method — confirm the shape in your client when integrating.

POST /api/events/:eventId/allocations/:blockId/invoice/email

Create a resource or run this action.

Bearer token

Request

ParameterInReq.Description
eventIdpathYMongo ObjectId of the event.
blockIdpathYPath parameter identifying the resource.

Example response

{
  "status": "success",
  "success": true,
  "statusCode": "00000",
  "message": "OK",
  "shortMessage": "SUCCESS",
  "timestamp": "2026-10-10T21:00:00.000Z",
  "requestId": "a1b2c3d4e5f6g7h8",
  "data": {}
}

Response data

Success returns the standard envelope. data holds the payload for this method — confirm the shape in your client when integrating.

POST /api/events/:eventId/allocations/:blockId/open-link

Create a resource or run this action.

Bearer token

Request

ParameterInReq.Description
eventIdpathYMongo ObjectId of the event.
blockIdpathYPath parameter identifying the resource.

Example response

{
  "status": "success",
  "success": true,
  "statusCode": "00000",
  "message": "OK",
  "shortMessage": "SUCCESS",
  "timestamp": "2026-10-10T21:00:00.000Z",
  "requestId": "a1b2c3d4e5f6g7h8",
  "data": {}
}

Response data

Success returns the standard envelope. data holds the payload for this method — confirm the shape in your client when integrating.

POST /api/events/:eventId/allocations/:blockId/release-unused

Create a resource or run this action.

Bearer token

Request

ParameterInReq.Description
eventIdpathYMongo ObjectId of the event.
blockIdpathYPath parameter identifying the resource.

Example response

{
  "status": "success",
  "success": true,
  "statusCode": "00000",
  "message": "OK",
  "shortMessage": "SUCCESS",
  "timestamp": "2026-10-10T21:00:00.000Z",
  "requestId": "a1b2c3d4e5f6g7h8",
  "data": {}
}

Response data

Success returns the standard envelope. data holds the payload for this method — confirm the shape in your client when integrating.

POST /api/events/:eventId/allocations/:blockId/remind

Create a resource or run this action.

Bearer token

Request

ParameterInReq.Description
eventIdpathYMongo ObjectId of the event.
blockIdpathYPath parameter identifying the resource.

Example response

{
  "status": "success",
  "success": true,
  "statusCode": "00000",
  "message": "OK",
  "shortMessage": "SUCCESS",
  "timestamp": "2026-10-10T21:00:00.000Z",
  "requestId": "a1b2c3d4e5f6g7h8",
  "data": {}
}

Response data

Success returns the standard envelope. data holds the payload for this method — confirm the shape in your client when integrating.

POST /api/events/:eventId/allocations/:blockId/slots/:slotId/revoke

Create a resource or run this action.

Bearer token

Request

ParameterInReq.Description
eventIdpathYMongo ObjectId of the event.
blockIdpathYPath parameter identifying the resource.
slotIdpathYPath parameter identifying the resource.

Example response

{
  "status": "success",
  "success": true,
  "statusCode": "00000",
  "message": "OK",
  "shortMessage": "SUCCESS",
  "timestamp": "2026-10-10T21:00:00.000Z",
  "requestId": "a1b2c3d4e5f6g7h8",
  "data": {}
}

Response data

Success returns the standard envelope. data holds the payload for this method — confirm the shape in your client when integrating.

POST /api/events/:eventId/allocations/quote

Create a resource or run this action.

Bearer token

Request

ParameterInReq.Description
eventIdpathYMongo ObjectId of the event.

Example response

{
  "status": "success",
  "success": true,
  "statusCode": "00000",
  "message": "OK",
  "shortMessage": "SUCCESS",
  "timestamp": "2026-10-10T21:00:00.000Z",
  "requestId": "a1b2c3d4e5f6g7h8",
  "data": {}
}

Response data

Success returns the standard envelope. data holds the payload for this method — confirm the shape in your client when integrating.

GET /api/events/:eventId/allocations/will-call

List or read resources for this path.

Bearer token

Request

ParameterInReq.Description
eventIdpathYMongo ObjectId of the event.

Example response

{
  "status": "success",
  "success": true,
  "statusCode": "00000",
  "message": "OK",
  "shortMessage": "SUCCESS",
  "timestamp": "2026-10-10T21:00:00.000Z",
  "requestId": "a1b2c3d4e5f6g7h8",
  "data": {}
}

Response data

Success returns the standard envelope. data holds the payload for this method — confirm the shape in your client when integrating.

POST /api/events/:eventId/allocations/will-call/:slotId/admit

Create a resource or run this action.

Bearer token

Request

ParameterInReq.Description
eventIdpathYMongo ObjectId of the event.
slotIdpathYPath parameter identifying the resource.

Example response

{
  "status": "success",
  "success": true,
  "statusCode": "00000",
  "message": "OK",
  "shortMessage": "SUCCESS",
  "timestamp": "2026-10-10T21:00:00.000Z",
  "requestId": "a1b2c3d4e5f6g7h8",
  "data": {}
}

Response data

Success returns the standard envelope. data holds the payload for this method — confirm the shape in your client when integrating.

GET /api/events/:eventId/inventory

List or read resources for this path.

Bearer token

Request

ParameterInReq.Description
eventIdpathYMongo ObjectId of the event.
namebodyYDisplay name (min 1, max 140).
skubodyYStock-keeping unit or internal item code (min 1, max 80).
imageUrlbodyNHTTPS URL of an uploaded image (max 500).
productTypebodyNText field (max 80).
expiryDatebodyNText field.
categorybodyNText field (max 80).
brandbodyNText field (max 80).
supplierbodyNText field (max 120).
barcodebodyNText field (max 80).
storageLocationbodyNText field (max 80).
batchNumberbodyNText field (max 80).
unitbodyNText field (max 20).
costPricebodyNNumeric value (min 0).
sellPricebodyNNumeric value (min 0).
taxRatebodyNNumeric value (min 0, max 100).
parLevelbodyYNumeric value (min 0).
minOrderQtybodyYNumeric value (min 0).
reorderLevelbodyYNumeric value (min 0).
onHandbodyYNumeric value (min 0).
reservedbodyYNumeric value (min 0).
damagedbodyYNumeric value (min 0).
notesbodyNText field (max 600).

Example body

{
  "name": "\u2026",
  "sku": "\u2026",
  "imageUrl": "\u2026",
  "productType": "\u2026",
  "expiryDate": "\u2026",
  "category": "\u2026",
  "brand": "\u2026",
  "supplier": "\u2026",
  "barcode": "\u2026",
  "storageLocation": "\u2026",
  "batchNumber": "\u2026",
  "unit": "\u2026",
  "costPrice": "\u2026",
  "sellPrice": "\u2026",
  "taxRate": "\u2026",
  "parLevel": "\u2026",
  "minOrderQty": "\u2026",
  "reorderLevel": "\u2026",
  "onHand": "\u2026",
  "reserved": "\u2026",
  "damaged": "\u2026",
  "notes": "\u2026"
}

Example response

{
  "status": "success",
  "success": true,
  "statusCode": "00000",
  "message": "OK",
  "shortMessage": "SUCCESS",
  "timestamp": "2026-10-10T21:00:00.000Z",
  "requestId": "a1b2c3d4e5f6g7h8",
  "data": {}
}

Response data

Success returns the standard envelope. data holds the payload for this method — confirm the shape in your client when integrating.

GET /api/events/:eventId/inventory/export.csv

List or read resources for this path.

Bearer token

Request

ParameterInReq.Description
eventIdpathYMongo ObjectId of the event.

Example response

{
  "status": "success",
  "success": true,
  "statusCode": "00000",
  "message": "OK",
  "shortMessage": "SUCCESS",
  "timestamp": "2026-10-10T21:00:00.000Z",
  "requestId": "a1b2c3d4e5f6g7h8",
  "data": {}
}

Response data

Success returns the standard envelope. data holds the payload for this method — confirm the shape in your client when integrating.

POST /api/events/:eventId/inventory/import

Create a resource or run this action.

Bearer token

Request

ParameterInReq.Description
eventIdpathYMongo ObjectId of the event.

Example response

{
  "status": "success",
  "success": true,
  "statusCode": "00000",
  "message": "OK",
  "shortMessage": "SUCCESS",
  "timestamp": "2026-10-10T21:00:00.000Z",
  "requestId": "a1b2c3d4e5f6g7h8",
  "data": {}
}

Response data

Success returns the standard envelope. data holds the payload for this method — confirm the shape in your client when integrating.

POST /api/events/:eventId/inventory/items

Create a resource or run this action.

Bearer token

Request

ParameterInReq.Description
eventIdpathYMongo ObjectId of the event.
namebodyYDisplay name (min 1, max 140).
skubodyYStock-keeping unit or internal item code (min 1, max 80).
imageUrlbodyNHTTPS URL of an uploaded image (max 500).
productTypebodyNText field (max 80).
expiryDatebodyNText field.
categorybodyNText field (max 80).
brandbodyNText field (max 80).
supplierbodyNText field (max 120).
barcodebodyNText field (max 80).
storageLocationbodyNText field (max 80).
batchNumberbodyNText field (max 80).
unitbodyNText field (max 20).
costPricebodyNNumeric value (min 0).
sellPricebodyNNumeric value (min 0).
taxRatebodyNNumeric value (min 0, max 100).
parLevelbodyYNumeric value (min 0).
minOrderQtybodyYNumeric value (min 0).
reorderLevelbodyYNumeric value (min 0).
onHandbodyYNumeric value (min 0).
reservedbodyYNumeric value (min 0).
damagedbodyYNumeric value (min 0).
notesbodyNText field (max 600).

Example body

{
  "name": "\u2026",
  "sku": "\u2026",
  "imageUrl": "\u2026",
  "productType": "\u2026",
  "expiryDate": "\u2026",
  "category": "\u2026",
  "brand": "\u2026",
  "supplier": "\u2026",
  "barcode": "\u2026",
  "storageLocation": "\u2026",
  "batchNumber": "\u2026",
  "unit": "\u2026",
  "costPrice": "\u2026",
  "sellPrice": "\u2026",
  "taxRate": "\u2026",
  "parLevel": "\u2026",
  "minOrderQty": "\u2026",
  "reorderLevel": "\u2026",
  "onHand": "\u2026",
  "reserved": "\u2026",
  "damaged": "\u2026",
  "notes": "\u2026"
}

Example response

{
  "status": "success",
  "success": true,
  "statusCode": "00000",
  "message": "OK",
  "shortMessage": "SUCCESS",
  "timestamp": "2026-10-10T21:00:00.000Z",
  "requestId": "a1b2c3d4e5f6g7h8",
  "data": {}
}

Response data

Success returns the standard envelope. data holds the payload for this method — confirm the shape in your client when integrating.

PATCH /api/events/:eventId/inventory/items/:itemId

Update selected fields on this resource.

Bearer token

Request

ParameterInReq.Description
eventIdpathYMongo ObjectId of the event.
itemIdpathYPath parameter identifying the resource.

Example response

{
  "status": "success",
  "success": true,
  "statusCode": "00000",
  "message": "OK",
  "shortMessage": "SUCCESS",
  "timestamp": "2026-10-10T21:00:00.000Z",
  "requestId": "a1b2c3d4e5f6g7h8",
  "data": {}
}

Response data

Success returns the standard envelope. data holds the payload for this method — confirm the shape in your client when integrating.

POST /api/events/:eventId/inventory/items/:itemId/adjust

Create a resource or run this action.

Bearer token

Request

ParameterInReq.Description
eventIdpathYMongo ObjectId of the event.
itemIdpathYPath parameter identifying the resource.

Example response

{
  "status": "success",
  "success": true,
  "statusCode": "00000",
  "message": "OK",
  "shortMessage": "SUCCESS",
  "timestamp": "2026-10-10T21:00:00.000Z",
  "requestId": "a1b2c3d4e5f6g7h8",
  "data": {}
}

Response data

Success returns the standard envelope. data holds the payload for this method — confirm the shape in your client when integrating.

GET /api/events/:eventId/inventory/reminder

List or read resources for this path.

Bearer token

Request

ParameterInReq.Description
eventIdpathYMongo ObjectId of the event.

Example response

{
  "status": "success",
  "success": true,
  "statusCode": "00000",
  "message": "OK",
  "shortMessage": "SUCCESS",
  "timestamp": "2026-10-10T21:00:00.000Z",
  "requestId": "a1b2c3d4e5f6g7h8",
  "data": {}
}

Response data

Success returns the standard envelope. data holds the payload for this method — confirm the shape in your client when integrating.

PATCH /api/events/:eventId/inventory/reminder

Update selected fields on this resource.

Bearer token

Request

ParameterInReq.Description
eventIdpathYMongo ObjectId of the event.

Example response

{
  "status": "success",
  "success": true,
  "statusCode": "00000",
  "message": "OK",
  "shortMessage": "SUCCESS",
  "timestamp": "2026-10-10T21:00:00.000Z",
  "requestId": "a1b2c3d4e5f6g7h8",
  "data": {}
}

Response data

Success returns the standard envelope. data holds the payload for this method — confirm the shape in your client when integrating.

POST /api/events/:eventId/inventory/reminder/trigger

Create a resource or run this action.

Bearer token

Request

ParameterInReq.Description
eventIdpathYMongo ObjectId of the event.

Example response

{
  "status": "success",
  "success": true,
  "statusCode": "00000",
  "message": "OK",
  "shortMessage": "SUCCESS",
  "timestamp": "2026-10-10T21:00:00.000Z",
  "requestId": "a1b2c3d4e5f6g7h8",
  "data": {}
}

Response data

Success returns the standard envelope. data holds the payload for this method — confirm the shape in your client when integrating.

POST /api/events/:eventId/inventory/reorder/apply

Create a resource or run this action.

Bearer token

Request

ParameterInReq.Description
eventIdpathYMongo ObjectId of the event.

Example response

{
  "status": "success",
  "success": true,
  "statusCode": "00000",
  "message": "OK",
  "shortMessage": "SUCCESS",
  "timestamp": "2026-10-10T21:00:00.000Z",
  "requestId": "a1b2c3d4e5f6g7h8",
  "data": {}
}

Response data

Success returns the standard envelope. data holds the payload for this method — confirm the shape in your client when integrating.

GET /api/events/:eventId/inventory/reports

List or read resources for this path.

Bearer token

Request

ParameterInReq.Description
eventIdpathYMongo ObjectId of the event.

Example response

{
  "status": "success",
  "success": true,
  "statusCode": "00000",
  "message": "OK",
  "shortMessage": "SUCCESS",
  "timestamp": "2026-10-10T21:00:00.000Z",
  "requestId": "a1b2c3d4e5f6g7h8",
  "data": {}
}

Response data

Success returns the standard envelope. data holds the payload for this method — confirm the shape in your client when integrating.

GET /api/events/:eventId/inventory/stream

List or read resources for this path.

Bearer token

Request

ParameterInReq.Description
eventIdpathYMongo ObjectId of the event.
namebodyYDisplay name (min 1, max 140).
skubodyYStock-keeping unit or internal item code (min 1, max 80).
imageUrlbodyNHTTPS URL of an uploaded image (max 500).
productTypebodyNText field (max 80).
expiryDatebodyNText field.
categorybodyNText field (max 80).
brandbodyNText field (max 80).
supplierbodyNText field (max 120).
barcodebodyNText field (max 80).
storageLocationbodyNText field (max 80).
batchNumberbodyNText field (max 80).
unitbodyNText field (max 20).
costPricebodyNNumeric value (min 0).
sellPricebodyNNumeric value (min 0).
taxRatebodyNNumeric value (min 0, max 100).
parLevelbodyYNumeric value (min 0).
minOrderQtybodyYNumeric value (min 0).
reorderLevelbodyYNumeric value (min 0).
onHandbodyYNumeric value (min 0).
reservedbodyYNumeric value (min 0).
damagedbodyYNumeric value (min 0).
notesbodyNText field (max 600).

Example body

{
  "name": "\u2026",
  "sku": "\u2026",
  "imageUrl": "\u2026",
  "productType": "\u2026",
  "expiryDate": "\u2026",
  "category": "\u2026",
  "brand": "\u2026",
  "supplier": "\u2026",
  "barcode": "\u2026",
  "storageLocation": "\u2026",
  "batchNumber": "\u2026",
  "unit": "\u2026",
  "costPrice": "\u2026",
  "sellPrice": "\u2026",
  "taxRate": "\u2026",
  "parLevel": "\u2026",
  "minOrderQty": "\u2026",
  "reorderLevel": "\u2026",
  "onHand": "\u2026",
  "reserved": "\u2026",
  "damaged": "\u2026",
  "notes": "\u2026"
}

Example response

{
  "status": "success",
  "success": true,
  "statusCode": "00000",
  "message": "OK",
  "shortMessage": "SUCCESS",
  "timestamp": "2026-10-10T21:00:00.000Z",
  "requestId": "a1b2c3d4e5f6g7h8",
  "data": {}
}

Response data

Success returns the standard envelope. data holds the payload for this method — confirm the shape in your client when integrating.

GET /api/events/:eventId/inventory/variance

List or read resources for this path.

Bearer token

Request

ParameterInReq.Description
eventIdpathYMongo ObjectId of the event.

Example response

{
  "status": "success",
  "success": true,
  "statusCode": "00000",
  "message": "OK",
  "shortMessage": "SUCCESS",
  "timestamp": "2026-10-10T21:00:00.000Z",
  "requestId": "a1b2c3d4e5f6g7h8",
  "data": {}
}

Response data

Success returns the standard envelope. data holds the payload for this method — confirm the shape in your client when integrating.

GET /api/events/:eventId/inventory/variance.csv

List or read resources for this path.

Bearer token

Request

ParameterInReq.Description
eventIdpathYMongo ObjectId of the event.

Example response

{
  "status": "success",
  "success": true,
  "statusCode": "00000",
  "message": "OK",
  "shortMessage": "SUCCESS",
  "timestamp": "2026-10-10T21:00:00.000Z",
  "requestId": "a1b2c3d4e5f6g7h8",
  "data": {}
}

Response data

Success returns the standard envelope. data holds the payload for this method — confirm the shape in your client when integrating.

DELETE /api/events/:id

Remove or deactivate this resource.

Bearer token

Request

ParameterInReq.Description
idpathYPath parameter identifying the resource.

Example response

{
  "status": "success",
  "success": true,
  "statusCode": "00000",
  "message": "OK",
  "shortMessage": "SUCCESS",
  "timestamp": "2026-10-10T21:00:00.000Z",
  "requestId": "a1b2c3d4e5f6g7h8",
  "data": {}
}

Response data

Success returns the standard envelope. data holds the payload for this method — confirm the shape in your client when integrating.

GET /api/events/:id

Fetch one resource by id or token.

Bearer token

Request

ParameterInReq.Description
idpathYPath parameter identifying the resource.
namebodyNDisplay name (min 2, max 200).
descriptionbodyNText field (min 1, max 2000).
coverImageUrlbodyNEvent cover image URL (max 2048).
posterImageUrlbodyNText field (max 2048).
citybodyNCity name (min 2, max 120).
venuebodyNVenue name (min 2, max 200).
latitudebodyNNumeric value (max 90).
longitudebodyNNumeric value (max 180).
timezonebodyNIANA timezone (e.g. Africa/Windhoek) (max 64).
startsAtbodyNEvent or window start time (ISO 8601).
endsAtbodyNEvent or window end time (ISO 8601).
salesEndAtbodyNRequest field. See Zod schema in the route module for constraints.
visibilitybodyNPublication state such as draft or published.
publishAtbodyNRequest field. See Zod schema in the route module for constraints.
capacitybodyNMaximum tickets or seats.
categorybodyNRequest field. See Zod schema in the route module for constraints.
keywordsbodyNText field (min 1, max 80).
isCashlessbodyNWhether cashless wallets are enabled for the event.
allowedPaymentOptionSlugsbodyNText field (min 1, max 80).
ticketTypesbodyNTicket type definitions with phases and prices.
promoCodesbodyNArray of values. See nested schema in source when complex.
bulkDiscountsbodyNArray of values. See nested schema in source when complex.
paymentMethodDiscountsbodyNArray of values. See nested schema in source when complex.
sponsorsbodyNArray of values. See nested schema in source when complex.
stallTypesbodyNArray of values. See nested schema in source when complex.
tablesbodyNArray of values. See nested schema in source when complex.
lineupbodyNArray of values. See nested schema in source when complex (max 80).
promotionbodyNRequest field. See Zod schema in the route module for constraints.

Example body

{
  "name": "\u2026",
  "description": "\u2026",
  "coverImageUrl": "\u2026",
  "posterImageUrl": "\u2026",
  "city": "\u2026",
  "venue": "\u2026",
  "latitude": "\u2026",
  "longitude": "\u2026",
  "timezone": "\u2026",
  "startsAt": "\u2026",
  "endsAt": "\u2026",
  "salesEndAt": "\u2026",
  "visibility": "\u2026",
  "publishAt": "\u2026",
  "capacity": 0,
  "category": "\u2026",
  "keywords": "\u2026",
  "isCashless": true,
  "allowedPaymentOptionSlugs": "\u2026",
  "ticketTypes": "\u2026",
  "promoCodes": "\u2026",
  "bulkDiscounts": "\u2026",
  "paymentMethodDiscounts": "\u2026",
  "sponsors": "\u2026",
  "stallTypes": "\u2026",
  "tables": "\u2026",
  "lineup": "\u2026",
  "promotion": "\u2026"
}

Example response

{
  "status": "success",
  "success": true,
  "statusCode": "00000",
  "message": "OK",
  "shortMessage": "SUCCESS",
  "timestamp": "2026-10-10T21:00:00.000Z",
  "requestId": "a1b2c3d4e5f6g7h8",
  "data": {}
}

Response data

Success returns the standard envelope. data holds the payload for this method — confirm the shape in your client when integrating.

PATCH /api/events/:id

Update selected fields on this resource.

Bearer token

Request

ParameterInReq.Description
idpathYPath parameter identifying the resource.
namebodyNDisplay name (min 2, max 200).
descriptionbodyNText field (min 1, max 2000).
coverImageUrlbodyNEvent cover image URL (max 2048).
posterImageUrlbodyNText field (max 2048).
citybodyNCity name (min 2, max 120).
venuebodyNVenue name (min 2, max 200).
latitudebodyNNumeric value (max 90).
longitudebodyNNumeric value (max 180).
timezonebodyNIANA timezone (e.g. Africa/Windhoek) (max 64).
startsAtbodyNEvent or window start time (ISO 8601).
endsAtbodyNEvent or window end time (ISO 8601).
salesEndAtbodyNRequest field. See Zod schema in the route module for constraints.
visibilitybodyNPublication state such as draft or published.
publishAtbodyNRequest field. See Zod schema in the route module for constraints.
capacitybodyNMaximum tickets or seats.
categorybodyNRequest field. See Zod schema in the route module for constraints.
keywordsbodyNText field (min 1, max 80).
isCashlessbodyNWhether cashless wallets are enabled for the event.
allowedPaymentOptionSlugsbodyNText field (min 1, max 80).
ticketTypesbodyNTicket type definitions with phases and prices.
promoCodesbodyNArray of values. See nested schema in source when complex.
bulkDiscountsbodyNArray of values. See nested schema in source when complex.
paymentMethodDiscountsbodyNArray of values. See nested schema in source when complex.
sponsorsbodyNArray of values. See nested schema in source when complex.
stallTypesbodyNArray of values. See nested schema in source when complex.
tablesbodyNArray of values. See nested schema in source when complex.
lineupbodyNArray of values. See nested schema in source when complex (max 80).
promotionbodyNRequest field. See Zod schema in the route module for constraints.

Example body

{
  "name": "\u2026",
  "description": "\u2026",
  "coverImageUrl": "\u2026",
  "posterImageUrl": "\u2026",
  "city": "\u2026",
  "venue": "\u2026",
  "latitude": "\u2026",
  "longitude": "\u2026",
  "timezone": "\u2026",
  "startsAt": "\u2026",
  "endsAt": "\u2026",
  "salesEndAt": "\u2026",
  "visibility": "\u2026",
  "publishAt": "\u2026",
  "capacity": 0,
  "category": "\u2026",
  "keywords": "\u2026",
  "isCashless": true,
  "allowedPaymentOptionSlugs": "\u2026",
  "ticketTypes": "\u2026",
  "promoCodes": "\u2026",
  "bulkDiscounts": "\u2026",
  "paymentMethodDiscounts": "\u2026",
  "sponsors": "\u2026",
  "stallTypes": "\u2026",
  "tables": "\u2026",
  "lineup": "\u2026",
  "promotion": "\u2026"
}

Example response

{
  "status": "success",
  "success": true,
  "statusCode": "00000",
  "message": "OK",
  "shortMessage": "SUCCESS",
  "timestamp": "2026-10-10T21:00:00.000Z",
  "requestId": "a1b2c3d4e5f6g7h8",
  "data": {}
}

Response data

Success returns the standard envelope. data holds the payload for this method — confirm the shape in your client when integrating.

POST /api/events/:id/directory-invites

Create a resource or run this action.

Bearer token

Request

ParameterInReq.Description
idpathYPath parameter identifying the resource.

Example response

{
  "status": "success",
  "success": true,
  "statusCode": "00000",
  "message": "OK",
  "shortMessage": "SUCCESS",
  "timestamp": "2026-10-10T21:00:00.000Z",
  "requestId": "a1b2c3d4e5f6g7h8",
  "data": {}
}

Response data

Success returns the standard envelope. data holds the payload for this method — confirm the shape in your client when integrating.

GET /api/events/:id/merchant-directory

Fetch one resource by id or token.

Bearer token

Request

ParameterInReq.Description
idpathYPath parameter identifying the resource.

Example response

{
  "status": "success",
  "success": true,
  "statusCode": "00000",
  "message": "OK",
  "shortMessage": "SUCCESS",
  "timestamp": "2026-10-10T21:00:00.000Z",
  "requestId": "a1b2c3d4e5f6g7h8",
  "data": {}
}

Response data

Success returns the standard envelope. data holds the payload for this method — confirm the shape in your client when integrating.

POST /api/events/:id/merchant-invite

Create a resource or run this action.

Bearer token

Request

ParameterInReq.Description
idpathYPath parameter identifying the resource.

Example response

{
  "status": "success",
  "success": true,
  "statusCode": "00000",
  "message": "OK",
  "shortMessage": "SUCCESS",
  "timestamp": "2026-10-10T21:00:00.000Z",
  "requestId": "a1b2c3d4e5f6g7h8",
  "data": {}
}

Response data

Success returns the standard envelope. data holds the payload for this method — confirm the shape in your client when integrating.

POST /api/events/:id/notifications/audience-preview

Create a resource or run this action.

Bearer token

Request

ParameterInReq.Description
idpathYPath parameter identifying the resource.

Example response

{
  "status": "success",
  "success": true,
  "statusCode": "00000",
  "message": "OK",
  "shortMessage": "SUCCESS",
  "timestamp": "2026-10-10T21:00:00.000Z",
  "requestId": "a1b2c3d4e5f6g7h8",
  "data": {}
}

Response data

Success returns the standard envelope. data holds the payload for this method — confirm the shape in your client when integrating.

POST /api/events/:id/notifications/broadcast

Create a resource or run this action.

Bearer token

Request

ParameterInReq.Description
idpathYPath parameter identifying the resource.
namebodyYDisplay name (min 2, max 120).
templateIdbodyYText field (min 1, max 64).
titlebodyYJob title shown on the admin profile (min 1, max 160).
bodybodyYText field (min 1, max 600).
hrefbodyNText field (max 300).
imageUrlbodyNHTTPS URL of an uploaded image (max 2048).
bannerUrlbodyNText field (max 2048).
channelsbodyYRequest field. See Zod schema in the route module for constraints.
abTestEnabledbodyNBoolean flag.
variantBTitlebodyNText field (max 160).
variantBBodybodyNText field (max 600).
abSplitPercentbodyNNumeric value (min 10, max 90).
scheduledAtbodyNText field.
sendNowbodyYBoolean flag.
audienceTypebodyYOne of: "event_ticket_holders", "specific_users".
userIdsbodyNText field (max 500).
respectPreferencesbodyYBoolean flag.

Example body

{
  "name": "\u2026",
  "templateId": "\u2026",
  "title": "\u2026",
  "body": "\u2026",
  "href": "\u2026",
  "imageUrl": "\u2026",
  "bannerUrl": "\u2026",
  "channels": "\u2026",
  "abTestEnabled": "\u2026",
  "variantBTitle": "\u2026",
  "variantBBody": "\u2026",
  "abSplitPercent": "\u2026",
  "scheduledAt": "\u2026",
  "sendNow": "\u2026",
  "audienceType": "\u2026",
  "userIds": "\u2026",
  "respectPreferences": "\u2026"
}

Example response

{
  "status": "success",
  "success": true,
  "statusCode": "00000",
  "message": "OK",
  "shortMessage": "SUCCESS",
  "timestamp": "2026-10-10T21:00:00.000Z",
  "requestId": "a1b2c3d4e5f6g7h8",
  "data": {}
}

Response data

Success returns the standard envelope. data holds the payload for this method — confirm the shape in your client when integrating.

GET /api/events/:id/notifications/campaigns

Fetch one resource by id or token.

Bearer token

Request

ParameterInReq.Description
idpathYPath parameter identifying the resource.

Example response

{
  "status": "success",
  "success": true,
  "statusCode": "00000",
  "message": "OK",
  "shortMessage": "SUCCESS",
  "timestamp": "2026-10-10T21:00:00.000Z",
  "requestId": "a1b2c3d4e5f6g7h8",
  "data": {}
}

Response data

Success returns the standard envelope. data holds the payload for this method — confirm the shape in your client when integrating.

POST /api/events/:id/notifications/campaigns/:campaignId/duplicate

Create a resource or run this action.

Bearer token

Request

ParameterInReq.Description
idpathYPath parameter identifying the resource.
campaignIdpathYPath parameter identifying the resource.
namebodyYDisplay name (min 2, max 120).
templateIdbodyYText field (min 1, max 64).
titlebodyYJob title shown on the admin profile (min 1, max 160).
bodybodyYText field (min 1, max 600).
hrefbodyNText field (max 300).
imageUrlbodyNHTTPS URL of an uploaded image (max 2048).
bannerUrlbodyNText field (max 2048).
channelsbodyYRequest field. See Zod schema in the route module for constraints.
abTestEnabledbodyNBoolean flag.
variantBTitlebodyNText field (max 160).
variantBBodybodyNText field (max 600).
abSplitPercentbodyNNumeric value (min 10, max 90).
scheduledAtbodyNText field.
sendNowbodyYBoolean flag.
audienceTypebodyYOne of: "event_ticket_holders", "specific_users".
userIdsbodyNText field (max 500).
respectPreferencesbodyYBoolean flag.

Example body

{
  "name": "\u2026",
  "templateId": "\u2026",
  "title": "\u2026",
  "body": "\u2026",
  "href": "\u2026",
  "imageUrl": "\u2026",
  "bannerUrl": "\u2026",
  "channels": "\u2026",
  "abTestEnabled": "\u2026",
  "variantBTitle": "\u2026",
  "variantBBody": "\u2026",
  "abSplitPercent": "\u2026",
  "scheduledAt": "\u2026",
  "sendNow": "\u2026",
  "audienceType": "\u2026",
  "userIds": "\u2026",
  "respectPreferences": "\u2026"
}

Example response

{
  "status": "success",
  "success": true,
  "statusCode": "00000",
  "message": "OK",
  "shortMessage": "SUCCESS",
  "timestamp": "2026-10-10T21:00:00.000Z",
  "requestId": "a1b2c3d4e5f6g7h8",
  "data": {}
}

Response data

Success returns the standard envelope. data holds the payload for this method — confirm the shape in your client when integrating.

GET /api/events/:id/notifications/templates

Fetch one resource by id or token.

Bearer token

Request

ParameterInReq.Description
idpathYPath parameter identifying the resource.

Example response

{
  "status": "success",
  "success": true,
  "statusCode": "00000",
  "message": "OK",
  "shortMessage": "SUCCESS",
  "timestamp": "2026-10-10T21:00:00.000Z",
  "requestId": "a1b2c3d4e5f6g7h8",
  "data": {}
}

Response data

Success returns the standard envelope. data holds the payload for this method — confirm the shape in your client when integrating.

POST /api/events/:id/notifications/upload-image

Create a resource or run this action.

Bearer token

Request

ParameterInReq.Description
idpathYPath parameter identifying the resource.

Example response

{
  "status": "success",
  "success": true,
  "statusCode": "00000",
  "message": "OK",
  "shortMessage": "SUCCESS",
  "timestamp": "2026-10-10T21:00:00.000Z",
  "requestId": "a1b2c3d4e5f6g7h8",
  "data": {}
}

Response data

Success returns the standard envelope. data holds the payload for this method — confirm the shape in your client when integrating.

GET /api/events/:id/ticket-stats

Fetch one resource by id or token.

Bearer token

Request

ParameterInReq.Description
idpathYPath parameter identifying the resource.
namebodyNDisplay name (min 2, max 200).
descriptionbodyNText field (min 1, max 2000).
coverImageUrlbodyNEvent cover image URL (max 2048).
posterImageUrlbodyNText field (max 2048).
citybodyNCity name (min 2, max 120).
venuebodyNVenue name (min 2, max 200).
latitudebodyNNumeric value (max 90).
longitudebodyNNumeric value (max 180).
timezonebodyNIANA timezone (e.g. Africa/Windhoek) (max 64).
startsAtbodyNEvent or window start time (ISO 8601).
endsAtbodyNEvent or window end time (ISO 8601).
salesEndAtbodyNRequest field. See Zod schema in the route module for constraints.
visibilitybodyNPublication state such as draft or published.
publishAtbodyNRequest field. See Zod schema in the route module for constraints.
capacitybodyNMaximum tickets or seats.
categorybodyNRequest field. See Zod schema in the route module for constraints.
keywordsbodyNText field (min 1, max 80).
isCashlessbodyNWhether cashless wallets are enabled for the event.
allowedPaymentOptionSlugsbodyNText field (min 1, max 80).
ticketTypesbodyNTicket type definitions with phases and prices.
promoCodesbodyNArray of values. See nested schema in source when complex.
bulkDiscountsbodyNArray of values. See nested schema in source when complex.
paymentMethodDiscountsbodyNArray of values. See nested schema in source when complex.
sponsorsbodyNArray of values. See nested schema in source when complex.
stallTypesbodyNArray of values. See nested schema in source when complex.
tablesbodyNArray of values. See nested schema in source when complex.
lineupbodyNArray of values. See nested schema in source when complex (max 80).
promotionbodyNRequest field. See Zod schema in the route module for constraints.

Example body

{
  "name": "\u2026",
  "description": "\u2026",
  "coverImageUrl": "\u2026",
  "posterImageUrl": "\u2026",
  "city": "\u2026",
  "venue": "\u2026",
  "latitude": "\u2026",
  "longitude": "\u2026",
  "timezone": "\u2026",
  "startsAt": "\u2026",
  "endsAt": "\u2026",
  "salesEndAt": "\u2026",
  "visibility": "\u2026",
  "publishAt": "\u2026",
  "capacity": 0,
  "category": "\u2026",
  "keywords": "\u2026",
  "isCashless": true,
  "allowedPaymentOptionSlugs": "\u2026",
  "ticketTypes": "\u2026",
  "promoCodes": "\u2026",
  "bulkDiscounts": "\u2026",
  "paymentMethodDiscounts": "\u2026",
  "sponsors": "\u2026",
  "stallTypes": "\u2026",
  "tables": "\u2026",
  "lineup": "\u2026",
  "promotion": "\u2026"
}

Example response

{
  "status": "success",
  "success": true,
  "statusCode": "00000",
  "message": "OK",
  "shortMessage": "SUCCESS",
  "timestamp": "2026-10-10T21:00:00.000Z",
  "requestId": "a1b2c3d4e5f6g7h8",
  "data": {}
}

Response data

Success returns the standard envelope. data holds the payload for this method — confirm the shape in your client when integrating.

GET /api/events/merchant-invite/:slug

Fetch one resource by id or token.

Public

Request

ParameterInReq.Description
slugpathYPath parameter identifying the resource.

Example response

{
  "status": "success",
  "success": true,
  "statusCode": "00000",
  "message": "OK",
  "shortMessage": "SUCCESS",
  "timestamp": "2026-10-10T21:00:00.000Z",
  "requestId": "a1b2c3d4e5f6g7h8",
  "data": {}
}

Response data

Success returns the standard envelope. data holds the payload for this method — confirm the shape in your client when integrating.

GET /api/events/public/:id

Fetch one resource by id or token.

Public

Request

ParameterInReq.Description
idpathYPath parameter identifying the resource.

Example response

{
  "status": "success",
  "success": true,
  "statusCode": "00000",
  "message": "OK",
  "shortMessage": "SUCCESS",
  "timestamp": "2026-10-10T21:00:00.000Z",
  "requestId": "a1b2c3d4e5f6g7h8",
  "data": {}
}

Response data

Success returns the standard envelope. data holds the payload for this method — confirm the shape in your client when integrating.

GET /api/events/public/:id/ticket-inventory

Return public ticket availability for an event.

Public

Request

ParameterInReq.Description
idpathYPath parameter identifying the resource.

Example response

{
  "status": "success",
  "success": true,
  "statusCode": "00000",
  "message": "OK",
  "shortMessage": "SUCCESS",
  "timestamp": "2026-10-10T21:00:00.000Z",
  "requestId": "a1b2c3d4e5f6g7h8",
  "data": {}
}

Response data

Success returns the standard envelope. data holds the payload for this method — confirm the shape in your client when integrating.

GET /api/events/public/discover

List publicly discoverable events.

Public

Request

No body or query parameters. Path values above, if any, are enough.

Example response

{
  "status": "success",
  "success": true,
  "statusCode": "00000",
  "message": "OK",
  "shortMessage": "SUCCESS",
  "timestamp": "2026-10-10T21:00:00.000Z",
  "requestId": "a1b2c3d4e5f6g7h8",
  "data": {
    "events": [
      {
        "id": "66f0event0001",
        "name": "Sunset Fest 2026",
        "city": "Windhoek",
        "venue": "Independence Stadium",
        "startsAt": "2026-10-31T12:00:00.000Z",
        "coverImageUrl": "https://cdn.example/cover.jpg",
        "isCashless": true
      }
    ]
  }
}

Response data

Wrapped in the standard envelope (status, success, data, …). See the introduction for envelope fields.

FieldDescription
data.eventsArray. Element shape shown when sample includes objects.
data.events[].idResource identifier (Mongo ObjectId string).
data.events[].nameHuman-readable name.
data.events[].cityCity for the event.
data.events[].venueVenue name.
data.events[].startsAtStart timestamp (ISO 8601).
data.events[].coverImageUrlPublic cover image URL.
data.events[].isCashlessWhether cashless is enabled for the event.
POST /api/events/upload-cover

Create a resource or run this action.

Bearer token

Request

No body or query parameters. Path values above, if any, are enough.

Example response

{
  "status": "success",
  "success": true,
  "statusCode": "00000",
  "message": "OK",
  "shortMessage": "SUCCESS",
  "timestamp": "2026-10-10T21:00:00.000Z",
  "requestId": "a1b2c3d4e5f6g7h8",
  "data": {}
}

Response data

Success returns the standard envelope. data holds the payload for this method — confirm the shape in your client when integrating.

Lock this page again

Events & catalogue · 50 methods · October 2026