Run Ube from your AI agent

Every Ube workflow is an authenticated API call. Your agent signs up, sets up the discovery campaign, collects answers, proposes page changes and measures them. The person behind the agent opens a link to approve access or a payment.

Addresses

WhatAddress
API for agents (bearer token)https://api.ube.digital
Machine-readable contracthttps://api.ube.digital/openapi.json
Browser workspace, sign-in and approval linkshttps://app.ube.digital

The OpenAPI contract lists every endpoint with its input schema and authentication. This page covers the order of calls.

Get a token with one approval link

An agent without an account asks for a link, sends it to its person, and polls until they approve.

curl -s -X POST https://api.ube.digital/v1/agent-links \
  -H 'content-type: application/json' \
  -d '{"agent_name":"Claude Code on my laptop"}'
# {"approve_url":"https://app.ube.digital/#agent-access/…","poll_token":"slp_…",
#  "expires_at":1793795241,"poll_interval_seconds":5}

curl -s -X POST https://api.ube.digital/v1/agent-links/poll \
  -H 'content-type: application/json' -d '{"poll_token":"slp_…"}'
# {"status":"pending"} until approval, then once:
# {"status":"approved","token":"so_…","token_id":"…","user_id":"…"}

Subscribe and keep credits

Starter is $30 a month and includes $30 of credits. Pro is $100 a month and includes $100 of credits. Each starts with a 7-day free trial that includes $5 of credit; checkout asks for a card, and the plan is charged on day 7 unless your person cancels first. Plan credits reset at each renewal, and credits bought on top never expire. Each completed answer is charged from credits, and failed attempts are free.

curl -s https://api.ube.digital/v1/billing -H "authorization: Bearer $TOKEN"
curl -s -X POST https://api.ube.digital/v1/billing/checkout -H "authorization: Bearer $TOKEN" \
  -H 'content-type: application/json' -d '{"kind":"subscription"}'
# {"url":"https://checkout.stripe.com/…","kind":"subscription",…}

Run the discovery cycle

A discovery campaign asks the questions buyers ask before they know your product. It counts a relevant introduction, including a place on a shortlist, as success.

StepCallWhat happens
Register the productPOST /v1/productsName, website, description, audience and supported facts.
Plan the campaignGET /v1/products/{id}/campaigns/setupDefaults from the product context. Nothing is created.
Create itPOST /v1/products/{id}/campaigns/batch{"goals":["get_recommended"],"request_id":"…"} creates the campaign and queues question preparation. Replays return the same campaign.
Write the questionsPOST /v1/question-preparations/claimReturns the question skill, context and output schema. Submit the result to /v1/question-preparations/{campaign}/result. Questions that name the product or its website are rejected.
Connect accountsPOST /v1/products/{id}/connections{"provider":"cloudflare","request_id":"…"} returns a connect_url for your person. Also google and bing. Read the same path for each provider's next_action.
Collect answersPOST /v1/products/{id}/samplesEnable questions with PUT /v1/products/{id}/questions/{question}/active, then queue them on ready engines.
Read the resultsGET /v1/products/{id}/opportunitiesQuestions where your pages go uncited, with the answers as evidence. Also /question-groups, /observations and /trends.
Propose a page changePOST /v1/products/{id}/changesA full page replacement or unified diff for a URL on your site, linked to the campaign and its evidence.
Measure itPOST /v1/changes/{id}/measurementFreezes the questions and engines. Then /measurement/waves for baseline and follow-up answers, /publication when the page is live, /evaluations and /decisions.

Rules your agent can rely on

Next steps