HTTP API
Pick HTTP API when your AI system is reachable at a URL and isn’t built on Flowise or n8n — a LangChain app, your own service, any framework with an HTTP endpoint. Mibo calls your endpoint for active tests and accepts traces back via either OTLP or the Your API canonical shape.
Setting up your connection
Section titled “Setting up your connection”-
Add your endpoint
Follow Add an Agent and choose Other agent to create an HTTP API Agent.
-
Enter the endpoint URL
Paste the URL where your system receives inputs. This is the address Mibo will send test messages to.
-
Choose the request method
Select how inputs should be sent, usually POST. If you’re not sure, POST is the right choice for most systems.
-
Set up authentication (if needed)
If your system requires credentials, choose the type:
- Bearer Token: enter the token value only. Mibo adds the
Bearerprefix and sends it in theAuthorizationheader with each request. - Custom Headers: name-value pairs for more complex authentication setups.
- None: your system is open and doesn’t require authentication.
- Bearer Token: enter the token value only. Mibo adds the
-
Configure the message template
This tells Mibo how to format the request body sent to your system. The template uses placeholders that get replaced with real values each time a test runs:
Placeholder Replaced with {user_message}The test case’s input text {VARIABLE_NAME}The value of VARIABLE_NAMEfrom the test case’s context{request_id}(Optional) The trace ID for this execution The default template is
{ "input": "{user_message}" }. If your system expects a different structure, customize it here. The saved template must include the{user_message}placeholder, even when your test cases userequest_body. Mibo checks this when you save the Agent configuration.Example: if your template is:
{"question": "{user_message}","userId": "{USER_ID}"}And your test case has this context:
{ "USER_ID": "usr-123" }Then Mibo sends this request body when the test runs:
{"question": "What is the capital of France?","userId": "usr-123"}See context variables to learn how to define variables in your test cases.
-
Configure response parsing
Tell Mibo where to find the text reply in the response. Use dot notation to navigate into the JSON structure:
API response Path Result {"text": "Hello"}textHello{"data": {"message": "Hello"}}data.messageHello{"choices": [{"message": {"content": "Hello"}}]}choices.0.message.contentHelloFor arrays, use the index number (
0for the first element). Bothchoices.0.textandchoices[0].textwork.If you leave it empty, Mibo auto-detects by looking for common keys:
text,message,content,output,answer,response. -
Test your connection
Follow Test your connection to verify and save the configuration.
Trace collection
Section titled “Trace collection”Traces capture what happened inside your system during a test: which tools it called, what data it used, and the steps it took to build a response. For an HTTP API Agent, trace collection is optional. Mibo can evaluate the response without an execution trace.
The Trace Collection settings offer Response only, Inline, and Push. Response only is the default. Choose Inline or Push when your assertions need execution details such as node or tool calls. For passive testing setup, see Passive testing.
Response only
Section titled “Response only”Mibo evaluates the response body without requiring trace data. Use this mode for a first response check before you instrument your system. Node and tool-call assertions need Inline or Push trace data.
Included in the response (Inline)
Section titled “Included in the response (Inline)”Your system includes the canonical trace alongside its answer. Set Trace Data Path to the location of an object containing { spans: [...] }. Mibo extracts those spans and uses them as the trace.
Use this mode when your system already builds canonical spans in its response.
Sent separately (Push)
Section titled “Sent separately (Push)”Your system POSTs the canonical trace to Mibo’s ingestion endpoint while or after it handles the test input. Mibo waits up to Max Wait for the trace to arrive before completing the evaluation.
This uses the Your API trace format.
Trace modes at a glance
Section titled “Trace modes at a glance”| Response only | Inline | Push (Your API) | |
|---|---|---|---|
| How data arrives | Mibo parses the response and creates a synthetic span | Trace data is embedded in the API response under the configured Trace Data Path | Your system POSTs canonical spans to /public/traces |
| Extra config | None | Trace Data Path | Max Wait and Poll Interval |
Using the Test Architect with HTTP API
Section titled “Using the Test Architect with HTTP API”When creating tests with the Test Architect, you can upload a JSON document describing your endpoint’s behavior to help the AI generate more accurate tests. This could be an OpenAPI spec, a sample request/response pair, or any JSON that describes your endpoint’s structure.
Attach the JSON file in the Test Architect chat, or paste its contents directly. For accepted inputs and size limits, see Creating tests through conversation.
Troubleshooting
Section titled “Troubleshooting”- “Connection failed”: check that the URL is correct and your system is running. Make sure there are no typos in the address.
- “Authentication error”: verify your token or headers. The most common issue is a missing or expired key.
- “Empty response”: the response parsing path might be wrong. Check what field name your endpoint uses for its text reply.
- “Timeout”: your system is taking too long to respond. Check if it’s under heavy load or if the endpoint is correct.