PokéAPI

Entertainment

Ready to useNo account needed

PokéAPI data, published as PokéAPI publishes it. Ingest delivers this data to a data warehouse you own as 14 tables, and updates it on the schedule you choose. There is no code to write and nothing to install.

What you get

TableEach row is
ability
ability
One row per ability with its generation; child tables hold its effect text, flavor text and names in every language.
ability_list
ability_list
The directory of every ability, one name and detail URL each, keyed by the URL. Read in full every run; it is what `ability` reads the details of.
generation
generation
One row per game generation with its main region; child tables list the species, moves, abilities, types and version groups it introduced, and its names.
generation_list
generation_list
The directory of every game generation, one name and detail URL each, keyed by the URL. Read in full every run; it is what `generation` reads the details of.
item
item
One row per item with its cost, category and fling power; child tables hold its attributes and its effect text, flavor text and names in every language.
item_list
item_list
The directory of every item, one name and detail URL each, keyed by the URL. Read in full every run; it is what `item` reads the details of.
move
move
One row per move with its type, power, accuracy, PP, priority, damage class, target and battle metadata; child tables hold the stat changes it causes and its effect text, flavor text and names in every language.
move_list
move_list
The directory of every move, one name and detail URL each, keyed by the URL. Read in full every run; it is what `move` reads the details of.
pokemon
pokemon
One row per Pokémon (including regional and alternate forms) with its height, weight, base experience and species; child tables list its types, abilities, base stats, held items and every move it can learn.
pokemon_list
pokemon_list
The directory of every Pokémon, one name and detail URL each, keyed by the URL. Read in full every run; it is what `pokemon` reads the details of.
pokemon_species
pokemon_species
One row per species with its generation, capture rate, legendary and mythical flags and the species it evolves from; child tables hold its Pokédex numbers, egg groups, varieties, names, genera and Pokédex entry text in every language.
pokemon_species_list
pokemon_species_list
The directory of every Pokémon species, one name and detail URL each, keyed by the URL. Read in full every run; it is what `pokemon_species` reads the details of.
type
type
One row per type (fire, water and the rest) with its damage class and generation; child tables hold its damage relations (which types it hits for double, half or no damage, and which hit it) and its names.
type_list
type_list
The directory of every type, one name and detail URL each, keyed by the URL. Read in full every run; it is what `type` reads the details of.

How it works

  1. Choose PokéAPI. The data is public, so there is nothing to sign in to.
  2. Pick where it goes. BigQuery, Snowflake, Databricks, Redshift and 10 more, in an account you own.
  3. Pick a schedule. Daily is the default, and weekly and monthly are there too.
  4. Ingest runs it from then on. If a run fails, your dashboard shows which table and why.

Questions

Do I need an account with PokéAPI?
No. The data is public, so there is nothing to sign up for and nothing to paste in.
Which warehouses can PokéAPI data go to?
Amazon S3, Google Cloud Storage, Azure Blob Storage, Apache Iceberg, Ingest Managed Lakehouse, MotherDuck, Postgres, Amazon Athena, Databricks, Redshift, BigQuery, ClickHouse, MySQL / generic SQL and Snowflake, in an account you own.
How fresh is the data?
As fresh as your schedule: daily by default, or weekly or monthly. Schedules as often as every 15 minutes are on the Enterprise plan.
Will running it again create duplicate rows?
No. Each row is stored once, by its key: when a run reads a row that is already there, it replaces that copy instead of adding a second one.
Do I need to write code?
No. Ingest builds, runs and maintains the connector. Someone with access to your warehouse connects it once, following a short guide.
For your data team: technical reference

Connector pokeapi, version 0.1.0, a REST source, status beta, authentication none.

Vendor documentation: https://pokeapi.co/docs/v2

Configuration

No configuration required.

Resources

ResourceStatusPlanWritePrimary keyOverrides
ability
One row per ability with its generation; child tables hold its effect text, flavor text and names in every language.
betaparent_childmergeid-
ability_list
The directory of every ability, one name and detail URL each, keyed by the URL. Read in full every run; it is what `ability` reads the details of.
betafullmergeurl-
generation
One row per game generation with its main region; child tables list the species, moves, abilities, types and version groups it introduced, and its names.
betaparent_childmergeid-
generation_list
The directory of every game generation, one name and detail URL each, keyed by the URL. Read in full every run; it is what `generation` reads the details of.
betafullmergeurl-
item
One row per item with its cost, category and fling power; child tables hold its attributes and its effect text, flavor text and names in every language.
betaparent_childmergeid-
item_list
The directory of every item, one name and detail URL each, keyed by the URL. Read in full every run; it is what `item` reads the details of.
betafullmergeurl-
move
One row per move with its type, power, accuracy, PP, priority, damage class, target and battle metadata; child tables hold the stat changes it causes and its effect text, flavor text and names in every language.
betaparent_childmergeid-
move_list
The directory of every move, one name and detail URL each, keyed by the URL. Read in full every run; it is what `move` reads the details of.
betafullmergeurl-
pokemon
One row per Pokémon (including regional and alternate forms) with its height, weight, base experience and species; child tables list its types, abilities, base stats, held items and every move it can learn.
betaparent_childmergeid-
pokemon_list
The directory of every Pokémon, one name and detail URL each, keyed by the URL. Read in full every run; it is what `pokemon` reads the details of.
betafullmergeurl-
pokemon_species
One row per species with its generation, capture rate, legendary and mythical flags and the species it evolves from; child tables hold its Pokédex numbers, egg groups, varieties, names, genera and Pokédex entry text in every language.
betaparent_childmergeid-
pokemon_species_list
The directory of every Pokémon species, one name and detail URL each, keyed by the URL. Read in full every run; it is what `pokemon_species` reads the details of.
betafullmergeurl-
type
One row per type (fire, water and the rest) with its damage class and generation; child tables hold its damage relations (which types it hits for double, half or no damage, and which hit it) and its names.
betaparent_childmergeid-
type_list
The directory of every type, one name and detail URL each, keyed by the URL. Read in full every run; it is what `type` reads the details of.
betafullmergeurl-

Setting up the destination is its own short guide, one per warehouse or lake: Amazon S3, Google Cloud Storage, Azure Blob Storage, Apache Iceberg, Ingest Managed Lakehouse, MotherDuck, Postgres, Amazon Athena, Databricks, Redshift, BigQuery, ClickHouse, MySQL / generic SQL, Snowflake.

Get PokéAPI data into your warehouse

Last updated .