Providers

GET /api/v1/providers/ Auth required

List slot providers

Cursor-paginated list of public slot providers. Supports ?updated_since for incremental sync and ETag/304. X-Sync-Timestamp response header for next-sync cursor. Use /providers/ids/ for tombstone reconcile.

Parameters

Name In Type Required Description Example
country query string optional Country (exact, free-text)
cursor query string optional The pagination cursor value.
established_after query integer optional Established >= year
established_before query integer optional Established < year
has_news query boolean optional Brands with news only
ordering query string optional Which field to use when ordering the results.
page_size query integer optional Number of results to return per page.
search query string optional Search by name and aliases
updated_since query string optional ISO-8601 datetime. Returns only records updated at or after this moment.
curl \
  -H "Authorization: Token <YOUR_TOKEN>" \
  "https://i-gaming.tools/api/v1/providers/"
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://i-gaming.tools/api/v1/providers/');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, ['Authorization: Token <YOUR_TOKEN>']);
$response = curl_exec($ch);
curl_close($ch);
echo $response;
const response = await fetch("https://i-gaming.tools/api/v1/providers/", {
  method: "GET",
  headers: {
  "Authorization": "Token <YOUR_TOKEN>"
}
});
const data = await response.json();
console.log(data);
import requests

headers = {
    "Authorization": "Token <YOUR_TOKEN>"
}
response = requests.get("https://i-gaming.tools/api/v1/providers/", headers=headers)

print(response.json())

Response fields

next string(uri) | null
previous string(uri) | null
results array[object]
Example response
{
  "next": "http://api.example.org/accounts/?cursor=cD00ODY%3D\"",
  "previous": "http://api.example.org/accounts/?cursor=cj0xJnA9NDg3",
  "results": [
    [
      {
        "slug": "example-provider",
        "kind": "slot_provider",
        "name": "Example Provider",
        "aliases": [
          "Example"
        ],
        "hosts_count": 3,
        "news_count": 42
      }
    ]
  ]
}
GET /api/v1/providers/ids/ Auth required

Reconcile — all public provider slugs

Cursor-paginated list of ALL public provider slugs for tombstone diff. Results are plain strings, not objects. Decrements quota once per request. X-Sync-Timestamp included in response header.

curl \
  -H "Authorization: Token <YOUR_TOKEN>" \
  "https://i-gaming.tools/api/v1/providers/ids/"
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://i-gaming.tools/api/v1/providers/ids/');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, ['Authorization: Token <YOUR_TOKEN>']);
$response = curl_exec($ch);
curl_close($ch);
echo $response;
const response = await fetch("https://i-gaming.tools/api/v1/providers/ids/", {
  method: "GET",
  headers: {
  "Authorization": "Token <YOUR_TOKEN>"
}
});
const data = await response.json();
console.log(data);
import requests

headers = {
    "Authorization": "Token <YOUR_TOKEN>"
}
response = requests.get("https://i-gaming.tools/api/v1/providers/ids/", headers=headers)

print(response.json())
GET /api/v1/providers/{slug}/ Auth required

Get provider detail

Full provider profile: firmographics, assets (logo), company block (hq/offices/licenses/contacts), counts (slots/jobs/news/team/has_demand), HATEOAS links to sub-resources. ETag/304 via If-None-Match.

Parameters

Name In Type Required Description Example
slug path string required
curl \
  -H "Authorization: Token <YOUR_TOKEN>" \
  "https://i-gaming.tools/api/v1/providers/{slug}/"
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://i-gaming.tools/api/v1/providers/{slug}/');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, ['Authorization: Token <YOUR_TOKEN>']);
$response = curl_exec($ch);
curl_close($ch);
echo $response;
const response = await fetch("https://i-gaming.tools/api/v1/providers/{slug}/", {
  method: "GET",
  headers: {
  "Authorization": "Token <YOUR_TOKEN>"
}
});
const data = await response.json();
console.log(data);
import requests

