Skip to main content

Overview

Vine answers one question, live: what does this business run, and where does a customer act? Two calls:
  1. Detect (POST /api/v1/detect): synchronous. Send a business URL; Vine renders the site, follows the booking/ordering CTAs, and returns the detected providers plus a detectionId. The service-side domain cache is disabled by default, so budget a minute or two for every call. When Vine explicitly enables it, an eligible recent domain can return in about a second and is flagged as cached.
  2. Read the detection (GET /api/v1/detections/{id}): the resolved connections: per-provider actionType and actionUrl, the exact transaction surface an agent can act on.
Every request is authenticated with a Bearer API key. Signup includes 1,000 free credits, no card required (a live detect costs 12–26). Vine is in public beta. Detection is available today; structured data extraction from the providers it finds (schedules, menus, availability) is coming soon. Want it early? Email us.
1

Get an API key

Mint a key from the Vine console. The plaintext is returned once; store it immediately; it is never recoverable.
Response
Keys look like vine_live_…. Attach yours as a Bearer token on every request:
Keep keys server-side. Never ship them to a browser or mobile client.
2

Detect providers (synchronous)

Send the business URL. detect blocks while Vine renders the site live and resolves the providers, typically 1–2 minutes, no polling.
A 200 OK returns the detected providers and a detectionId for the run:
A slow site that hits the deadline returns { "status": "detection_incomplete" } (retryable, billed at the base rate only). Resubmit the same URL rather than a 5xx or a hang. Every billable response also carries vine-credits-used and vine-credits-remaining headers.
3

Fetch the resolved connections

The detectionId is your handle to the agent-ready payload: one connection per detected provider, with the resolved actionUrl: the exact page where a customer books, orders, or schedules.
cURL
Response
That actionUrl is the point: instead of scraping a marketing site hunting for a “Book Now” button, your agent lands on the transaction surface in one call. (Raw provider params stay server-side; hasParams tells you they exist.)

Handling errors

Every error follows the same envelope:

Next steps

Detect

Synchronous provider detection: request schema and response fields.

Get detection

The resolved connections: provider, actionType, actionUrl.

Coverage & limits

105 providers, how detection works, and the beta limits.

Examples

Runnable scripts: GTM enrichment, agent tools, vertical lenses.