Tarkov Pilot
⬤
Tarkov Pilot v2 released — old versions don't work anymore, please download the new one. Easier setup, auto-update, all settings in the app window.
Monitorizarea prețurilor, hărți interactive și instrumente de progres

Tarkov Market API

Prețurile pieței, prețurile negustorilor și datele obiectelor pentru Escape from Tarkov. URL de bază: https://api.tarkov-market.app/api/v1

Clienți oficiali, fără dependențe: Node.js, Python și Go — github.com/ggdiam/tarkov-market-api

Cheie API

Pentru a folosi API-ul ai nevoie de Statut Pro pe site. Exemplele de mai jos folosesc substituentul your_api_key.

Autentificare

Cheia API permite aplicațiilor să citească și să schimbe progresul personajelor tale. Distribuie-o doar aplicațiilor de încredere. Este necesar PRO; o cheie API nouă o revocă pe cea veche. Progresul acceptă x-api-key numai în antet.

Trimite cheia într-un antet:

x-api-key: your_api_key

Sau ca parametru de interogare, dacă antetele sunt incomode (browser, boți de streaming, foi de calcul):

?x-api-key=your_api_key

Cheie lipsă, necunoscută sau dezactivată → 401 { "error": "Access denied" }

Moduri de joc

Fiecare endpoint de obiecte există în trei moduri. Modul poate fi setat printr-un prefix de cale sau prin mode parametru — ambele dau același răspuns:

Mod
Prefix de cale
Parametru
Prețuri din
PVP
/api/v1/…
implicit
colecția de obiecte
PVE
/api/v1/pve/…
mode=pve
scanare PVE
Season
/api/v1/season/…
mode=season
scanare sezonieră

Personaje sezoniere

Economia sezonieră este scanată separat și este recentă: un obiect are preț doar după ce scanerul îl vede pe piața sezonieră, iar avg24hPrice / diff24h se completează pe măsură ce se acumulează istoric. Câmpurile independente de piață — basePrice și prețul negustorului — folosesc valorile PVP până când sezonul primește propriile date de joc.

Lipsa prețului sezonier arată astfel (același obiect și aceeași cerere, în mod sezonier):

{
    "uid": "a7f7568c-61fb-437e-9f71-06e58aae26ba",
    "name": "LEDX Skin Transilluminator",
    "price": 0,               // încă nu există preț sezonier pe piață
    "avg24hPrice": 0,
    "diff24h": 0,
    "updated": "",            // nevăzut încă pe piața sezonieră
    "haveMarketData": false,  // nu folosi prețul acestui obiect
    "basePrice": 970000,      // nu sunt date de piață — identic cu PVP
    "traderName": "Therapist",
    "traderPrice": 494700
}

Endpointuri

GET/item?q=ledx
Găsește un obiect după nume, uid sau bsgId.
qNumele sau numele scurt al obiectului în orice limbă acceptată. Returnează până la 5 rezultate, potrivirea exactă prima
uidUID-ul obiectului Tarkov Market — returnează exact un obiect
bsgIdID-ul obiectului din fișierele jocului — returnează exact un obiect
langLimba numelor și a linkului site-ului. Una dintre: en, ru, ch, cz, de, es, fr, hu, it, jp, kr, mx, pl, po, ro, sk, tr. Implicit en
URL
https://api.tarkov-market.app/api/v1/item?q=ledx&x-api-key=your_api_key
curl
curl -H "x-api-key: your_api_key" "https://api.tarkov-market.app/api/v1/item?q=ledx"
Exemplu de răspuns
[
    {
        "uid": "a7f7568c-61fb-437e-9f71-06e58aae26ba",
        "name": "LEDX Skin Transilluminator",
        "bannedOnFlea": false,
        "haveMarketData": true,
        "tags": ["Barter"],
        "shortName": "LEDX",
        "price": 550000,
        "basePrice": 970000,
        "avg24hPrice": 598993,
        "avg7daysPrice": 671670,
        "traderName": "Therapist",
        "traderPrice": 494700,
        "traderPriceCur": "₽",
        "traderPriceRub": 494700,
        "updated": "2026-08-05T17:34:28.319Z",
        "slots": 1,
        "diff24h": -8.18,
        "diff7days": -18.11,
        "icon": "https://cdn.tarkov-market.app/images/items/a7f7568c-61fb-437e-9f71-06e58aae26ba_sm.png",
        "link": "https://tarkov-market.com/item/ledx_skin_transilluminator",
        "wikiLink": "https://escapefromtarkov.fandom.com/wiki/LEDX_Skin_Transilluminator",
        "img": "https://cdn.tarkov-market.app/images/items/a7f7568c-61fb-437e-9f71-06e58aae26ba_sm.png",
        "imgBig": "https://cdn.tarkov-market.app/images/items/ledx_skin_transilluminator_lg.png",
        "bsgId": "5c0530ee86f774697952d952",
        "isFunctional": true,
        "reference": "https://www.patreon.com/tarkov_market"
    }
]
POST/item
Aceeași căutare cu corp JSON — folosește-o pentru interogări nelatine, fără codificare URL.
q / uid / bsgIdLa fel ca în GET, transmis în corpul JSON
langLa fel ca în GET
curl
curl https://api.tarkov-market.app/api/v1/item \
  -H "x-api-key: your_api_key" \
  -H "Content-Type: application/json" \
  -X POST --data '{"q":"AI-2急救组合","lang":"ch"}'
