Tarkov.dev's API fork.
Go to file
Razzmatazz 4aeda5079b
Merge pull request #434 from the-hideout/fix-boss-items
Fix boss.items field
2026-03-25 16:17:40 -05:00
.github Bump actions/checkout from 5 to 6 in the github-actions group 2025-12-01 00:10:28 +00:00
datasources Make schema static 2026-01-20 15:08:14 -06:00
docs Update graphql-examples.md with Task example 2024-02-16 07:23:04 -08:00
handlers bump to graphiql 5 2025-06-25 15:58:26 -05:00
http Bump minimatch from 3.1.2 to 3.1.5 in /http 2026-02-28 12:28:15 +00:00
plugins Use normal fetch timeout signal 2025-07-19 19:38:29 -05:00
resolvers Fix boss.items field 2026-03-24 07:03:33 -05:00
script update test 2025-01-01 17:19:39 -06:00
utils fix items pve data 2025-12-31 08:53:21 -06:00
.gitignore convert to es module worker 2024-03-04 18:01:11 -06:00
.node-version bump node ver 2024-08-05 09:19:18 -05:00
.prettierrc Initial commit-ish 2021-02-09 10:46:23 +01:00
LICENSE Create LICENSE 2022-03-09 22:03:42 -08:00
README.md treat dedicated server as origin 2024-08-19 14:17:32 -05:00
SECURITY.md Update SECURITY.md 2022-03-25 21:39:16 -07:00
graphql-yoga.mjs Make schema static 2026-01-20 15:08:14 -06:00
index.mjs Make schema static 2026-01-20 15:08:14 -06:00
loader.js convert to es module worker 2024-03-04 18:01:11 -06:00
package-lock.json Bump wrangler from 4.61.1 to 4.69.0 in the npm-dependencies group 2026-03-01 00:42:44 +00:00
package.json Bump wrangler from 4.61.1 to 4.69.0 in the npm-dependencies group 2026-03-01 00:42:44 +00:00
populate-local-kv.mjs module for populating local dev kvs 2024-08-04 11:00:15 -05:00
schema-dynamic.mjs Refactor schema files to improve formatting and add detailed documentation for Achievement type 2025-05-05 10:46:03 -04:00
schema-static.mjs fix schema 2026-01-20 15:17:36 -06:00
schema.mjs Make schema static 2026-01-20 15:08:14 -06:00
tail.js Improve handling of origin requests 2025-06-11 13:40:09 -05:00
test-playground.mjs Add local GraphQL Playground for SDL development 2025-05-02 14:05:15 -04:00
webpack.config.js specify node version 2023-02-20 16:42:12 -06:00
webpack.dev.js fix dev deploy 2022-06-20 07:17:48 -05:00
wrangler.toml Improve handling of origin requests 2025-06-11 13:40:09 -05:00

README.md

Tarkov API (Escape from Tarkov) 💻

deploy test Discord

This is the main API for tarkov.dev, and was forked from kokarn's Tarkov Tools API.

It's a simple GraphQL API running on Cloudflare workers.

This API powers all of tarkov.dev and other notable projects as well:

What is this? 💡

A community made GraphQL API for Escape from Tarkov

  • 🆓 Free
  • 🔨 Easy to use
  • 📖 Open source
  • 🧑‍🤝‍🧑 Community driven
  • Ultra fast
  • Data is constantly updated in real-time

What can I do with this API?

  • View the prices of items
  • Get detailed ammo, armor, and weapon information
  • Fetch flea market data
  • View item weight, slots, etc
  • Calculate barter and hideout profit
  • Determine ergo, armor class, durability, etc for an item
  • Fetch detailed quest information and unlocks
  • View info about crafts and their requirements
  • Find information about in-game bosses
  • Detailed info on medicines, stims, and in-game healing
  • So much more (it would take up this entire page to list everything 😸)

This API does almost everything you would ever want for EFT!

API Playground 🎾

There is a GraphQL playground for you to use and test out

Link: api.tarkov.dev/

Example Query:

query {
  items {
      id
      name
      shortName
      wikiLink
      iconLink
      updated
  }
}

More examples can be found in our graphql example docs 📚

Even more examples can be found on our api page on tarkov.dev (includes many programming languages too)

Development 🔨

Prerequisites:

  • Install Wrangler
  • Run wrangler login - (needed for k/v store and secrets)

You may want to create a .dev.vars file in the main project folder with the following values:

  • CACHE_BASIC_AUTH (used for caching)

Start the API server:

Deployment 🚀

If you wish to deploy locally and have permissions to do so, run the following command:

wrangler publish

We don't do this often and generally use GitHub actions to do all of our deployments for us

HTTP Server

There's also an http webserver in the /http folder. It can be run with npm run dev or npm start. To run locally, you need to set the following vars (for local testing, you can use an .env file in the /http folder):

  • CLOUDFLARE_TOKEN (token must have permissions to read the KVs the API uses)
  • CACHE_BASIC_AUTH (used for caching)
  • ENVIRONMENT (either production or dev; determines which KVs are read)
  • PORT (defaults to 8088)
  • WORKERS (defaults to # of cpus - 1; determines how many worker threads are created to respond to requests)