Skip to content

Update a venue

Request

Updates the fields supplied and returns the venue. Only the fields sent are touched, so an empty body is a valid request that changes nothing.

Sending address replaces the address already held rather than merging into it, so send the whole address every time. Sending is_virtual as true detaches the address instead, and the response to that request still shows the old address even though it is gone - read the venue back to see its settled state.

A venue stays under the location it was created in; this endpoint does not move it.

Security
default
Path
location_idintegerrequired

The ID of the location.

idintegerrequired

The ID of the venue.

Headers
Rosterfy-Platformstring
Bodyapplication/json
namestring

The name administrators see. Required.

frontend_namestring

The name volunteers see in the portal. Required, and shown in place of name to anyone without administrator access, so it is worth setting even when the two match.

codestring

A short reference for the venue. Letters, numbers, commas, dashes and underscores only - spaces and other punctuation are rejected. Accounts configured to require unique venue codes reject a code already in use; otherwise codes may repeat.

training_idsArray of integers

The IDs of the training modules assigned to anyone who accepts a role at this venue. Replaces the whole list rather than adding to it, so send every module you want kept. Omitting the field leaves the stored list untouched.

is_virtualboolean

Whether the venue has no physical address. A virtual venue is excluded from proximity searches and sorts after venues that have coordinates. Setting this on an existing venue detaches the address, and switching it back off does not restore it - send the address again.

descriptionstring

A description of the venue, in HTML. Shown to volunteers alongside the venue name.

addressobject

Where the venue is, as an address object with street_address_1, street_address_2, street_address_3, city, region, postcode and a two-letter country. Optional even for a venue that is not virtual. On create the address is stored as sent; on update it replaces the address already held. Ignored when is_virtual is set in the same request.

curl -i -X PUT \
  'https://developer.rosterfy.com/_mock/api-docs/openapi/api/v2/headcount/location/{location_id}/venue/{id}' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -H 'Rosterfy-Platform: admin' \
  -d '{
    "name": "North Gate",
    "frontend_name": "North Gate",
    "code": "NORTHGATE",
    "training_ids": [
      1
    ],
    "is_virtual": 0,
    "description": "<p>Main pedestrian entrance.</p>",
    "address": {
      "iso": "AUS",
      "region_code": "Example Region",
      "coordinates": {
        "latitude": null,
        "longitude": null
      },
      "street_address_1": "1 Example Street",
      "street_address_2": null,
      "street_address_3": null,
      "city": "Example City",
      "postcode": "1000",
      "region": "Example Region",
      "country": "AU",
      "latitude": null,
      "longitude": null
    }
  }'

Responses

Bodyapplication/json
objectobject
niceobject
relationsobject
permissionsobject
Response
{ "object": { "id": 1, "headcount_location_id": 1, "name": "North Gate", "frontend_name": "North Gate", "code": "NORTHGATE", "is_virtual": 0, "description": "<p>Main pedestrian entrance.</p>", "is_system": 0, "training_ids": [ … ], "deleted_at": null, "created_at": "2026-06-09T05:36:16.000000Z", "updated_at": "2026-06-09T05:36:16.000000Z", "uuid": "f64e8d2b-7f0d-42fb-91bc-98a098a7f191", "address": { … } }, "nice": { "rrn": "rrn:local:20101:venue:1", "address": "1 Example Street\nExample City\nExample Region\nAustralia\n1000", "address_oneline": "1 Example Street, Example City, Example Region, Australia, 1000", "address.country": "Australia", "address.country:raw": "AUS", "address.city": "Example City", "address.region": "Example Region", "address.region:raw": "Example Region", "address.postcode": "1000", "address.street_address_1": "1 Example Street", "address.street_address_2": null, "address.street_address_3": null, "address.latitude": null, "address.longitude": null, "location_name": "Main Campus", "headcount_location_type_name": "Stadium", "headcount_location_type_id": 1 }, "relations": { "location": { … } }, "permissions": { "read": true, "update": true, "delete": true } }