API reference
Every endpoint in the /v1 contract. 23 of the 65 are available during early access, and the others are marked. New to the API? Start with the quickstart.
Base URLs
| Environment | Base URL |
|---|---|
| Production | https://api.vojo-media.com |
| Development | https://dev.api.vojo-media.com |
Account
The signed-in user, organisations and entitlements.
Screens
Physical displays and their links to sites and devices.
- get
/v1/screensList screens - post
/v1/screensCreate a screen - get
/v1/screens/{screen_id}Get a screen - patch
/v1/screens/{screen_id}Update a screen - delete
/v1/screens/{screen_id}Delete a screen - put
/v1/screens/{screen_id}/harvesterAssign a harvester to a screen - delete
/v1/screens/{screen_id}/harvesterUnassign a screen's harvester - put
/v1/screens/{screen_id}/siteAssign a screen to a site - delete
/v1/screens/{screen_id}/siteRemove a screen from its site - post
/v1/screens/{screen_id}/calibrationsCalibrate a screen - get
/v1/screen-size-rangesList screen size ranges
Sites
Physical locations that contain screens.
Harvesters
Vojo's optical sensors, fitted to screens.
Clients
Advertisers the organisation works for (read-only).
Campaigns
Campaigns (read-only in v1).
Advertisements
Creatives: upload, register, update, archive.
- get
/v1/advertisementsList advertisements - post
/v1/advertisementsRegister an advertisement - post
/v1/advertisement-uploadsStart an upload - get
/v1/advertisements/{advertisement_id}Get an advertisement - patch
/v1/advertisements/{advertisement_id}Update an advertisement - delete
/v1/advertisements/{advertisement_id}Archive an advertisement
Wrappers
Wrap a creative in a Vojo Passport.
Plays
Plays, with their score, band and phase, and the evidence events matched into each one.
Webhooks
Register the endpoints Vojo delivers events to, roll their signing secrets and inspect deliveries. See Receive webhooks and the event reference.
- get
/v1/webhook-endpointsList webhook endpoints - post
/v1/webhook-endpointsCreate a webhook endpoint - get
/v1/webhook-endpoints/{webhook_endpoint_id}Get a webhook endpoint - patch
/v1/webhook-endpoints/{webhook_endpoint_id}Update a webhook endpoint - delete
/v1/webhook-endpoints/{webhook_endpoint_id}Delete a webhook endpoint - post
/v1/webhook-endpoints/{webhook_endpoint_id}/roll-secretRoll a webhook endpoint's signing secret - get
/v1/webhook-endpoints/{webhook_endpoint_id}/deliveriesList recent deliveries - post
/v1/webhook-endpoints/{webhook_endpoint_id}/deliveries/{delivery_id}/retryRetry a delivery
Stats
Aggregate reads. Every play count is a count of plays, the same unit GET /v1/plays lists, so totals reconcile with the play list.
- get
/v1/stats/playsPlays over time - get
/v1/stats/activityActivity matrix - get
/v1/stats/attentionScreens needing attention - get
/v1/issuesList operational issues - get
/v1/stats/sitesPer-site harvester health - get
/v1/stats/verificationVerified plays by method - get
/v1/screens/{screen_id}/stats/performanceScreen performance - get
/v1/screens/{screen_id}/stats/contentScreen content breakdown - get
/v1/screens/{screen_id}/stats/qualityScreen quality - get
/v1/harvesters/{harvester_id}/stats/playsHarvester verified plays - get
/v1/stats/evidence-compositionEvidence composition by month
Dashboards
Saved dashboards (user-owned; OAuth only).
Scopes
A secret key or OAuth token only reaches the endpoints its scopes allow. A missing scope returns insufficient_scope.
| Scope | Allows |
|---|---|
account:read | Read the signed-in user, accessible organisations and entitlements. |
account:write | Create organisations and set the default organisation. |
screens:read | Read screens and screen size ranges. |
screens:write | Create, update and delete screens; assign sites and harvesters; calibrate. |
sites:read | Read sites. |
sites:write | Create, update and delete sites. |
harvesters:read | Read harvesters. |
harvesters:write | Activate harvesters. |
campaigns:read | Read campaigns. |
advertisements:read | Read advertisements. |
advertisements:write | Upload, register, update and archive advertisements. |
clients:read | Read clients. |
stats:read | Read aggregate statistics and issues. |
plays:read | Read plays and their evidence events. |
webhooks:read | Read webhook endpoints and their deliveries. |
webhooks:write | Create, change, delete webhook endpoints, roll their secrets and retry deliveries. |
wrappers:write | Wrap creatives in a Vojo Passport. |
dashboards:read | Read saved dashboards. |
dashboards:write | Create, update and delete the user's dashboards. |