# Madhive > Madhive is an advertising technology company that operates a demand-side platform (DSP) and end-to-end software stack built for local and connected TV (CTV/OTT) advertising. Its public developer program at developer.madhive.com publishes a 75-operation REST API for campaign management and a hosted Model Context Protocol (MCP) server that exposes the same core to AI assistants over JSON-RPC 2.0. Both are fronted by an Apigee gateway and authenticated with OAuth 2.0. Generated by API Evangelist from the Madhive developer portal and the specifications Madhive publishes there. Madhive publishes no llms.txt of its own; this file is an API Evangelist rendering, not a Madhive document. Access is gated: API credentials and MCP onboarding are issued through a Madhive Account Manager, not by public self-service signup. The specifications below are public. ## APIs - [Madhive API](https://developer.madhive.com/): REST campaign-management API. Base URL `https://api2.madhive.com/api`. 75 operations across campaigns, line items, advertisers, agencies, creatives, audiences, segments, retargeting, publishers, publisher groups, pixels, products, stations, metros and optimization templates. - [Madhive MCP API](https://developer.madhive.com/mcp): hosted MCP server at `https://api2.madhive.com/mcp`. JSON-RPC 2.0 with `tools/list` and `tools/call`, plus an SSE streaming endpoint. 22 tools. Clients documented: Claude Code, Claude Desktop/Web, Gemini CLI, Gemini Enterprise, custom agents. ## Specs - [Madhive API OpenAPI 3.0.0](https://raw.githubusercontent.com/api-evangelist/madhive/refs/heads/main/openapi/madhive-api-openapi-original.yml): harvested verbatim from the Madhive Apigee developer portal. - [Madhive MCP API OpenAPI 3.0.0](https://raw.githubusercontent.com/api-evangelist/madhive/refs/heads/main/openapi/madhive-mcp-openapi-original.json): harvested verbatim from the Madhive Apigee developer portal. ## Authentication - Token endpoint: `https://api2.madhive.com/oauth/token` - Authorization endpoint: `https://api2.madhive.com/oauth/authorize` - Discovery: [oauth-authorization-server](https://api2.madhive.com/.well-known/oauth-authorization-server), [openid-configuration](https://api2.madhive.com/.well-known/openid-configuration) - Flows: client credentials (machine-to-machine) and authorization code with PKCE/S256 (user-delegated) - Tokens are RS256 JWTs presented as `Authorization: Bearer `. - No OAuth scopes are published; the specs declare empty scope maps. ## Docs - [Developer portal](https://developer.madhive.com/) - [Get started](https://developer.madhive.com/get-started): advertiser -> campaign -> line item -> creative -> activation walkthrough. - [FAQs](https://developer.madhive.com/faq): date logic, audience workflow, publisher-group workflow, creative workflow, archive logic, rate limits, HTTP status codes. - [MCP onboarding](https://developer.madhive.com/mcp): what the Madhive MCP server is, supported clients, both OAuth flows, per-client connection steps. - [API Change Schedule](https://developer.madhive.com/scheduled-updates): forward-looking breaking-change and upgrade timeline. - [Developer API Terms of Use](https://developer.madhive.com/files/API_Terms_of_Use_Nov_21.pdf) (PDF, November 2025) - [System status](https://madhive.checkly-status-page.com/) ## Conventions - Versioning: URI path, `/v1/`. - Pagination: opaque cursor. Request `page_size`, `page_token`, `offset` (1 next / -1 previous / 0 current). Response `pagination` object with `pageSize`, `offset`, `pageToken`, `totalRecords`. - Errors: proprietary JSON envelope with `error`, `errors[]`, `status`, `transaction`. Not RFC 9457. - Tracing: `transaction.id` (trace id) and `transaction.taskId` on every response body. - Time: UTC. Datetimes as `yyyy:mm:ddThh:mm:ss`. Start dates cannot be in the past; a past start on activation is rewritten to now + 10 minutes. - Idempotency: **not supported.** No `Idempotency-Key` header or parameter is documented — do not blind-retry writes. - Rate limits: per tier, per second — Basic 2, Starter 5, Medium 8, Advanced 12, Premium 15. No rate-limit response headers are documented. - No webhooks, callbacks or event stream. ## API Evangelist artifacts - [Authentication profile](https://raw.githubusercontent.com/api-evangelist/madhive/refs/heads/main/authentication/madhive-authentication.yml) - [API conventions](https://raw.githubusercontent.com/api-evangelist/madhive/refs/heads/main/conventions/madhive-conventions.yml) - [Error catalog](https://raw.githubusercontent.com/api-evangelist/madhive/refs/heads/main/errors/madhive-problem-types.yml) - [Rate limits](https://raw.githubusercontent.com/api-evangelist/madhive/refs/heads/main/rate-limits/madhive-rate-limits.yml) - [Lifecycle](https://raw.githubusercontent.com/api-evangelist/madhive/refs/heads/main/lifecycle/madhive-lifecycle.yml) - [Changelog](https://raw.githubusercontent.com/api-evangelist/madhive/refs/heads/main/changelog/madhive-changelog.yml) - [Conformance](https://raw.githubusercontent.com/api-evangelist/madhive/refs/heads/main/conformance/madhive-conformance.yml) - [Data model](https://raw.githubusercontent.com/api-evangelist/madhive/refs/heads/main/data-model/madhive-data-model.yml) - [MCP server](https://raw.githubusercontent.com/api-evangelist/madhive/refs/heads/main/mcp/madhive-mcp.yml) and [tool crosswalk](https://raw.githubusercontent.com/api-evangelist/madhive/refs/heads/main/mcp/madhive-tool-crosswalk.yml) - [Agent skills](https://raw.githubusercontent.com/api-evangelist/madhive/refs/heads/main/skills/_index.yml) ## Company - [Madhive](https://www.madhive.com/) - [Insights](https://www.madhive.com/insights) · [Newsroom](https://www.madhive.com/newsroom) · [About](https://www.madhive.com/about-us) - [Privacy policy](https://www.madhive.com/legal/privacy-policy) · [US state privacy notice](https://www.madhive.com/legal/us-state-privacy-notice) - Compliance: SOC 1, SOC 2, SOC 3 (KirkpatrickPrice) and TAG Certified Against Fraud — [announcement](https://www.madhive.com/insights/madhive-renews-soc-1-2-and-3) - [GitHub](https://github.com/MadHive)