headers = {
    "Authorization": "Token <YOUR_TOKEN>"
}
response = requests.get("https://i-gaming.tools/api/v1/providers/{slug}/", headers=headers)

print(response.json())

Response fields

slug string
kind string | null Brand kind code string.
name string
aliases array[string]
tagline string
about_html string Sanitized provider bio (nh3-cleaned HTML). Never raw text.
firmographics object
verified_at string(date-time) | null
updated_at string(date-time)
assets object
company object
counts object
hosts array[object]
GET /api/v1/providers/{slug}/demand/ Auth required

Search demand for this provider

Provider demand snapshot: computed_at, provider-level metrics, top_slots. Empty snapshot → 200 with nulls/empty (not 404). PUBLISHED-ONLY for top_slots.

Parameters

Name In Type Required Description Example
slug path string required
curl \
  -H "Authorization: Token <YOUR_TOKEN>" \
  "https://i-gaming.tools/api/v1/providers/{slug}/demand/"
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://i-gaming.tools/api/v1/providers/{slug}/demand/');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, ['Authorization: Token <YOUR_TOKEN>']);
$response = curl_exec($ch);
curl_close($ch);
echo $response;
const response = await fetch("https://i-gaming.tools/api/v1/providers/{slug}/demand/", {
  method: "GET",
  headers: {
  "Authorization": "Token <YOUR_TOKEN>"
}
});
const data = await response.json();
console.log(data);
import requests

headers = {
    "Authorization": "Token <YOUR_TOKEN>"
}
response = requests.get("https://i-gaming.tools/api/v1/providers/{slug}/demand/", headers=headers)

print(response.json())

Response fields

computed_at string(date-time) | null
provider object
top_slots array[object]
GET /api/v1/providers/{slug}/jobs/ Auth required

Job vacancies for this provider

Brand-scoped cursor-paginated job listings. Scoped by brand FK (not LinkedIn company). Supports all JobsFilterSet params (segment/country/remote/seniority/type). Supports ?updated_since and ETag/304.

Parameters

Name In Type Required Description Example
country query string optional Country (exact, free-text)
cursor query string optional The pagination cursor value.
established_after query integer optional Established >= year
established_before query integer optional Established < year
has_news query boolean optional Brands with news only
ordering query string optional Which field to use when ordering the results.
page_size query integer optional Number of results to return per page.
search query string optional Search by name and aliases
slug path string required
updated_since query string optional ISO-8601 datetime. Returns only records updated at or after this moment.
curl \
  -H "Authorization: Token <YOUR_TOKEN>" \
  "https://i-gaming.tools/api/v1/providers/{slug}/jobs/"
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://i-gaming.tools/api/v1/providers/{slug}/jobs/');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, ['Authorization: Token <YOUR_TOKEN>']);
$response = curl_exec($ch);
curl_close($ch);
echo $response;
const response = await fetch("https://i-gaming.tools/api/v1/providers/{slug}/jobs/", {
  method: "GET",
  headers: {
  "Authorization": "Token <YOUR_TOKEN>"
}
});
const data = await response.json();
console.log(data);
import requests

headers = {
    "Authorization": "Token <YOUR_TOKEN>"
}
response = requests.get("https://i-gaming.tools/api/v1/providers/{slug}/jobs/", headers=headers)

print(response.json())

Response fields

next string(uri) | null
previous string(uri) | null
results array[object]
GET /api/v1/providers/{slug}/news/ Auth required

News for this brand

Cursor-paginated news articles attributed to this brand. Supports ?updated_since for incremental sync and ETag/304. X-Sync-Timestamp response header for next-sync cursor.

Parameters

