swarmtix_event_images_set
Sets an event's cover image and host logo from a public https URL or base64 image data
swarmtix_event_images_set
Sets an event's cover image and its host logo, and returns the stored image URLs. Each image can be a public https URL or base64 image data.
When you would reach for it
- Adding a cover image to a new draft.
- Setting the host logo shown on the event page.
- Replacing both in one call.
Scope
events:write
Each call stores new copies. Calling it twice leaves an unused copy of the first image behind. It is not idempotent, so do not retry it blindly.
This is the one tool marked open world. When you give a URL, Swarmtix fetches it. Every other tool works on Swarmtix data only.
Parameters
Give coverImage, hostLogo or both.
| Name | Type | Required | Default | Description |
|---|---|---|---|---|
event | string | Yes | - | The event's id (a GUID) or its URL slug. |
coverImage | string | No | keeps current | The cover image: an https URL, a data:image/...;base64, URI or plain base64 image data. |
hostLogo | string | No | keeps current | The host logo, in the same forms. |
What is accepted
- PNG, JPEG, WebP and GIF. SVG is not accepted. The format is read from the image bytes, not from the declared content type.
- At most 10 MB and 16 million pixels.
- Both images are checked before either is stored, so a bad second image cannot leave the first one stored.
Swarmtix stores a resized WebP copy, no wider than 1800 pixels. The original is not kept. Setting a cover image also removes the Unsplash credit shown with the old one.
URL rules
A URL is fetched by Swarmtix, so it is held to strict rules:
httpsonly, on port 443, with no username or password in it.- A host name, not an IP address.
- The address it resolves to must be a public one. A host that points at a private or internal address is refused.
- Redirects are not followed.
- The fetch stops after 10 seconds or 10 MB.
Every fetch failure gives the same sentence, so the error cannot be used to probe what Swarmtix can reach. If you cannot host the image on a public https URL, send it as base64.
Example call
{
"name": "swarmtix_event_images_set",
"arguments": {
"event": "spring-summit-2027",
"coverImage": "https://example.com/images/summit-cover.jpg"
}
}What comes back
{
"eventId": "3b6f81ce-04a2-4d97-b5e8-7c10924af3d6",
"coverImage": "https://cdn.example.net/images/6c1d2a0e-5b77-4a4c-9d1c-0a7f3e2b9d10.webp",
"hostLogo": null
}| Field | What it is |
|---|---|
eventId | The event the images belong to |
coverImage | The stored cover image URL |
hostLogo | The stored host logo URL |
Troubleshooting
"coverImage is not valid: the image could not be fetched from that URL."
The URL is not https on port 443, has a login in it, uses an IP address, points at a non-public address, redirects, is too big, is too slow, or did not answer. The message is the same for all of these on purpose. Check the URL in a browser, or send base64.
"coverImage is not valid: it is not a PNG, JPEG, WebP or GIF image of at most 16 million pixels."
The file is another format (SVG for example) or is too large in pixels.
"coverImage is not valid: the image is larger than 10 MB."
Send a smaller file.
"fields is not valid: no image was given."
Send coverImage, hostLogo or both.
"Swarmtix could not complete this request. Nothing was changed."
The images could not be stored or saved. Calling again is safe, but it can leave an unused copy behind.
Use cases
- Cover image for a new draft from a URL
- Host logo sent as base64 from a local file
- Swapping both after a rebrand