Skip to content
ABTO Guide
abto.app
Start free

Integration guide

Get started

Connect your application, then check your first AI call and model changes in ABTO.

Start by connecting one AI call to ABTO. Once its response, cost, and response time appear in the dashboard, the connection is working. You can then change models and prompts, and connect user actions such as purchases, page views, and clicks.

MethodWhere to start
Ask Codex or Claude CodeInstall the Agent Skill, then use the prompt below
Connect it yourselfChoose your current setup below

After installing the skill, ask your agent:

Use the ABTO skill to connect one AI call in this project.
Read the current official docs and check the installed SDK version. Keep the existing call flow and tracing setup.
First show me the call site you plan to connect, then verify that the first request is recorded in ABTO after integration.
Clearly identify any steps you could not verify because keys or permissions are missing.

For manual integration, choose the guide that matches how you call AI today.

Current setupGuide
OpenAI SDK in Node.jsNode.js JavaScript
LangChain ChatOpenAI in Node.jsConnect LangChain
CommonJS in Node.jsUse CommonJS
OpenAI SDK in PythonPython
Direct HTTP requestsGateway Chat Completions

Server integration currently supports OpenAI Chat Completions requests. If you use streaming or the Responses API, check the supported request types first.

Create a project in the dashboard and generate a Calling Key. Set the Calling Key and your LLM provider’s API key, such as an OpenAI key, in server environment variables. Follow the installation and request example in your chosen guide.

featureId names the AI feature making the call. The first-request example uses review.summary. When connecting your application, use a name that identifies the feature.

KeyWhere it belongsWhen you need it
Calling Key (ck-abto-…)Servers, workers, and background jobsConnecting AI calls
Event Key (ek-abto-…)Browsers and mobile appsConnecting user actions

Never put Calling Keys or LLM provider API keys in browser code or a Git repository. An Event Key cannot authenticate AI calls.

In the dashboard’s Requests screen, find the feature name used in your example. Open the request to check its response, executed model, cost, and response time. The connection is working when your app receives a response and the same call appears in Requests.

What is missingWhat to check first
The call fails in your appCalling Key and LLM provider API key in server environment variables, and the returned error message
Your app receives a response, but no request appearsDashboard project, date range, feature name, and whether direct fallback ran
A different model ranSaved routing settings for that feature

Calls sent directly to the provider through fallback do not appear in ABTO’s request list. If you still cannot find the request, see Troubleshooting.

Once connected, try changing either the model or the prompt for a test feature.

  1. In Testing, select the feature from your first call and try a different model or prompt.
  2. Check the result and save it as an Agent Config.
  3. In Routing, create a new variant, pick the saved Agent Config for the node, then set and save its traffic allocation. For a test feature, allocating 100% to the new variant makes the change easy to verify.
  4. Call the same feature from your app again, then check the executed model and response in Requests.

If you choose a model from another provider, you must also configure that provider’s API key on your server. For a feature already serving users, follow the gradual rollout guidance.

Add a client SDK to see whether AI responses lead to purchases or sign-ups.

ClientGuide
Web browserBrowser JavaScript
Android appAndroid
iOS appiOS
Flutter appFlutter

Pass the client SDK’s device_id to your server’s AI calls to connect calls and actions from the same device. For AI calls in background jobs, save and pass this value with the job data. Do not replace it with a login user ID or generate a new device ID on the server.

Register and send the actions you want to measure using Event design. Then define your criteria in Success metrics and check each variant’s results in Compare. You need real user action data before assessing outcomes.