Dokumentace Provider API
Všechny endpointy, pole, odpovědi a chyby na jedné stránce. Příklady používají curl a JSON.
Začínáme
JSON přes HTTPS. Při každé změně přepínače klienta pošlete jedno volání. Každé volání lze bezpečně zopakovat.
Základní URLhttps://api.anuto.app/v1
Endpointy
| Endpoint | Význam |
|---|---|
POST/provider/clients | Aktivovat nebo aktualizovat klienta |
GET/provider/clients/{externalId} | Stav jednoho klienta |
DELETE/provider/clients/{externalId} | Deaktivovat klienta a stáhnout jeho inzeráty |
POST/provider/clients/{externalId}/changes | Oznámit Anutu, že se změnil sklad klienta |
GET/provider/me | Ověřit klíč: název poskytovatele, formáty a stav |
Opakování je bezpečné
Volání se stejným externalId aktualizuje daného klienta. Nikdy nevytvoří duplicitu, takže můžete po timeoutu zkusit znovu.
Autentizace
Klíč posílejte v hlavičce Authorization u každého požadavku. Klíče začínají na anp_, zobrazí se jen jednou a na stránce API klíčů je lze vyměnit.
Authorization: Bearer anp_…Aktivovat nebo aktualizovat klienta
POST/provider/clients
Když se přepínač klienta zapne, pošlete jeho údaje. Opakováním volání se stejným externalId tohoto klienta aktualizujete.
curl -X POST https://api.anuto.app/v1/provider/clients \
-H "Authorization: Bearer $ANUTO_KEY" \
-H "Content-Type: application/json" \
-d '{
"externalId": "12345",
"name": "Casa Sol Real Estate",
"email": "[email protected]",
"phone": "+34 600 000 000",
"website": "https://casasol.es",
"country": "ES",
"listingsCount": 85
}'| Pole | Povinné | Význam |
|---|---|---|
externalId | Povinné | Vaše ID tohoto klienta (například jeho účet nebo ID firmy ve vašem softwaru). 1 až 100 znaků. |
name | Povinné | Název firmy (až 120 znaků). |
email | Povinné | Kontaktní e-mail klienta. Slouží k vytvoření jeho účtu Anuto, pokud je na Anuto nový. |
country | Povinné | Dvoupísmenný kód země ISO, například ES. |
phone | Volitelné | Kontaktní telefon (až 40 znaků). |
website | Volitelné | Web klienta, http nebo https. |
format | Volitelné | Uveďte jen tehdy, když váš přístup pokrývá více integrací. |
connection | Volitelné | Přípojovací údaje pro vaši integraci, pokud nějaké jsou. Které to jsou, sdělíme při schválení přístupu. |
listingsCount | Volitelné | Počet inzerátů klienta, pro plánování. |
test | Volitelné | Pouze ověří data a spojení. Nic se nevytvoří. |
Odpověď
Každé volání vrátí stav klienta, počty inzerátů a tarif.
{
"externalId": "12345",
"clientId": "Xw3kQ9mZr2LpT7vNa4Bc",
"status": "active",
"shopUrl": "https://es.anuto.app/@casa-sol",
"listings": { "active": 10, "waiting": 0, "planWaiting": 75 },
"plan": { "tier": "free", "maxActive": 10, "freeMaxActive": 10 },
"upgradeUrl": "https://es.anuto.app/user/manage/plan",
"lastSyncAt": "2026-10-08T09:30:00.000Z"
}Zjistit stav klienta
GET/provider/clients/{externalId}
Vrátí aktuální stav klienta, počty inzerátů a tarif ve stejném tvaru jako odpověď na aktivaci.
curl https://api.anuto.app/v1/provider/clients/12345 \
-H "Authorization: Bearer $ANUTO_KEY"Deaktivovat klienta
DELETE/provider/clients/{externalId}
Smazání klienta ho vypne a stáhne jeho inzeráty z Anuto.
curl -X DELETE https://api.anuto.app/v1/provider/clients/12345 \
-H "Authorization: Bearer $ANUTO_KEY"Hlásit změny
POST/provider/clients/{externalId}/changes
Volejte ho vždy, když se sklad klienta změní: inzerát je vytvořen, upraven, prodán nebo smazán. Klienta znovu synchronizujeme během několika minut, místo čekání na pravidelnou synchronizaci každých několik hodin. Volání do 5 minut se slučují, takže je v pořádku volat při každé změně.
- Tělo požadavku je nepovinné. Do itemIds vložte až 100 ID vašich nemovitostí nebo produktů, které se změnily.
- Úspěšné volání vrátí 202. nextSyncAt je čas (UTC), kdy je opětovná synchronizace naplánována.
- U neaktivního klienta odpověď obsahuje queued: false a zprávu. Nic se nezařadí do fronty.
curl -X POST https://api.anuto.app/v1/provider/clients/12345/changes \
-H "Authorization: Bearer $ANUTO_KEY" \
-H "Content-Type: application/json" \
-d '{ "itemIds": ["123", "456"] }'{
"queued": true,
"nextSyncAt": "2026-10-08T12:00:00Z"
}Ověřit klíč
GET/provider/me
Vrátí název vašeho poskytovatele, formáty, na které se váš přístup vztahuje, a stav klíče. Zavolejte ho jako první, abyste ověřili, že nový klíč funguje.
curl https://api.anuto.app/v1/provider/me \
-H "Authorization: Bearer $ANUTO_KEY"{
"providerId": "Xw3kQ9mZr2LpT7vNa4Bc",
"name": "Your software company",
"formats": ["…"],
"status": "approved"
}Testovací režim
Nastavte test na true a ověří se data a spojení. Nic se nevytvoří; dostanete stav, který by nastal, a výsledky kontrol.
{
"externalId": "12345",
"name": "Casa Sol Real Estate",
"email": "[email protected]",
"country": "ES",
"test": true
}
{
"ok": true,
"wouldBe": "active",
"checks": { "connection": "ok", "owner": "new_account" }
}Stavy klienta
- activeOnline a synchronizováno.
- pendingSpojení zatím nefunguje, takže se nic nepublikuje.
- reviewAnuto to kontroluje, protože e-mail tohoto nového klienta už patří jinému účtu Anuto.
- inactiveVypnuto vámi, nebo odstraněno společností Anuto.
Chyby
Neúspěšná volání vrací JSON se statusCode, code a message. Rozhodujte podle code; message je určena lidem.
{
"statusCode": 404,
"code": "PROVIDER_CLIENT_NOT_FOUND",
"message": "No client with externalId 12345"
}| Kód | HTTP | Význam |
|---|---|---|
PROVIDER_KEY_INVALID | 401 | Chybějící, neplatný nebo neznámý klíč. |
PROVIDER_REVOKED | 403 | Přístup vašeho poskytovatele byl společností Anuto odebrán. |
PROVIDER_FORMAT_REQUIRED | 400 | Váš software má více formátů, tělo proto musí obsahovat format. |
PROVIDER_FORMAT_NOT_ALLOWED | 400 | Formát není mezi vašimi schválenými formáty. |
PROVIDER_CLIENT_NOT_FOUND | 404 | Pro vašeho poskytovatele není klient s tímto externalId. |
Limity požadavků
Při překročení limitu dostanete 429 s hlavičkou Retry-After. Počkejte tolik sekund a pak zkuste znovu.
Dotazy k API nebo k vašemu přístupu? [email protected]