Skip to content

Quickstart

This walks through your first authenticated request end to end. It uses the Inventory API’s device-list endpoint as a harmless “is my setup working?” check — it returns an empty list until you import inventory.

POST /oauth/v2/token HTTP/1.1
Host: auth.dev.retailmedia.verve.com
Content-Type: application/x-www-form-urlencoded
Accept: application/json
grant_type=client_credentials&client_id=your-user%40your-org&client_secret=your-client-secret&scope=openid

Copy the access_token from the response.

Send the token as a Bearer credential and identify your project with X-Verve-Namespace:

POST /v1alpha/inventory/devices HTTP/1.1
Host: api.dev.retailmedia.verve.com
Authorization: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6...
X-Verve-Namespace: project:01ABCDEFGHIJKLMNOPQRSTUVWX
Content-Type: application/json
{}

A 200 OK (even with an empty {} body) means authentication and authorization are working. 🎉

The Ad API is public, so a request carries no token or namespace header:

GET /v1alpha/adrequest?key=RETAILER_KEY&playerid=PLAYER_ID HTTP/1.1
Host: api.dev.retailmedia.verve.com
Accept: application/xml
  • API Reference — every endpoint, parameter, and schema.
  • Guides — how the ad loop and inventory model work end to end.