Exemplu de răspuns
[
    {
        "uid": "2335b619-c562-41da-962f-e7b5aba5d45c",
        "name": "AI-2急救组合",
        "shortName": "AI-2",
        "tags": ["Meds"],
        "price": 6900,
        "basePrice": 4160,
        "avg24hPrice": 6695,
        "avg7daysPrice": 5912,
        "traderName": "Therapist",
        "traderPrice": 2121,
        "traderPriceCur": "₽",
        "traderPriceRub": 2121,
        "diff24h": 3.06,
        "diff7days": 16.71,
        "updated": "2026-08-05T17:07:42.165Z",
        "link": "https://tarkov-market.com/ch/item/ai-2_medikit",
        "bsgId": "5755356824597772cb798962",
        "isFunctional": true
    }
]
GET/items/all5 cereri/min
Toate obiectele într-un singur tablou. Datele sunt în cache 5 minute, deci interogarea mai frecventă nu aduce nimic.
tagsPăstrează doar obiectele cu aceste etichete, separate prin virgulă: tags=Ammo,Magazines
sortSortează după un câmp al răspunsului, de exemplu sort=price
sort_directionasc (implicit) sau desc
langLimba numelor și a linkurilor site-ului
URL
https://api.tarkov-market.app/api/v1/items/all?x-api-key=your_api_key
curl
curl -H "x-api-key: your_api_key" "https://api.tarkov-market.app/api/v1/items/all"
Exemplu de răspuns
[
    {
        "uid": "f0fa8457-6638-4ad2-b7e8-4708033d8f39",
        "name": "Secure Flash drive",
        "shortName": "Flash drive",
        "price": 37400,
        ...
    },
    {
        "uid": "33c15349-44e6-4553-9705-1b6417a1ad6a",
        "name": "SSD drive",
        ...
    },
    ...
]
GET/items/all/download5 cereri/min
Aceeași listă completă ca fișier JSON descărcabil.
langLimba numelor și a linkurilor site-ului
URL
https://api.tarkov-market.app/api/v1/items/all/download?x-api-key=your_api_key
curl
curl -H "x-api-key: your_api_key" "https://api.tarkov-market.app/api/v1/items/all/download"

Câmpurile răspunsului

Câmp
Semnificație
uid
ID-ul obiectului Tarkov Market — stabil, folosește-l drept cheie în sistemul tău
bsgId
ID-ul obiectului din fișierele jocului
name / shortName
Numele obiectului în limba cerută
tags
Categoriile obiectului, aceleași folosite de filtrele site-ului
price
Ultimul preț cunoscut pe piață, ₽. 0 înseamnă că nu există preț pentru acest mod
avg24hPrice / avg7daysPrice
Prețul mediu pe piață în ultimele 24 de ore / 7 zile, ₽
diff24h / diff7days
Variația ultimului preț față de aceste medii, %
basePrice
Prețul de bază al obiectului (catalog), ₽ — baza calculului prețului de cumpărare al negustorului
traderName
Negustorul care plătește cel mai mult pentru obiect
traderPrice / traderPriceCur
Cât plătește acel negustor în valuta sa (₽, $ sau €)
traderPriceRub
Același preț al negustorului convertit în ₽ la cursul jocului
bannedOnFlea
Obiectul nu poate fi vândut pe piață
haveMarketData
Obiectul poate fi tranzacționat pe piață și prețul este recent — false înseamnă să nu te bazezi pe preț
isFunctional
false pentru obiecte eliminate din joc sau imposibil de obținut
updated
Când a văzut scanerul ultima dată prețul pieței. Gol înseamnă niciodată
slots
Dimensiunea obiectului în celulele inventarului
img / imgBig
Pictograma și imaginea mare a obiectului pe CDN-ul meu
icon
Alias vechi pentru img — același URL
link / wikiLink
Pagina obiectului pe tarkov-market.com și pe wiki

Progresul personajului

URL de bază al API-ului de progres: https://api.tarkov-market.app/api/v1

