BizVerify in OpenAI.
Tool definitions live at api.bizverify.co/tools/openai.json. One fetch, no schema maintenance.
Install.
- 01
Fetch the hosted tool definitions
BizVerify maintains the canonical OpenAI tool schema at a public JSON endpoint. Fetch it once at startup and pass the array directly into chat.completions.create.
const tools = await fetch("https://api.bizverify.co/tools/openai.json").then(r => r.json()); - 02
Route function calls back to the API
When the model emits a function call, dispatch it to the BizVerify SDK using the function name. The hosted schema's function names map 1:1 to SDK methods.
- 03
Store the API key as a header
Authorize every BizVerify request with the X-API-Key header. The same key works across the SDK, REST API, MCP server, and the n8n node.
What OpenAI exposes.
Nine operations. The same nine across every integration on this site.
verify_business
Quick or deep verification of an entity in one jurisdiction.
search_entities
Find entities matching a name in a jurisdiction.
check_job_status
Poll a long-running verification job by id.
get_entity
Fetch a previously verified entity from cache.
get_entity_history
Return the verification history for an entity.
get_account
Read account info and credit balance.
get_config
Read public service config and supported jurisdictions.
list_jurisdictions
List active jurisdictions and their status.
purchase_credits
Buy additional credits from your agent loop.
One real example.
Pass the hosted tool definitions into chat.completions.create
import OpenAI from "openai";
import { BizVerify } from "@bizverify/sdk";
const openai = new OpenAI();
const biz = new BizVerify({ apiKey: process.env.BIZVERIFY_API_KEY! });
const tools = await fetch("https://api.bizverify.co/tools/openai.json")
.then(r => r.json());
const completion = await openai.chat.completions.create({
model: "gpt-4o",
messages: [{ role: "user", content: "Is Acme Corp registered in Delaware?" }],
tools,
});
const call = completion.choices[0].message.tool_calls?.[0];
if (call?.function.name === "verify_business") {
const args = JSON.parse(call.function.arguments);
const result = await biz.verification.verify(args);
// feed result back into the conversation as a tool message
}Why BizVerify for OpenAI.
No schema in your codebase
Tool definitions are fetched, not vendored. When BizVerify adds or refines a parameter, your agent picks it up on next deploy.
Function names map to SDK methods
verify_business in the schema is biz.verification.verify in the SDK. Routing function calls is a switch on call.function.name.
Same key everywhere
One BIZVERIFY_API_KEY environment variable works across the SDK, the REST API, MCP, and the n8n node. No per-integration credentials.
What verification is, and isn't.
We confirm what the official registry currently says about an entity. We don't claim more than that.
BizVerify does
- Confirms the entity is registered with the official government registry
- Returns the current registry status (active, dissolved, suspended, etc.)
- Returns canonical entity name, type, and jurisdiction id
BizVerify does not
- Verify solvency, credit, or financial standing
- Verify beneficial ownership or directors/officers (quick check)
- Verify that the model's user is authorized by the entity
- Flag sanctions or PEP exposure
Start verifying inside OpenAI.
Fifty free credits on signup. No card. Same key across every integration on this site.