Name In Type Required Description Example
country query string optional Country (exact, free-text)
cursor query string optional The pagination cursor value.
established_after query integer optional Established >= year
established_before query integer optional Established < year
has_news query boolean optional Brands with news only
ordering query string optional Which field to use when ordering the results.
page_size query integer optional Number of results to return per page.
search query string optional Search by name and aliases
slug path string required
updated_since query string optional ISO-8601 datetime. Returns only records updated at or after this moment.
curl \
  -H "Authorization: Token <YOUR_TOKEN>" \
  "https://i-gaming.tools/api/v1/providers/{slug}/news/"
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://i-gaming.tools/api/v1/providers/{slug}/news/');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, ['Authorization: Token <YOUR_TOKEN>']);
$response = curl_exec($ch);
curl_close($ch);
echo $response;
const response = await fetch("https://i-gaming.tools/api/v1/providers/{slug}/news/", {
  method: "GET",
  headers: {
  "Authorization": "Token <YOUR_TOKEN>"
}
});
const data = await response.json();
console.log(data);
import requests

headers = {
    "Authorization": "Token <YOUR_TOKEN>"
}
response = requests.get("https://i-gaming.tools/api/v1/providers/{slug}/news/", headers=headers)

print(response.json())

Response fields

next string(uri) | null
previous string(uri) | null
results array[object]
GET /api/v1/providers/{slug}/slots/ Auth required

Slots for this provider

Brand-scoped cursor-paginated slot listing. ?provider= is pinned to this brand; other SlotFilter params work. Supports ?updated_since and ETag/304. Items carry volume_12m/trend (per-slot search-demand aggregate).

Parameters

Name In Type Required Description Example
country query string optional Country (exact, free-text)
cursor query string optional The pagination cursor value.
established_after query integer optional Established >= year
established_before query integer optional Established < year
has_news query boolean optional Brands with news only
ordering query string optional Which field to use when ordering the results.
page_size query integer optional Number of results to return per page.
search query string optional Search by name and aliases
slug path string required
updated_since query string optional ISO-8601 datetime. Returns only records updated at or after this moment.
curl \
  -H "Authorization: Token <YOUR_TOKEN>" \
  "https://i-gaming.tools/api/v1/providers/{slug}/slots/"
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://i-gaming.tools/api/v1/providers/{slug}/slots/');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, ['Authorization: Token <YOUR_TOKEN>']);
$response = curl_exec($ch);
curl_close($ch);
echo $response;
const response = await fetch("https://i-gaming.tools/api/v1/providers/{slug}/slots/", {
  method: "GET",
  headers: {
  "Authorization": "Token <YOUR_TOKEN>"
}
});
const data = await response.json();
console.log(data);
import requests

headers = {
    "Authorization": "Token <YOUR_TOKEN>"
}
response = requests.get("https://i-gaming.tools/api/v1/providers/{slug}/slots/", headers=headers)

print(response.json())

Response fields

next string(uri) | null
previous string(uri) | null
results array[object]
GET /api/v1/providers/{slug}/team/ Auth required

Key team members for this provider

Visible key persons (is_visible=True, not is_suppressed). NOT paginated (bounded ≤60). profile_url NOT included (PII, OQ-PD6-4). Returns {count, results[]} envelope. ETag/304 supported.

Parameters

Name In Type Required Description Example
slug path string required
curl \
  -H "Authorization: Token <YOUR_TOKEN>" \
  "https://i-gaming.tools/api/v1/providers/{slug}/team/"
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://i-gaming.tools/api/v1/providers/{slug}/team/');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, ['Authorization: Token <YOUR_TOKEN>']);
$response = curl_exec($ch);
curl_close($ch);
echo $response;
const response = await fetch("https://i-gaming.tools/api/v1/providers/{slug}/team/", {
  method: "GET",
  headers: {
  "Authorization": "Token <YOUR_TOKEN>"
}
});
const data = await response.json();
console.log(data);
import requests

headers = {
    "Authorization": "Token <YOUR_TOKEN>"
}
response = requests.get("https://i-gaming.tools/api/v1/providers/{slug}/team/", headers=headers)

print(response.json())

Response fields

full_name string
headline string
seniority string
is_key boolean
location_text string
photo object | null