Home Features Pricing Blog Docs
Log in Start for Free
English | Deutsch

Venues are the physical locations where your events take place. An event always belongs to one venue, and the event’s timezone (used to resolve starts_at / ends_at in human-friendly form) is inherited from the venue.

GET /admin/venues

Returns all venues in your account, alphabetically by name.

curl -H "Authorization: Bearer your-token-here" \
  -H "Accept: application/json" \
  https://app.usetix.io/admin/venues

Response:

{
  "venues": [
    {
      "id": 7,
      "name": "The Venue",
      "address": "Hauptstr. 1",
      "city": "Berlin",
      "postal_code": "10115",
      "country": "DE",
      "timezone": "Berlin",
      "latitude": "52.520008",
      "longitude": "13.404954",
      "event_count": 3
    }
  ]
}

GET /admin/venues/:id

Returns a single venue along with the events that take place there.

curl -H "Authorization: Bearer your-token-here" \
  -H "Accept: application/json" \
  https://app.usetix.io/admin/venues/7

The events array uses the same shape as the events endpoint.

POST /admin/venues

Creates a new venue.

curl -X POST \
  -H "Authorization: Bearer your-token-here" \
  -H "Accept: application/json" \
  -H "Content-Type: application/json" \
  -d '{"name": "The Venue", "address": "Hauptstr. 1", "city": "Berlin", "postal_code": "10115", "country": "DE", "timezone": "Berlin"}' \
  https://app.usetix.io/admin/venues

Body parameters:

Field Required Notes
name yes Display name.
address yes Street address.
city yes City name.
postal_code yes ZIP / postal code.
country no ISO 3166 alpha-2 code. Defaults to DE.
timezone no IANA tz name (e.g. Berlin, Europe/London). Defaults to Berlin.

Response: 201 Created with the venue JSON and a Location header.

PATCH /admin/venues/:id

Updates a venue. Send only the fields you want to change.

curl -X PATCH \
  -H "Authorization: Bearer your-token-here" \
  -H "Accept: application/json" \
  -H "Content-Type: application/json" \
  -d '{"name": "The New Venue"}' \
  https://app.usetix.io/admin/venues/7

Response: 200 OK with the updated venue JSON.

DELETE /admin/venues/:id

Deletes a venue. Venues with attached events cannot be deleted; the API returns 422 Unprocessable Entity in that case — reassign or delete the events first.

curl -X DELETE \
  -H "Authorization: Bearer your-token-here" \
  -H "Accept: application/json" \
  https://app.usetix.io/admin/venues/7

Response: 204 No Content on success.

Venue fields

Field Type Notes
id integer Internal numeric ID. Path parameter.
name string Display name.
address string Street address.
city string City name.
postal_code string ZIP / postal code.
country string ISO 3166 alpha-2 code.
timezone string IANA tz name. Used to interpret event datetimes.
latitude string | null Decimal as string. Auto-populated from address geocoding when available.
longitude string | null Decimal as string.
event_count integer Number of events currently scheduled at this venue (only present on index and show).