# SLA and support

Source: https://docs.foodshot.ai/policies/sla

> Our availability commitment, service credits and how to reach us.

## Our commitment

FoodShot commits to **99% availability each calendar month** for:

* creating generations: `POST /v1/generations`;
* reading their status: `GET /v1/generations/{id}`.

Other endpoints, the docs and the dashboard are outside this commitment, though we monitor them too.

## Service credits

If monthly availability falls short, you get service credits, added to your account as extra credits:

| Monthly availability | Service credits                  |
| -------------------- | -------------------------------- |
| Below 99.0%          | 10% of that month's plan credits |
| Below 95.0%          | 25% of that month's plan credits |

* Service credits are capped at 25% of the month's plan credits, and apply to monthly plans only.
* Claim them by email to [hello@foodshot.ai](mailto:hello@foodshot.ai) within 30 days after the end of the month.
* Service credits are the only remedy for missed availability.

## How we measure it

**Monthly availability = 1 − (down minutes ÷ minutes in the month)**, per calendar month in UTC. Maintenance announced at least 48 hours ahead doesn't count. At 99%, the allowance is about 7.3 hours a month.

A minute is a **down minute** when:

* our checks of `GET /v1/health`, which run every minute from several regions, fail from at least 2 regions; or
* it falls in a 5-minute window in which at least 10 requests reached the two endpoints above, from all accounts and both environments, and at least 5% of them got an error.

An **error** is any `5xx` response, `429 busy`, or a `429` from the hosting platform in front of the API, except for an account that went over its [limits](https://docs.foodshot.ai/guides/limits) in that window. Limit answers (`rate_limited`, `queue_full`, `daily_limit_reached`) and other `4xx` responses caused by the request are not errors.

## Objectives

These are targets, not part of the commitment:

* **Generation time:** about 30-40 seconds once a job starts; 4K jobs usually take a little longer than 2K.
* **Success rate:** at least 98% of accepted jobs succeed. Failed jobs are always refunded.

## Incidents

* When the API is down or slow, we email your technical contact.
* Incidents that affect your data follow the [Data and privacy](https://docs.foodshot.ai/policies/data-privacy#if-something-goes-wrong) steps.

## Support

* **Email:** [hello@foodshot.ai](mailto:hello@foodshot.ai). Include the `FoodShot-Request-Id` of a failing request or the generation `id`. Never send API keys or webhook secrets, and please don't send vendor photos.
* **First reply within 1 business day.** Business days are Monday to Friday, Istanbul time, excluding Turkish public holidays.
