Frequently Asked Questions
Answers about BazaarLink AI APIs, billing, model access, security and developer integration.
How is BazaarLink different from OpenRouter? Can it be used as a direct replacement?
Like OpenRouter, BazaarLink provides a unified OpenAI-compatible API. It also offers Taiwan-local payment methods and electronic uniform invoices, Chinese-language support, and TWD pricing. Model availability, pricing, and capabilities may change over time, so review the model catalog before integrating.
How do I migrate from OpenRouter or the OpenAI API to BazaarLink?
In most cases, you only need to change the base_url to https://api.bazaarlink.ai/v1, replace your API key with a BazaarLink API key, and confirm the full model ID in the model catalog. Before going live, test streaming, tool calling, and error handling because capabilities and parameters can vary between models.
Which payment methods provide a Taiwan electronic uniform invoice?
If your company needs a Taiwan tax ID and electronic uniform invoice, choose a TWD payment method that is explicitly marked as invoice-eligible on the add-funds page, and complete the invoice details before paying. Different payment methods provide different documents, so whether a Taiwan invoice is issued depends on the information shown at checkout.
Is BazaarLink compatible with the OpenAI SDK, Cursor, Claude Code, and other tools?
BazaarLink supports an OpenAI-compatible API and also provides an Anthropic Messages API. SDKs and tools that allow a custom API key and compatible endpoint can generally connect to BazaarLink. The exact configuration fields and supported features still depend on the tool version and should be verified against the BazaarLink documentation.
What use cases is BazaarLink designed for?
BazaarLink is designed for developers and teams that need access to multiple model providers through one API, Taiwan-local business expense and invoicing options, Chinese-language support, or public Probe data for evaluating API quality.
How does BazaarLink pricing work? Is there a markup on model usage?
Model inference is billed with zero markup, using the input, output, or other billing units published on each model page. Platform fees are charged when funds are added, and some payment methods may also include a fixed processing fee, exchange-rate costs, or business tax. Always refer to the current amounts shown on the model page and payment confirmation page.
What should I confirm before paying if I need a Taiwan e-invoice?
A Taiwan e-invoice is available only through a currently offered payment method marked invoice-eligible at live checkout or through a confirmed enterprise billing arrangement. Check the payment details before paying, or contact enterprise sales first if you need a company tax ID, quotation, or monthly billing.
Does BazaarLink offer a free API key? Is a credit card required?
You can register and create an API key without adding a credit card first, then use the free models or auto:free routes available at that time. Free models, quotas, and usage limits may change dynamically, so refer to the free API page for current availability.
What happens after I use all of my free quota?
If your account has an available balance, requests can continue at the normal paid rates after the free quota is exhausted. If there is no available balance, wait for the quota to reset or add funds first. Free quotas and reset rules are configured dynamically, so this FAQ does not promise a fixed amount.
Which API formats and features does BazaarLink support?
The public API includes OpenAI-compatible Chat Completions, Responses, Embeddings, image, video, and audio features, as well as the Anthropic Messages API. Supported input formats and features vary by model, so check both the API documentation and model catalog.
Which model name should I use? How can I check pricing, context window, and capabilities?
Use the full model ID returned by /v1/models or shown in the model catalog. Each model page lists its current pricing, context window, and supported capabilities. Unrecognized model IDs are rejected, so do not guess a name or rely on an outdated identifier.
What are the BazaarLink API rate limits, and how can I check them?
Rate limits depend on the current settings for the account, plan, and model, so they cannot be represented by one fixed requests-per-minute value. Check your API key and usage information for the current status. When a limit is exceeded, the API returns HTTP 429; clients should retry according to Retry-After or an appropriate backoff strategy.
Does BazaarLink store my prompts or model responses?
For ordinary successful requests, BazaarLink primarily retains billing and operational data such as the model, token usage, timestamp, and cost. Full prompts and responses are not stored as standard product records. Limited or truncated information may be retained for error diagnosis or abuse investigations. You should also review the data policies of the upstream model provider.
How does BazaarLink protect API keys and BYOK credentials?
BazaarLink API keys are stored as irreversible hashes, while BYOK credentials for upstream providers are stored in encrypted form. Data in transit is protected with TLS. Keys can be revoked and safely rotated by creating and deploying a new key, verifying the deployment, and then revoking the old key.
What happens when an upstream model provider is unavailable or rate-limited?
When fallback routing is available, a timeout, rate limit, or certain upstream errors from the primary provider can trigger an attempt through the next configured provider or model. If every upstream route fails, the API returns an actionable error. Clients should still implement timeouts, retries, and graceful fallback strategies.
Can I set a spending limit, disable access, or rotate each API key?
You can create multiple API keys and manage each key's spending limit and enabled status separately. To rotate a key with less risk of service interruption, deploy and verify the new key before revoking the old one. Never store a complete API key in source code or public records.
What do API status codes 402, 429, 502, and 503 mean?
HTTP 402 usually indicates a balance, credit, or budget restriction. HTTP 429 indicates a rate limit. HTTP 502 indicates that an upstream request failed. HTTP 503 indicates that no route is currently available or that the service is temporarily unavailable. Record the request ID, then add funds, retry with backoff, switch models, or contact support as appropriate for the error.
How do I contact support about a payment, billing, or API issue?
Contact the team through the support page or at support@bazaarlink.ai. When reporting an API issue, include the time of the incident, request ID, model ID, HTTP status code, and any error details that are safe to share. Do not include a complete API key, prompt, or other sensitive information.
What is a ZDR (zero data retention) key and how do I turn it on?
A ZDR API key only sends requests to upstream providers that declare zero data retention, pinned by BazaarLink; requests never fall back to ordinary routes. BazaarLink also does not store the prompts or responses of that key, and by default does not send the content to a third-party moderation service. Personal keys can be switched on at /keys, and organization admins can require ZDR for every key in the organization settings. Chat endpoints are supported (chat completions, messages, responses); a model without a ZDR route returns 400 (zdr_route_unavailable) instead of quietly using another route.
Can a ZDR key be used with BYOK, BYOC or virtual models?
No. A ZDR key ignores the BYOK/BYOC provider keys you configured and always runs on BazaarLink's ZDR routes at the platform price; models starting with byok-custom/ or byoc/ return 400 (zdr_route_unavailable). Virtual models (vm/), automatic routing (auto), model suffixes such as :free and :online, and the models fallback list are not supported with ZDR and return 400 (zdr_endpoint_unsupported). To use your own provider keys, use a key without ZDR.
Why did a reasoning model return an empty answer and still charge me?
Reasoning models generate reasoning tokens before the answer. If max_tokens is too small, reasoning can use up the whole budget: the response ends with finish_reason length and no visible content. Those reasoning tokens were really produced, so they are billed by usage, the same as OpenAI. Raise max_tokens or lower the reasoning effort to avoid it. The Logs page marks these requests as "Reasoning hit max_tokens, no output".
Can an AI agent register a BazaarLink account?
When enabled, an agent can call POST /api/v1/agents/register with name, optional description, and optional referral_code to create an unpaid account. The 201 response includes the API key, credits, a seven-day claim token and expiry, and related account links. Unpaid agents use the existing free-model mechanism, but free web search requires a verified email and is not available to unpaid agents.