Obține charUid din /characters. Personajul determină PVP, PVE sau SEASON; selectorul de sus este pentru prețuri. itemId și questId sunt ID-uri BSG, inclusiv aliasuri și referințe. upgradeKey indică un nivel al ascunzătorii, de exemplu Workbench_2.

GET returnează revision și ETag. Înlocuiește marcajele cu personajul, ID-ul BSG și revision; trimite If-Match: "{revision}" la fiecare PATCH. Se setează valori absolute. După 409 citește progresul actual și reconciliază schimbarea. Repetarea unei valori aplicate reușește fără altă scriere.

Progres: 300 cereri/minut per cheie și proprietar; 60 de încercări PATCH/minut per proprietar. Limite separate de prețuri. 429 include Retry-After: 60. Stările private nu sunt memorate în cache.

GET/characters
Listează personajele proprietarului cheii API.
curl
curl -H "x-api-key: your_api_key" "https://api.tarkov-market.app/api/v1/characters"
Exemplu de răspuns
{
    "characters": [
        {
            "charUid": "{charUid}",
            "name": "Main",
            "gameMode": "PVP"
        }
    ]
}
GET/characters/{charUid}/tracked-items
Nume și pictograme cu requiredQuantity (cerințe obligatorii rămase), spentQuantity (deja contabilizat), availableQuantity (stoc), remainingQuantity = max(0, requiredQuantity − availableQuantity) și sources. Obiectele inițiale și etapele predate reduc cerințele. Obiectivele opționale sunt excluse; firInventorySeparate:false indică lipsa unui stoc FiR separat. PATCH setează availableQuantity; nu adaugă sau șterge obiective proprii. Prețuri: /api/v1/item?bsgId={itemId}&mode={mode}, /api/v1/items/all?mode={mode}. Folosește modul personajului (pvp/pve/season); calculează prețul pe slot ca price / slots.
langLimba numelor și a linkului site-ului. Una dintre: en, ru, kr, it, es, de, jp, ch, tr, fr, pl, po, cz, sk, hu, ro, mx. Implicit en
curl
curl -H "x-api-key: your_api_key" "https://api.tarkov-market.app/api/v1/characters/{charUid}/tracked-items"
Exemplu de răspuns
{
    "charUid": "{charUid}",
    "gameMode": "PVP",
    "revision": "{revision}",
    "firInventorySeparate": false,
    "items": [
        {
            "itemId": "5c0530ee86f774697952d952",
            "name": "LEDX Skin Transilluminator",
            "shortName": "LEDX",
            "slots": 1,
            "icon": "https://cdn.tarkov-market.app/images/items/a7f7568c-61fb-437e-9f71-06e58aae26ba_sm.png",
            "requiredQuantity": 10,
            "spentQuantity": 0,
            "availableQuantity": 5,
            "remainingQuantity": 5,
            "sources": [
                {
                    "type": "quest",
                    "questId": "{BSG quest ID}",
                    "amount": 10,
                    "remainingRequiredQuantity": 10,
                    "fir": true,
                    "completed": false,
                    "canceled": false
                }
            ]
        }
    ]
}
PATCH/characters/{charUid}/tracked-items/{itemId}
Setează valoarea absolută din JSON și trimite revision din GET în If-Match.
availableQuantitySingurul câmp JSON permis, obligatoriu: un număr întreg de la 0 la 1 000 000 000. Setează stocul disponibil absolut, nu îl modifică cu această cantitate; 0 golește stocul. Celelalte câmpuri sunt doar pentru citire. Câmp lipsă, valoare nevalidă sau câmpuri suplimentare: 400 invalid_quantity.
curl
curl "https://api.tarkov-market.app/api/v1/characters/{charUid}/tracked-items/{itemId}" \
  -H "x-api-key: your_api_key" \
  -H 'If-Match: "{revision}"' \
  -H "Content-Type: application/json" \
  -X PATCH --data '{"availableQuantity":4}'
