Announcements
Create and update announcements with complete curl request examples.
Build a request
Example data only. No request is sent.
curl --fail-with-body --silent --show-error --globoff --max-time 30 --request POST \
--url "${BRELLA_API_BASE_URL}"'/api/core/organizations/123/events/456/announcements' \
--header "Accept: application/vnd.brella.v4+json" \
--header "Brella-API-Access-Token: ${BRELLA_API_ACCESS_TOKEN}" \
--header "Content-Type: application/json" \
--data-raw '{
"heading": "Welcome reception",
"content": "Doors open at 18:00.",
"delivery_mode": "scheduled",
"scheduled_at": "2026-09-03T15:00:00Z"
}'{
"data": {
"id": "1201",
"type": "announcement"
}
}The token scope determines returned fields. This selector illustrates that configuration; it does not change your token or the request.
Collection path: events/{event_id}/announcements
Released announcements are immutable and cannot be patched. Every target list must belong to the event.
POST an announcement
View the complete cURL example
curl --fail-with-body --silent --show-error --globoff --max-time 30 --request POST \
--url "${BRELLA_API_BASE_URL}"'/api/core/organizations/123/events/456/announcements' \
--header "Accept: application/vnd.brella.v4+json" \
--header "Brella-API-Access-Token: ${BRELLA_API_ACCESS_TOKEN}" \
--header "Content-Type: application/json" \
--data-raw '{
"heading": "Welcome reception",
"content": "Doors open at 18:00.",
"url": "https://example.com/reception",
"send_as_email": false,
"target_list_ids": [
401,
402
],
"delivery_mode": "scheduled",
"scheduled_at": "2026-09-03T15:00:00Z"
}'The created announcement starts unreleased. The response type is announcement; useful write-response fields include heading, delivery_mode, scheduled_at, target_list_ids, and released.
PATCH an announcement
This example reschedules an existing unreleased announcement. Omitted heading, content, URL, email, and targeting values remain unchanged.
View the complete cURL example
curl --fail-with-body --silent --show-error --globoff --max-time 30 --request PATCH \
--url "${BRELLA_API_BASE_URL}"'/api/core/organizations/123/events/456/announcements/7101' \
--header "Accept: application/vnd.brella.v4+json" \
--header "Brella-API-Access-Token: ${BRELLA_API_ACCESS_TOKEN}" \
--header "Content-Type: application/json" \
--data-raw '{
"delivery_mode": "scheduled",
"scheduled_at": "2026-09-03T16:00:00Z"
}'Use {"delivery_mode":"draft"} to remove the scheduled job from an unreleased announcement. immediate schedules execution at the current time; it does not directly mark the record as released inside the PATCH request.
Input reference
7 inputs. Expand a field for its request type and update behavior. These are the example request keys; your administrator can configure aliases.
headingScalar string
- POST
- Required by the model
- PATCH
- Optional
Announcement heading, at most 999 characters.
contentScalar string
- POST
- Required by the model
- PATCH
- Optional
Announcement content, at most 99,999 characters.
urlScalar string or `null`
- POST
- Optional
- PATCH
- Optional
Related URL.
send_as_emailJSON boolean
- POST
- Optional
- PATCH
- Optional
Email sending requires an organization-wide, unrestricted scope.
target_list_idsArray of scalar IDs
- POST
- Optional
- PATCH
- Optional
Full replacement when supplied. [] removes list-specific targeting.
delivery_modeScalar string
- POST
- Optional
- PATCH
- Optional
draft, immediate, or scheduled.
scheduled_atISO 8601 string
- POST
- Conditional
- PATCH
- Conditional
Required when mode is scheduled. Supplying it without a mode implies scheduled.