API · v2

Submit YouTube ad campaigns to The Immeasurable.

A managed pipeline for approved partners. Send us your campaign brief — we run it through our advertising infrastructure and report delivery back. Reach support to request an API key.

Endpoint

https://theimmeasurable.co/api/v2

HTTP

POST

Body

form-urlencoded or JSON

Authentication

Every request includes your key in the request body. Treat the key like a password — store it as an environment variable, never in client-side code, and never paste it into shared logs.

If a key is leaked, contact support immediately and we will rotate it. Rate limits are 120 requests / minute per key.

POST

services — list available services

Returns the services this key is authorised to submit. Each service has a numeric service id you pass to add.

Parameters

ParameterTypeDescription
key*stringYour API key.
action*string"services"

Example response

[
  {
    "service":  1,
    "name":     "YouTube Views — In-stream",
    "type":     "Default",
    "category": "YouTube",
    "rate":     "20.00",
    "min":      2500,
    "max":      1000000,
    "refill":   false,
    "cancel":   false
  },
  ...
]
POST

add — submit an order

Creates a new campaign on your behalf. The order is queued and admins review it before it goes live; you can track the lifecycle with status.

Parameters

ParameterTypeDescription
key*stringYour API key.
action*string"add"
service*integerService id from the services list.
link*stringYouTube video URL (the target).
quantity*integerUnits ordered (views / subscribers / etc.). Must meet the service min.
namestringOptional label shown in the dashboard.

Example request — curl

curl -X POST 'https://theimmeasurable.co/api/v2' \
  -d 'key=YOUR_API_KEY' \
  -d 'action=add' \
  -d 'service=1' \
  -d 'link=https://youtube.com/watch?v=abc123' \
  -d 'quantity=5000'

Example response

{
  "order": "CMP-A4F2B7"
}
POST

status — order status

Pass order for a single order or orders (comma-separated, up to 100) for a batch.

Parameters

ParameterTypeDescription
key*stringYour API key.
action*string"status"
orderstringSingle order id (CMP-XXXXXX).
ordersstringComma-separated list of order ids (max 100). Use INSTEAD of order.

Example response — single

{
  "charge":      "50.00",
  "start_count": 0,
  "status":      "In progress",
  "remains":     0,
  "currency":    "USD"
}

Status values

Pending, Processing, In progress, Completed, Canceled.

POST

balance — account balance

Partner accounts settle billing with us on a separate cycle, so this endpoint returns a large numeric value rather than a tracked wallet balance. Kept available for downstream software that polls a balance field as part of its standard order flow.

Parameters

ParameterTypeDescription
key*stringYour API key.
action*string"balance"

Example response

{
  "balance":  "999999.99",
  "currency": "USD"
}

Service IDs

Pass service to the add action.

IDServiceSurface
1YouTube Views — In-streamBefore / during YouTube videos
2YouTube Views — In-feedIn-feed / suggested
3YouTube Views — ShortsYouTube Shorts feed
4YouTube SubscribersDemand Gen
5Multi-platform engagementPartner network (non-Google)

Call services at runtime for the live rate per 1,000 units.

Errors

Failure responses return { "error": "<message>" } with an HTTP status code.

CodeMeaning
400Missing or invalid parameter.
401Missing or invalid key.
403Key not allowed for the requested service.
429Rate limit exceeded (120 / min / key).
503No active Google Ads account or no pricing rate for this service. Retry shortly.

Ready to integrate?

Email [email protected] with your business name and the campaign services you want to integrate (views, subscribers, multi-platform). We onboard partners manually — a real human reviews every credential before issue.