> For the complete documentation index, see [llms.txt](https://infinitode-docs.gitbook.io/documentation/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://infinitode-docs.gitbook.io/documentation/faqs/common-questions.md).

# Common Questions

On this page, we will answer some common questions we often get asked, along with other general questions we think you should know the answers to.

## Common questions about products and services

#### APIs:

<details>

<summary>When will API limits reset?</summary>

Free plan allowances reset on the 1st of each month. Business allowances are replenished once PayPal confirms each renewal payment, on the same day each month — your account shows the next renewal date. Bought top-up calls never reset and never expire.

**Important note for premium accounts**: If you cancel Business, you keep Business allowances until the end of the period you've paid for, then move to the Free allowance. Cancelling isn't a refund of the period you've paid for, and bought calls stay on your account.

</details>

<details>

<summary>When you reach your API limit, or you don't have any more calls available, what will happen?</summary>

When you reach your API call limit, limited either by rate or you don't have any more calls available, the API will return an error, stating either of the 2 cases: `429` for rate limiting, or `401` with `"No remaining API calls."` when your allowance and any bought calls are used up.

Requests rejected up front cost nothing: missing or invalid parameters (400), the wrong method (405), rate limits (429), an invalid key, or no calls left. A call is only used once your key is accepted. If the endpoint then fails while processing your input, that call is still used. Test your integration in the [API playground](https://infinitode-docs.gitbook.io/documentation/api-documentation/api-playground) first — mock mode uses no calls at all.

Calling the API multiple times after being rate-limited, may result in temporary or permanent action against your account.

</details>

<details>

<summary>Can APIs be called from multiple programming languages?</summary>

Yes, our APIs work cross-platform and across a variety of programming languages. Just be sure to pass the correct parameters to the API in order to get a successful API call.

</details>

<details>

<summary>If I initiate a normal API call and it fails due to an error in my implementation, does it cost an API call?</summary>

Not always. Requests rejected up front cost nothing: missing or invalid parameters (400), the wrong method (405), rate limits (429), an invalid key, or no calls left. A call is only used once your key is accepted. If the endpoint then fails while processing your input, that call is still used.

This is why the [API playground](https://infinitode-docs.gitbook.io/documentation/api-documentation/api-playground) exists: mock mode returns dummy data in the real response shape, with no key and no calls used, so you can debug your implementation before running it in production.

</details>

<details>

<summary>Are there free API calls?</summary>

Yes, all accounts are registered with the free plan upon sign-up. With the free plan, you get free monthly API calls that you can use on various APIs across our platform: 250 API calls per month. Mock requests in the API playground don't count towards them. You can increase your limits either by purchasing a premium plan, or by buying a top-up pack (calls never expire). Free API calls reset on the first of each month.

</details>

<details>

<summary>How do I authenticate my API requests?</summary>

Authentication can be done in a few ways. The preferred method is to use a Bearer token in the Authorization header with your standard API key (`INF-`). Alternatively, you can pass the key in the `apiKey` parameter for POST requests, or the `token` parameter for GET requests. For easier integration and testing, you can also use the OpenAPI specification files available for each API, or build the request in the [API playground](https://infinitode-docs.gitbook.io/documentation/api-documentation/api-playground).

</details>

<details>

<summary>What are the common error codes and what do they mean?</summary>

Here are some of the common error codes:

* 400: Missing or invalid parameters. This occurs when the parameters you passed do not match what the API expects.
* 401: Invalid API key, no remaining calls (`"No remaining API calls."`), or an error while processing your input.
* 405: Invalid method. This means you are using an incorrect HTTP method (e.g., GET instead of POST) to access the API. A 404 means the route itself doesn't exist.
* 429: Rate limit exceeded. You have made too many requests in the given timeframe.

**Remember**: 400, 405 and 429 responses are returned before a call is used, so they cost nothing. An invalid key, and running out of calls, also cost nothing. A call is only used once your key has been accepted.

</details>

<details>

<summary>Is there a changelog for the APIs to keep track of updates and new features?</summary>

Yes, a changelog is available at the top of each API's documentation. For an example, see the [Basic Math API documentation](https://infinitode-docs.gitbook.io/documentation/api-documentation/basic-math-api-documentation-experimental).

</details>

<details>

<summary>How do I get started with your APIs?</summary>

Getting started guides and detailed API documentation are available on our [GitBook documentation page](https://infinitode-docs.gitbook.io/documentation/). The typical process is: Sign up → Go to account settings (auto-redirected after signup) → Copy your standard API key (`INF-`) → Start making API calls using our documentation. Your key appears on the account page once you've **verified your email address**. To try an endpoint before spending a call, open the [API playground](https://infinitode-docs.gitbook.io/documentation/api-documentation/api-playground).

</details>

<details>

<summary>What's the difference between different API types (experimental, standard, etc.)?</summary>

We offer different types of APIs based on their development stage and reliability:

* Standard APIs: Production-ready APIs that have met our quality, accuracy, and reliability standards.
* Experimental APIs: APIs that run on our infrastructure but haven't met the mark in terms of goal, accuracy, or reliability. These may produce outputs that are irrelevant, misleading, or incorrect at times and are not intended for production environments.

Those two categories describe the **API**. Separately, an endpoint can run on an **experimental testing model** — a statement about the model, not about the API. The endpoint is a standard API, but the model behind it is still being tested and refined, so its output can vary in quality. Dungen Dev is the current example; its documentation says so at the top of the page.

That's the full list — there are no separate "developer" versions of our APIs. To try any endpoint without spending calls, use mock mode in the [API playground](https://infinitode-docs.gitbook.io/documentation/api-documentation/api-playground) — it needs no API key.

</details>

<details>

<summary>Do you support both GET and POST methods for API calls?</summary>

Yes, our APIs support both GET and POST methods. We also provide OpenAPI specification files for easier integration and testing, available at `https://infinitode.netlify.app/openapi/api-name/openapi.yaml` (replace "api-name" with the specific API you're working with).

</details>

<details>

<summary>How is my data handled and secured?</summary>

All data is transmitted directly via HTTPS to our serverless APIs, hosted by Netlify. Selected account fields — including your account email, first name, API keys and plan identifiers — are **encrypted at rest** with authenticated encryption (AES-256-GCM); plaintext is only used transiently in memory to serve an authorized request.

Other pieces of the picture:

* **Your key stays yours.** API activity history records metadata — never the full key, never your raw IP address — and is deleted after 30 days. See [What is in my API call history?](https://infinitode-docs.gitbook.io/faqs/questions-about-apis#what-is-in-my-api-call-history).
* **Payments.** PayPal processes card and payment details; we don't receive or store full card numbers.
* **Accounts.** Sign-in and account security are handled by Firebase Authentication, including optional authenticator-app MFA. Inactive sessions expire after 90 days, and you can revoke a device session yourself.
* **Bot protection.** Cloudflare Turnstile checks sign-in and support forms, verified on our servers.

The [Privacy Policy](https://infinitode.netlify.app/legal/privacy-policy) and [Cookie Policy](https://infinitode.netlify.app/legal/cookie-policy) cover the full detail.

</details>

<details>

<summary>Can I integrate your APIs into my existing business workflow?</summary>

Absolutely! Our APIs are designed to be business-friendly and can be integrated into various workflows. Whether you're building customer-facing applications, internal tools, or automated processes, our APIs provide the flexibility and reliability businesses need. Check our documentation for specific use cases and integration examples.

</details>

<details>

<summary>What happens if an API I'm using gets deprecated?</summary>

We provide advance notice before deprecating any APIs. When an API is scheduled for deprecation, we'll notify all users via email and update the API documentation with migration guides and timelines. We strive to provide alternative solutions and sufficient transition time for businesses relying on deprecated APIs.

</details>

#### OPEN-ARC:

<details>

<summary>What is OPEN-ARC?</summary>

OPEN-ARC is a collaborative AI research project where we release basic implementations, and sometimes base models to solve certain 'challenges'. It is beginner-friendly, and we host leaderboards for each project, driving users to outperform the previous implementation.

</details>

<details>

<summary>Are the base models free to use?</summary>

Personally yes, commercially no. Other users' models, implementations, and code inside of our OPEN-ARC project are subject to the copyright license of their respective owners/maintainers/developers. Our models, implementations and code however, are subjected to the license found at: <https://github.com/Infinitode/OPEN-ARC/blob/main/LICENSE.md>

</details>

<details>

<summary>How often are projects added to OPEN-ARC?</summary>

We try our best to release a new project each second week, but it may sometimes take a bit longer.

</details>

<details>

<summary>How can I contribute to an OPEN-ARC project?</summary>

To contribute, you can submit a pull request on our GitHub repository. In your pull request, please include your changes to the leaderboard file and a publicly accessible link to your notebook or project. You can include model files, but it's not a requirement.

</details>

<details>

<summary>What are the judging criteria for the leaderboards?</summary>

The main judging criterion is the accuracy score on the test set. In some cases, such as for text-based challenges, the BLEU score is used. It's important to note that these scores are primarily an indication of model performance on a specific dataset and not judged too heavily.

</details>

<details>

<summary>Can I use OPEN-ARC models in my commercial projects?</summary>

It depends on the specific model and its license. Our models are subject to the license found in our repository, but other contributors' models may have different licensing terms. Always check the specific license for each model before using it commercially. When in doubt, contact us for clarification.

</details>

<details>

<summary>How do I stay updated on new OPEN-ARC challenges and releases?</summary>

The best way to stay updated is to watch our GitHub repository for new releases and follow our announcements. You can also check the repository regularly as we aim to release new challenges every two weeks.

</details>

<details>

<summary>What types of AI challenges are featured in OPEN-ARC?</summary>

OPEN-ARC features a variety of AI challenges spanning different domains including natural language processing, computer vision, machine learning, and experimental AI research. Each challenge is designed to be beginner-friendly while still providing opportunities for advanced researchers to contribute innovative solutions.

</details>

#### Account & Security:

<details>

<summary>How do I sign in, and how do I verify my email address?</summary>

You can sign in with your **email address and password**, or with **Google**. Both are equivalent ways into the same account.

If you signed up with an email address, you'll receive a **verification link**. Until you open it:

* your account page won't show your **API keys**;
* you can't **buy a Business subscription or a call pack**;
* you can't **enrol an authenticator app**;
* you can't **reset an API key**.

After signing up you'll see a confirmation screen that stays put — from there you can **open your dashboard** or use **resend verification email** if the link didn't arrive. Check your spam folder, and make sure the address on the account is one you can receive mail at.

Forgot your password? Use [password recovery](https://infinitode.netlify.app/auth/forgot-password) from the sign-in page and follow the link in the reset email.

</details>

<details>

<summary>How do I set up an authenticator app, and how do I sign in with it?</summary>

Two-factor authentication with a **TOTP authenticator app** (Google Authenticator, Authy, 1Password, and similar) is optional and free, and it's handled through Firebase Authentication.

**To set it up:** open your account page, start authenticator setup, and scan the **QR code** with your app. If you're setting it up on the same device, choose the **manual key** instead and type it in. Confirm with a code from the app.

**To sign in afterwards:** after your password (or after choosing Google), sign-in asks for the current **six-digit authenticator code**.

**To turn it off:** remove the factor from your account page.

{% hint style="warning" %}
We don't offer **SMS codes** or **recovery codes** — an authenticator app is the only second factor, for both email and Google sign-in.
{% endhint %}

</details>

<details>

<summary>How do I see and manage the devices signed into my account?</summary>

Your account page lists your **devices and sessions**, with a **device label** you can set for each one so you can tell your own machines apart. From there you can review what's signed in, **remotely revoke** a session you don't recognise (or one you left signed in elsewhere), and **sign out** of the current session.

Signing in and submitting support forms is also protected by **Cloudflare Turnstile**, a bot check verified on our servers — the brief "verifying" step you may see is that check, not a password prompt.

Inactive sessions expire automatically after **90 days**.

</details>

{% hint style="info" %}
For the full picture — sign-in, email verification, authenticator MFA, devices and sessions, API keys, activity history, plans, packs, refunds and the support forms — see [Account, security & billing](https://infinitode-docs.gitbook.io/documentation/account-security-billing) in the docs.
{% endhint %}

#### Account & Billing:

<details>

<summary>How do I upgrade or downgrade my plan?</summary>

You can upgrade from the pricing page or your account page. Choosing Business doesn't charge you by itself: the subscription starts only once you explicitly select the plan, approve it with PayPal, and PayPal confirms the first payment — after which the 25,000 API call monthly allowance is applied. All prices are in US dollars.

You can cancel any time from your account page, or through PayPal. Cancelling stops the next renewal, but doesn't end access immediately: Business stays available until the end of the period you've already paid for (your account shows the access-end date), after which the account returns to the Free allowance. Cancelling isn't a refund for the period you've paid for, and bought pack calls stay on your account. There's no pay-per-call overage charging, so you're never billed extra for going over.

**Enterprise** is different: it's contact-only, so there's no online checkout. The volumes shown on the pricing page are indicative starting points for a written quote — [contact us](https://infinitode.netlify.app/forms/contact/) to discuss call volume, security and integrations.

</details>

<details>

<summary>Can I purchase additional API calls without upgrading my plan?</summary>

Yes. Top-up packs are one-time PayPal payments that work on any plan, including Free, and they don't start a subscription:

| Pack    | Price | API calls |
| ------- | ----- | --------- |
| Boost   | $5    | 10,000    |
| Builder | $15   | 35,000    |
| Scale   | $40   | 100,000   |

Bought calls **never expire** and are only used after your monthly allowance runs out — monthly first, then bought. Prices are in US dollars.

</details>

<details>

<summary>How does billing work for API usage?</summary>

Plans are a fixed monthly price through PayPal Subscriptions (Business is $9 / month); top-up packs are one-off PayPal payments. Prices are in US dollars. Unused monthly allowance doesn't roll over, and allowances are only replenished after a payment is confirmed. There's no pay-per-call overage billing: when you run out of calls, requests return `401` until your allowance resets, you upgrade your plan, or you buy a pack. See the [Subscription Terms](https://infinitode.netlify.app/legal/subscription-terms).

</details>

<details>

<summary>Can I get a refund for unused API calls?</summary>

**Top-up packs** can be refunded within **14 days** of the payment being confirmed, as long as the pack is **unused**: your bought-call balance must still cover everything that pack included, and monthly plan allowances don't count towards that balance. Approved refunds remove the pack's calls from your balance and are returned through PayPal. Calls you've already spent can't be refunded.

**Business subscriptions** are not refundable, in whole or in part, except where the law requires otherwise. Cancelling stops the next renewal and keeps Business available until the end of the period you've paid for — it isn't a refund for that period, and it doesn't remove calls you bought in a pack.

Monthly plan allowances don't roll over; bought calls never expire. To request a pack refund, use the [pack refund form](https://infinitode.netlify.app/forms/billing-refund/) while signed in — have the pack and, if you can, the purchase to hand. Submitting a request doesn't guarantee approval. Full details are in the [Refund Policy](https://infinitode.netlify.app/legal/refund-policy) and the [Subscription Terms](https://infinitode.netlify.app/legal/subscription-terms).

</details>

<details>

<summary>What happens if my renewal payment fails?</summary>

PayPal may retry the payment. Because allowances are only replenished after a payment is confirmed, paid features can be unavailable during an unpaid or suspended period, until the payment succeeds or the subscription ends. You can update your payment method in PayPal, or contact us through [billing support](https://infinitode.netlify.app/forms/billing-question/) if something doesn't look right. Your account shows the subscription dates and any access-end date that applies.

</details>

<details>

<summary>Which support form should I use?</summary>

There's a separate form for each kind of request, so nothing gets lost:

| Your question is about                                          | Use this form                                                                  |
| --------------------------------------------------------------- | ------------------------------------------------------------------------------ |
| Sign-in, key setup or reset, usage meters, call history         | [Account and API-key help](https://infinitode.netlify.app/forms/account-help/) |
| A PayPal payment, subscription, cancellation or access-end date | [Billing question](https://infinitode.netlify.app/forms/billing-question/)     |
| A call-pack refund                                              | [Pack refund](https://infinitode.netlify.app/forms/billing-refund/)            |
| A bug in an app, experiment, API endpoint or the website        | [Bug report](https://infinitode.netlify.app/forms/bug-report/)                 |
| A security concern or suspicious activity                       | [Incident report](https://infinitode.netlify.app/forms/report-activity/)       |
| Enterprise enquiries, or anything else                          | [Contact form](https://infinitode.netlify.app/forms/contact/)                  |

When you submit a form while signed in, your account and recent-purchase context is verified on our servers, so you don't need to describe your plan or your last payment. **Never include your password or a full API key in a form** — we'll never ask for them.

</details>

#### Troubleshooting:

<details>

<summary>My API calls are failing with authentication errors. What should I check?</summary>

First, verify that you're using the correct API token. Keys don't expire on their own, but a reset does replace one — so a key that used to work can stop working the moment it's reset, from any device signed into your account. Check that you're passing the key correctly (Bearer token in the Authorization header, the `apiKey` parameter for POST requests, or the `token` parameter for GET requests), and that it still has its `INF-` prefix. If the message is `No remaining API calls.`, your key is fine and you've run out of calls; see your account page.

If you suspect your key is compromised, you don't have to wait for support: press **Reset** next to your key on your account page. You can do this up to 3 times in a rolling seven-day window, with a verified email and a recent sign-in, and the old key stops working the moment you press it — so copy the new key into your app before anything else. Your 30-day call history on the same page shows what the old token was doing: see [Keeping your API key safe](https://infinitode-docs.gitbook.io/documentation/api-documentation/keeping-your-api-key-safe).

</details>

<details>

<summary>Why does deleting my account ask me to sign in again?</summary>

For safety, deleting an account requires a sign-in within the last 5 minutes. Deleting removes your API key and any unused bought calls permanently.

</details>

<details>

<summary>I'm getting timeout errors when calling the API. What could be the cause?</summary>

Timeout errors can occur due to network issues, high server load, or complex processing requirements. Try reducing the complexity of your request, implement retry logic with exponential backoff, or contact support if the issue persists across multiple API endpoints.

</details>

<details>

<summary>How can I debug API integration issues?</summary>

Use the [API playground](https://infinitode-docs.gitbook.io/documentation/api-documentation/api-playground) to test your integration without consuming paid API calls. Mock mode returns dummy data in the real response shape, so you can verify your implementation before going live without using any calls; live mode then sends the same request to the real endpoint with your standard API key and uses one call. Also, check the OpenAPI specification files available for each API for proper parameter formatting.

</details>

<details>

<summary>Why am I getting unexpected results from AI APIs?</summary>

AI APIs can sometimes produce unexpected outputs due to the nature of machine learning models. Check that your input parameters are properly formatted and within expected ranges. If you're using experimental APIs, be aware that they may produce less reliable results. For consistent issues, provide specific examples when contacting support.

</details>

#### Experiments:

<details>

<summary>What are "Experiments" and how can I use them?</summary>

Experiments are our collection of free, fun and useful web apps, at <https://infinitode.netlify.app/experiments>. They range from small productivity tools to full design and image tools, and they are fully built products — not demos, prototypes or betas.

We call them Experiments because of what they're *for*, not how they were made: they're quick, single-purpose web apps rather than paid software products with pricing, onboarding and support tiers. Open the page, use the tool, move on with your day.

Like any web app, one can have the occasional bug, and a few have quirky interfaces worth a second look. If something genuinely breaks, tell us through the relevant GitHub repository, the contact form on our website, or directly — we fix those.

</details>

<details>

<summary>Are Experiments "experimental" like the experimental APIs?</summary>

No — the same word means two different things here.

* **Experiments** are finished web apps you can rely on, the way you'd rely on any other site.
* **Experimental APIs** are endpoints flagged with `#Experimental` in the API documentation. Those haven't met our accuracy bar yet, and aren't intended for production use.

</details>

<details>

<summary>Are Experiments free to use, and who owns the output?</summary>

Yes, Experiments are free in all capacities. There's no account to make, no credits to buy, and nothing to install — everything runs in your browser.

All output you generate is yours and may be used commercially. Most Experiments will stay exactly as they are and will never become paid APIs; a few may grow into paid products one day, and we'd say so before anything changed.

</details>

<details>

<summary>Do Experiments have usage limits?</summary>

No. Experiments don't have a server backend: everything runs locally in your browser, including the AI-powered ones. That means there's no allowance to meter, no rate limit, no queue, and no data sent to us — and using an Experiment never spends your API calls.

Because nothing is uploaded, an Experiment is only as limited as the machine you're sitting at. Large files or heavy scenes will go slower on older hardware; that's your GPU talking, not a limit we imposed.

</details>

#### Hugging Face Models & Datasets:

<details>

<summary>What licenses are used for your models and datasets on Hugging Face?</summary>

Our open-source models and datasets are typically licensed under the MIT license, with some using Apache 2.0. This allows for broad use, modification, and distribution.

</details>

<details>

<summary>Can I use the models found in Hugging Face Spaces?</summary>

It depends. Many of our Spaces are intended as demos for users to test and iterate with our models before using our paid APIs. The model files within these specific demo Spaces are generally not for public use. However, our explicitly open-source models are freely available for you to use according to their license. Some models used in our experiments are the same as those available through our paid APIs.

</details>

<details>

<summary>Can I contribute to your datasets?</summary>

Absolutely! Our datasets are MIT licensed and open source. We encourage the community to use them and contribute to their growth and improvement.

</details>

#### Open Source Projects (GitHub):

<details>

<summary>What kind of projects do you host on GitHub?</summary>

Our GitHub (<https://github.com/Infinitode>) hosts a variety of projects, including Python and JavaScript libraries, design tools, open-source software, and web apps. These are all available for anyone to clone, use, and modify.

</details>

<details>

<summary>How do I install and use your open-source libraries?</summary>

Most of our libraries are easy to set up. For example, our Python packages are available via `pip`. Other projects follow standard installation procedures detailed in their respective repository requirements.

</details>

<details>

<summary>How can I report bugs or request features for open-source projects?</summary>

We use GitHub's built-in issue tracking. Each repository has templates for bug reports and feature requests to make the process easier and ensure we get all the necessary information to help you.

</details>

<details>

<summary>What level of support do you provide for open-source projects?</summary>

Support levels vary by project type. Our widely-used packages and libraries receive priority support and frequent updates. Open-source web apps and other software may receive less frequent updates and support throughout the year.

</details>

#### Legal & Privacy:

<details>

<summary>Where can I find your legal policies, like the Terms of Service and Privacy Policy?</summary>

All of our legal documents, including our Terms of Service, Privacy Policy, and Cookie Policy, can be found on our [legal page](https://infinitode.netlify.app/legal). Our billing documents — the [Refund Policy](https://infinitode.netlify.app/legal/refund-policy), [Subscription Terms](https://infinitode.netlify.app/legal/subscription-terms), and a change log of material updates — are listed there too.

</details>

<details>

<summary>How is my data handled, and do you share it with third parties?</summary>

We are committed to protecting your privacy, and we **do not sell your data**. We rely on a small number of service providers to run the platform — Google Firebase for sign-in and optional authenticator MFA, PayPal for payments, Cloudflare Turnstile for bot protection on sign-in and support forms, and Netlify for hosting — and each processes only what's needed for that service, under its own privacy notice.

Selected account fields, including your account email, name, API keys and plan identifiers, are **encrypted at rest** with authenticated encryption. API activity history stores metadata only (no full API key and no raw IP address) and is deleted after 30 days. Full detail is in our [Privacy Policy](https://infinitode.netlify.app/legal/privacy-policy) and [Cookie Policy](https://infinitode.netlify.app/legal/cookie-policy).

</details>

***

{% hint style="info" %}
Looking for the Docs? They've moved to [here](https://infinitode-docs.gitbook.io/documentation/)...
{% endhint %}