Exemplu de răspuns
{
    "ok": true,
    "changed": true,
    "revision": "{newRevision}",
    "notificationDelivered": true
}
GET/characters/{charUid}/quests
Misiuni compatibile cu personajul. status este calculat: completed, failed, unreachable, available sau locked; nu înseamnă că misiunea este acceptată în joc. PATCH completed:true sau false. Resetarea păstrează etapele bifate și misiunile legate finalizate.
langLimba numelor și a linkului site-ului. Una dintre: en, ru, kr, it, es, de, jp, ch, tr, fr, pl, po, cz, sk, hu, ro, mx. Implicit en
curl
curl -H "x-api-key: your_api_key" "https://api.tarkov-market.app/api/v1/characters/{charUid}/quests"
Exemplu de răspuns
{
    "charUid": "{charUid}",
    "gameMode": "PVP",
    "revision": "{revision}",
    "quests": [
        {
            "questId": "{BSG quest ID}",
            "questIdAliases": [],
            "name": "Quest name",
            "trader": "Therapist",
            "completed": false,
            "status": "available"
        }
    ]
}
PATCH/characters/{charUid}/quests/{questId}
Setează valoarea absolută din JSON și trimite revision din GET în If-Match.
completedSingurul câmp JSON permis, obligatoriu: o valoare booleană. true finalizează misiunea; false resetează finalizarea, păstrând pașii bifați și finalizarea misiunilor asociate. status, pașii și alte câmpuri nu pot fi modificate aici. Câmp lipsă, valoare nevalidă sau câmpuri suplimentare: 400 invalid_completed.
curl
curl "https://api.tarkov-market.app/api/v1/characters/{charUid}/quests/{questId}" \
  -H "x-api-key: your_api_key" \
  -H 'If-Match: "{revision}"' \
  -H "Content-Type: application/json" \
  -X PATCH --data '{"completed":true}'
Exemplu de răspuns
{
    "ok": true,
    "changed": true,
    "revision": "{newRevision}",
    "notificationDelivered": true
}
GET/characters/{charUid}/hideout
Fiecare nivel al ascunzătorii: upgradeKey, moduleId (ID BSG sau null), completed, prebuilt și canComplete. PATCH completed:true sau false. Finalizează întâi cerințele prealabile și resetează întâi construcțiile dependente. Cele inițiale ale ediției nu pot fi resetate. canComplete verifică dependențele modulelor, nu banii sau abilitățile din joc.
langLimba numelor și a linkului site-ului. Una dintre: en, ru, kr, it, es, de, jp, ch, tr, fr, pl, po, cz, sk, hu, ro, mx. Implicit en
curl
curl -H "x-api-key: your_api_key" "https://api.tarkov-market.app/api/v1/characters/{charUid}/hideout"
Exemplu de răspuns
{
    "charUid": "{charUid}",
    "gameMode": "PVP",
    "revision": "{revision}",
    "modules": [
        {
            "upgradeKey": "Workbench_2",
            "moduleId": "{BSG module ID}",
            "name": "Workbench",
            "level": 2,
            "completed": false,
            "prebuilt": false,
            "canComplete": true
        }
    ]
}
PATCH/characters/{charUid}/hideout/{upgradeKey}
Setează valoarea absolută din JSON și trimite revision din GET în If-Match.
completedSingurul câmp JSON permis, obligatoriu: o valoare booleană. true înregistrează această îmbunătățire ca fiind construită; false resetează construcția. Celelalte câmpuri sunt doar pentru citire. Câmp lipsă, valoare nevalidă sau câmpuri suplimentare: 400 invalid_completed; restricții de dependențe sau construcții inițiale: 409.
curl
curl "https://api.tarkov-market.app/api/v1/characters/{charUid}/hideout/{upgradeKey}" \
  -H "x-api-key: your_api_key" \
  -H 'If-Match: "{revision}"' \
  -H "Content-Type: application/json" \
  -X PATCH --data '{"completed":true}'
Exemplu de răspuns
{
    "ok": true,
    "changed": true,
    "revision": "{newRevision}",
    "notificationDelivered": true
}

Erori: 400 date invalide; 401 cheie lipsă, dezactivată, revocată, fără proprietar sau proprietar blocat; 403 PRO necesar/sezon dezactivat; 404 personaj inaccesibil/entitate necunoscută; 409 conflict, ID BSG ambiguu sau restricții de construcție; 413 corp prea mare; 428 lipsește If-Match; 429 limită; 503 serviciu indisponibil. Corp: {"error":"code"}.

notificationDelivered:false înseamnă că scrierea a fost salvată, dar notificarea site-ului nu este confirmată. Actualizează progresul; scrierea nu a eșuat.

Limite și erori

Regulă
Detalii
300 cereri/min
Per cheie, pe toate endpointurile de prețuri. Progresul are limite separate de cereri și scrieri.
5 cereri/min
Lista completă și descărcarea ei, în toate modurile. Prețurile sunt oricum în cache 5 minute.
401
Cheie lipsă, necunoscută sau dezactivată.
429
Limita de cereri atinsă — corpul răspunsului indică ce limită.

Condiții

API-ul este destinat utilizării personale.

Dacă îl folosești într-un proiect public, indică tarkov-market.com ca furnizor de date.

Dacă proiectul tău public copiază majoritatea funcțiilor tarkov-market, accesul poate fi întrerupt fără avertisment și despăgubire.

Dacă revinzi API-ul, accesul va fi întrerupt fără avertisment și despăgubire.