Games & Comics — entry 053 of 77

Pokéapi

Verified Jul 2026

PokéAPI is the flagship, exhaustive RESTful Pokémon dataset — species, moves, abilities, items, types, evolution chains, and sprite artwork across every generation — run as a free community project. It's fully keyless, though the maintainers ask heavy consumers to self-host their open-source data dump or use the point-in-time GraphQL beta rather than hammering the shared public host.

pokemongame-datareferencekeyless
AuthenticationNone requiredCall it straight away — no key, no signup.
HTTPSSupportedTraffic is encrypted in transit.
CORSEnabledCallable directly from browser JavaScript.
PricingFreeNo paid tier — free for the documented use case.
FormatsJSONResponses can be requested as JSON.

GreatAPIs Score

Score94out of 100
Authentication25/25No authentication required
Pricing20/20Free to use
Docs20/20Machine-readable spec file bundled
Formats9/15Single response format
Freshness20/20Verified within 6 months

Embed this badge

Scored 94 on greatapis.com
<a href="https://greatapis.com/api/pok-api/"><img src="https://greatapis.com/badge/pok-api.svg" alt="Scored 94 on greatapis.com"></a>

Auth quickstart

  1. No key needed — call it now.
Stored keyNo key stored

Your key is stored only in this browser (localStorage) and sent directly to the API — never to greatapis.

Endpoints

Servers
https://pokeapi.co
pokemon32

Pokémon are the creatures that inhabit the world of the Pokémon games. They can be caught using Pokéballs and trained by battling with other Pokémon. Each Pokémon belongs to a specific species but may take on a variant which makes it differ from other Pokémon of the same species, such as base stats, available abilities and typings. See [Bulbapedia](http://bulbapedia.bulbagarden.net/wiki/Pok%C3%A9mon_(species)) for greater detail.

GET/api/v2/ability/List abilities
Parameters
NameInRequiredType
limitquerynointeger
offsetquerynointeger
qquerynostring
Responses
StatusDescriptionSchema
200PaginatedAbilitySummaryList
GET/api/v2/ability/{id}/Get ability
Parameters
NameInRequiredType
idpathyesstring
Responses
StatusDescriptionSchema
200AbilityDetail
GET/api/v2/characteristic/List charecterictics
Parameters
NameInRequiredType
limitquerynointeger
offsetquerynointeger
qquerynostring
Responses
StatusDescriptionSchema
200PaginatedCharacteristicSummaryList
GET/api/v2/characteristic/{id}/Get characteristic
Parameters
NameInRequiredType
idpathyesstring
Responses
StatusDescriptionSchema
200CharacteristicDetail
GET/api/v2/egg-group/List egg groups
Parameters
NameInRequiredType
limitquerynointeger
offsetquerynointeger
qquerynostring
Responses
StatusDescriptionSchema
200PaginatedEggGroupSummaryList
GET/api/v2/egg-group/{id}/Get egg group
Parameters
NameInRequiredType
idpathyesstring
Responses
StatusDescriptionSchema
200EggGroupDetail
GET/api/v2/gender/List genders
Parameters
NameInRequiredType
limitquerynointeger
offsetquerynointeger
qquerynostring
Responses
StatusDescriptionSchema
200PaginatedGenderSummaryList
GET/api/v2/gender/{id}/Get gender
Parameters
NameInRequiredType
idpathyesstring
Responses
StatusDescriptionSchema
200GenderDetail
GET/api/v2/growth-rate/List growth rates
Parameters
NameInRequiredType
limitquerynointeger
offsetquerynointeger
qquerynostring
Responses
StatusDescriptionSchema
200PaginatedGrowthRateSummaryList
GET/api/v2/growth-rate/{id}/Get growth rate
Parameters
NameInRequiredType
idpathyesstring
Responses
StatusDescriptionSchema
200GrowthRateDetail
GET/api/v2/move-damage-class/List move damage classes
Parameters
NameInRequiredType
limitquerynointeger
offsetquerynointeger
qquerynostring
Responses
StatusDescriptionSchema
200PaginatedMoveDamageClassSummaryList
GET/api/v2/move-damage-class/{id}/Get move damage class
Parameters
NameInRequiredType
idpathyesstring
Responses
StatusDescriptionSchema
200MoveDamageClassDetail
GET/api/v2/nature/List natures
Parameters
NameInRequiredType
limitquerynointeger
offsetquerynointeger
qquerynostring
Responses
StatusDescriptionSchema
200PaginatedNatureSummaryList
GET/api/v2/nature/{id}/Get nature
Parameters
NameInRequiredType
idpathyesstring
Responses
StatusDescriptionSchema
200NatureDetail
GET/api/v2/pokeathlon-stat/List pokeathlon stats
Parameters
NameInRequiredType
limitquerynointeger
offsetquerynointeger
qquerynostring
Responses
StatusDescriptionSchema
200PaginatedPokeathlonStatSummaryList
GET/api/v2/pokeathlon-stat/{id}/Get pokeathlon stat
Parameters
NameInRequiredType
idpathyesstring
Responses
StatusDescriptionSchema
200PokeathlonStatDetail
GET/api/v2/pokemon-color/List pokemon colors
Parameters
NameInRequiredType
limitquerynointeger
offsetquerynointeger
qquerynostring
Responses
StatusDescriptionSchema
200PaginatedPokemonColorSummaryList
GET/api/v2/pokemon-color/{id}/Get pokemon color
Parameters
NameInRequiredType
idpathyesstring
Responses
StatusDescriptionSchema
200PokemonColorDetail
GET/api/v2/pokemon-form/List pokemon forms
Parameters
NameInRequiredType
limitquerynointeger
offsetquerynointeger
qquerynostring
Responses
StatusDescriptionSchema
200PaginatedPokemonFormSummaryList
GET/api/v2/pokemon-form/{id}/Get pokemon form
Parameters
NameInRequiredType
idpathyesstring
Responses
StatusDescriptionSchema
200PokemonFormDetail
GET/api/v2/pokemon-habitat/List pokemom habitas
Parameters
NameInRequiredType
limitquerynointeger
offsetquerynointeger
qquerynostring
Responses
StatusDescriptionSchema
200PaginatedPokemonHabitatSummaryList
GET/api/v2/pokemon-habitat/{id}/Get pokemom habita
Parameters
NameInRequiredType
idpathyesstring
Responses
StatusDescriptionSchema
200PokemonHabitatDetail
GET/api/v2/pokemon-shape/List pokemon shapes
Parameters
NameInRequiredType
limitquerynointeger
offsetquerynointeger
qquerynostring
Responses
StatusDescriptionSchema
200PaginatedPokemonShapeSummaryList
GET/api/v2/pokemon-shape/{id}/Get pokemon shape
Parameters
NameInRequiredType
idpathyesstring
Responses
StatusDescriptionSchema
200PokemonShapeDetail
GET/api/v2/pokemon-species/List pokemon species
Parameters
NameInRequiredType
limitquerynointeger
offsetquerynointeger
qquerynostring
Responses
StatusDescriptionSchema
200PaginatedPokemonSpeciesSummaryList
GET/api/v2/pokemon-species/{id}/Get pokemon species
Parameters
NameInRequiredType
idpathyesstring
Responses
StatusDescriptionSchema
200PokemonSpeciesDetail
GET/api/v2/pokemon/List pokemon
Parameters
NameInRequiredType
limitquerynointeger
offsetquerynointeger
qquerynostring
Responses
StatusDescriptionSchema
200PaginatedPokemonSummaryList
GET/api/v2/pokemon/{id}/Get pokemon
Parameters
NameInRequiredType
idpathyesstring
Responses
StatusDescriptionSchema
200PokemonDetail
GET/api/v2/stat/List stats
Parameters
NameInRequiredType
limitquerynointeger
offsetquerynointeger
qquerynostring
Responses
StatusDescriptionSchema
200PaginatedStatSummaryList
GET/api/v2/stat/{id}/Get stat
Parameters
NameInRequiredType
idpathyesstring
Responses
StatusDescriptionSchema
200StatDetail
GET/api/v2/type/List types
Parameters
NameInRequiredType
limitquerynointeger
offsetquerynointeger
qquerynostring
Responses
StatusDescriptionSchema
200PaginatedTypeSummaryList
GET/api/v2/type/{id}/Get types
Parameters
NameInRequiredType
idpathyesstring
Responses
StatusDescriptionSchema
200TypeDetail
evolution4

Evolution is a process in which a Pokémon changes into a different species of Pokémon.

GET/api/v2/evolution-chain/List evolution chains
Parameters
NameInRequiredType
limitquerynointeger
offsetquerynointeger
qquerynostring
Responses
StatusDescriptionSchema
200PaginatedEvolutionChainSummaryList
GET/api/v2/evolution-chain/{id}/Get evolution chain
Parameters
NameInRequiredType
idpathyesstring
Responses
StatusDescriptionSchema
200EvolutionChainDetail
GET/api/v2/evolution-trigger/List evolution triggers
Parameters
NameInRequiredType
limitquerynointeger
offsetquerynointeger
qquerynostring
Responses
StatusDescriptionSchema
200PaginatedEvolutionTriggerSummaryList
GET/api/v2/evolution-trigger/{id}/Get evolution trigger
Parameters
NameInRequiredType
idpathyesstring
Responses
StatusDescriptionSchema
200EvolutionTriggerDetail
berries6

Berries can be soft or hard. Check out [Bulbapedia](http://bulbapedia.bulbagarden.net/wiki/Category:Berries_by_firmness) for greater detail.

GET/api/v2/berry-firmness/List berry firmness
Parameters
NameInRequiredType
limitquerynointeger
offsetquerynointeger
qquerynostring
Responses
StatusDescriptionSchema
200PaginatedBerryFirmnessSummaryList
GET/api/v2/berry-firmness/{id}/Get berry by firmness
Parameters
NameInRequiredType
idpathyesstring
Responses
StatusDescriptionSchema
200BerryFirmnessDetail
GET/api/v2/berry-flavor/List berry flavors
Parameters
NameInRequiredType
limitquerynointeger
offsetquerynointeger
qquerynostring
Responses
StatusDescriptionSchema
200PaginatedBerryFlavorSummaryList
GET/api/v2/berry-flavor/{id}/Get berries by flavor
Parameters
NameInRequiredType
idpathyesstring
Responses
StatusDescriptionSchema
200BerryFlavorDetail
GET/api/v2/berry/List berries
Parameters
NameInRequiredType
limitquerynointeger
offsetquerynointeger
qquerynostring
Responses
StatusDescriptionSchema
200PaginatedBerrySummaryList
GET/api/v2/berry/{id}/Get a berry
Parameters
NameInRequiredType
idpathyesstring
Responses
StatusDescriptionSchema
200BerryDetail
items10

An item is an object in the games which the player can pick up, keep in their bag, and use in some manner. They have various uses, including healing, powering up, helping catch Pokémon, or to access a new area.

GET/api/v2/item-attribute/List item attributes
Parameters
NameInRequiredType
limitquerynointeger
offsetquerynointeger
qquerynostring
Responses
StatusDescriptionSchema
200PaginatedItemAttributeSummaryList
GET/api/v2/item-attribute/{id}/Get item attribute
Parameters
NameInRequiredType
idpathyesstring
Responses
StatusDescriptionSchema
200ItemAttributeDetail
GET/api/v2/item-category/List item categories
Parameters
NameInRequiredType
limitquerynointeger
offsetquerynointeger
qquerynostring
Responses
StatusDescriptionSchema
200PaginatedItemCategorySummaryList
GET/api/v2/item-category/{id}/Get item category
Parameters
NameInRequiredType
idpathyesstring
Responses
StatusDescriptionSchema
200ItemCategoryDetail
GET/api/v2/item-fling-effect/List item fling effects
Parameters
NameInRequiredType
limitquerynointeger
offsetquerynointeger
qquerynostring
Responses
StatusDescriptionSchema
200PaginatedItemFlingEffectSummaryList
GET/api/v2/item-fling-effect/{id}/Get item fling effect
Parameters
NameInRequiredType
idpathyesstring
Responses
StatusDescriptionSchema
200ItemFlingEffectDetail
GET/api/v2/item-pocket/List item pockets
Parameters
NameInRequiredType
limitquerynointeger
offsetquerynointeger
qquerynostring
Responses
StatusDescriptionSchema
200PaginatedItemPocketSummaryList
GET/api/v2/item-pocket/{id}/Get item pocket
Parameters
NameInRequiredType
idpathyesstring
Responses
StatusDescriptionSchema
200ItemPocketDetail
GET/api/v2/item/List items
Parameters
NameInRequiredType
limitquerynointeger
offsetquerynointeger
qquerynostring
Responses
StatusDescriptionSchema
200PaginatedItemSummaryList
GET/api/v2/item/{id}/Get item
Parameters
NameInRequiredType
idpathyesstring
Responses
StatusDescriptionSchema
200ItemDetail
machines2

Machines are the representation of items that teach moves to Pokémon. They vary from version to version, so it is not certain that one specific TM or HM corresponds to a single Machine.

GET/api/v2/machine/List machines
Parameters
NameInRequiredType
limitquerynointeger
offsetquerynointeger
qquerynostring
Responses
StatusDescriptionSchema
200PaginatedMachineSummaryList
GET/api/v2/machine/{id}/Get machine
Parameters
NameInRequiredType
idpathyesstring
Responses
StatusDescriptionSchema
200MachineDetail
location8

Locations that can be visited within the games. Locations make up sizable portions of regions, like cities or routes.

GET/api/v2/location-area/List location areas
Parameters
NameInRequiredType
limitquerynointeger
offsetquerynointeger
Responses
StatusDescriptionSchema
200PaginatedLocationAreaSummaryList
GET/api/v2/location-area/{id}/Get location area
Parameters
NameInRequiredType
idpathyesinteger
Responses
StatusDescriptionSchema
200LocationAreaDetail
GET/api/v2/location/List locations
Parameters
NameInRequiredType
limitquerynointeger
offsetquerynointeger
qquerynostring
Responses
StatusDescriptionSchema
200PaginatedLocationSummaryList
GET/api/v2/location/{id}/Get location
Parameters
NameInRequiredType
idpathyesstring
Responses
StatusDescriptionSchema
200LocationDetail
GET/api/v2/pal-park-area/List pal park areas
Parameters
NameInRequiredType
limitquerynointeger
offsetquerynointeger
qquerynostring
Responses
StatusDescriptionSchema
200PaginatedPalParkAreaSummaryList
GET/api/v2/pal-park-area/{id}/Get pal park area
Parameters
NameInRequiredType
idpathyesstring
Responses
StatusDescriptionSchema
200PalParkAreaDetail
GET/api/v2/region/List regions
Parameters
NameInRequiredType
limitquerynointeger
offsetquerynointeger
qquerynostring
Responses
StatusDescriptionSchema
200PaginatedRegionSummaryList
GET/api/v2/region/{id}/Get region
Parameters
NameInRequiredType
idpathyesstring
Responses
StatusDescriptionSchema
200RegionDetail
moves12

Moves are the skills of Pokémon in battle. In battle, a Pokémon uses one move each turn. Some moves (including those learned by Hidden Machine) can be used outside of battle as well, usually for the purpose of removing obstacles or exploring new areas.

GET/api/v2/move-ailment/List move meta ailments
Parameters
NameInRequiredType
limitquerynointeger
offsetquerynointeger
qquerynostring
Responses
StatusDescriptionSchema
200PaginatedMoveMetaAilmentSummaryList
GET/api/v2/move-ailment/{id}/Get move meta ailment
Parameters
NameInRequiredType
idpathyesstring
Responses
StatusDescriptionSchema
200MoveMetaAilmentDetail
GET/api/v2/move-battle-style/List move battle styles
Parameters
NameInRequiredType
limitquerynointeger
offsetquerynointeger
qquerynostring
Responses
StatusDescriptionSchema
200PaginatedMoveBattleStyleSummaryList
GET/api/v2/move-battle-style/{id}/Get move battle style
Parameters
NameInRequiredType
idpathyesstring
Responses
StatusDescriptionSchema
200MoveBattleStyleDetail
GET/api/v2/move-category/List move meta categories
Parameters
NameInRequiredType
limitquerynointeger
offsetquerynointeger
qquerynostring
Responses
StatusDescriptionSchema
200PaginatedMoveMetaCategorySummaryList
GET/api/v2/move-category/{id}/Get move meta category
Parameters
NameInRequiredType
idpathyesstring
Responses
StatusDescriptionSchema
200MoveMetaCategoryDetail
GET/api/v2/move-learn-method/List move learn methods
Parameters
NameInRequiredType
limitquerynointeger
offsetquerynointeger
qquerynostring
Responses
StatusDescriptionSchema
200PaginatedMoveLearnMethodSummaryList
GET/api/v2/move-learn-method/{id}/Get move learn method
Parameters
NameInRequiredType
idpathyesstring
Responses
StatusDescriptionSchema
200MoveLearnMethodDetail
GET/api/v2/move-target/List move targets
Parameters
NameInRequiredType
limitquerynointeger
offsetquerynointeger
qquerynostring
Responses
StatusDescriptionSchema
200PaginatedMoveTargetSummaryList
GET/api/v2/move-target/{id}/Get move target
Parameters
NameInRequiredType
idpathyesstring
Responses
StatusDescriptionSchema
200MoveTargetDetail
GET/api/v2/move/List moves
Parameters
NameInRequiredType
limitquerynointeger
offsetquerynointeger
qquerynostring
Responses
StatusDescriptionSchema
200PaginatedMoveSummaryList
GET/api/v2/move/{id}/Get move
Parameters
NameInRequiredType
idpathyesstring
Responses
StatusDescriptionSchema
200MoveDetail
encounters7
GET/api/v2/encounter-condition-value/List encounter condition values
Parameters
NameInRequiredType
limitquerynointeger
offsetquerynointeger
qquerynostring
Responses
StatusDescriptionSchema
200PaginatedEncounterConditionValueSummaryList
GET/api/v2/encounter-condition-value/{id}/Get encounter condition value
Parameters
NameInRequiredType
idpathyesstring
Responses
StatusDescriptionSchema
200EncounterConditionValueDetail
GET/api/v2/encounter-condition/List encounter conditions
Parameters
NameInRequiredType
limitquerynointeger
offsetquerynointeger
qquerynostring
Responses
StatusDescriptionSchema
200PaginatedEncounterConditionSummaryList
GET/api/v2/encounter-condition/{id}/Get encounter condition
Parameters
NameInRequiredType
idpathyesstring
Responses
StatusDescriptionSchema
200EncounterConditionDetail
GET/api/v2/encounter-method/List encounter methods
Parameters
NameInRequiredType
limitquerynointeger
offsetquerynointeger
qquerynostring
Responses
StatusDescriptionSchema
200PaginatedEncounterMethodSummaryList
GET/api/v2/encounter-method/{id}/Get encounter method
Parameters
NameInRequiredType
idpathyesstring
Responses
StatusDescriptionSchema
200EncounterMethodDetail
GET/api/v2/pokemon/{pokemon_id}/encountersGet pokemon encounter
Parameters
NameInRequiredType
pokemon_idpathyesstring
Responses
StatusDescriptionSchema
200
games8

The Pokémon games are all video games in the Pokémon franchise.

GET/api/v2/generation/List genrations
Parameters
NameInRequiredType
limitquerynointeger
offsetquerynointeger
qquerynostring
Responses
StatusDescriptionSchema
200PaginatedGenerationSummaryList
GET/api/v2/generation/{id}/Get genration
Parameters
NameInRequiredType
idpathyesstring
Responses
StatusDescriptionSchema
200GenerationDetail
GET/api/v2/pokedex/List pokedex
Parameters
NameInRequiredType
limitquerynointeger
offsetquerynointeger
qquerynostring
Responses
StatusDescriptionSchema
200PaginatedPokedexSummaryList
GET/api/v2/pokedex/{id}/Get pokedex
Parameters
NameInRequiredType
idpathyesstring
Responses
StatusDescriptionSchema
200PokedexDetail
GET/api/v2/version-group/List version groups
Parameters
NameInRequiredType
limitquerynointeger
offsetquerynointeger
qquerynostring
Responses
StatusDescriptionSchema
200PaginatedVersionGroupSummaryList
GET/api/v2/version-group/{id}/Get version group
Parameters
NameInRequiredType
idpathyesstring
Responses
StatusDescriptionSchema
200VersionGroupDetail
GET/api/v2/version/List versions
Parameters
NameInRequiredType
limitquerynointeger
offsetquerynointeger
qquerynostring
Responses
StatusDescriptionSchema
200PaginatedVersionSummaryList
GET/api/v2/version/{id}/Get version
Parameters
NameInRequiredType
idpathyesstring
Responses
StatusDescriptionSchema
200VersionDetail
utility3
GET/api/v2/language/List languages
Parameters
NameInRequiredType
limitquerynointeger
offsetquerynointeger
qquerynostring
Responses
StatusDescriptionSchema
200PaginatedLanguageSummaryList
GET/api/v2/language/{id}/Get language
Parameters
NameInRequiredType
idpathyesstring
Responses
StatusDescriptionSchema
200LanguageDetail
GET/api/v2/meta/Get API metadata
Responses
StatusDescriptionSchema
200
contests6
GET/api/v2/contest-effect/List contest effects
Parameters
NameInRequiredType
limitquerynointeger
offsetquerynointeger
qquerynostring
Responses
StatusDescriptionSchema
200PaginatedContestEffectSummaryList
GET/api/v2/contest-effect/{id}/Get contest effect
Parameters
NameInRequiredType
idpathyesstring
Responses
StatusDescriptionSchema
200ContestEffectDetail
GET/api/v2/contest-type/List contest types
Parameters
NameInRequiredType
limitquerynointeger
offsetquerynointeger
qquerynostring
Responses
StatusDescriptionSchema
200PaginatedContestTypeSummaryList
GET/api/v2/contest-type/{id}/Get contest type
Parameters
NameInRequiredType
idpathyesstring
Responses
StatusDescriptionSchema
200ContestTypeDetail
GET/api/v2/super-contest-effect/List super contest effects
Parameters
NameInRequiredType
limitquerynointeger
offsetquerynointeger
qquerynostring
Responses
StatusDescriptionSchema
200PaginatedSuperContestEffectSummaryList
GET/api/v2/super-contest-effect/{id}/Get super contest effect
Parameters
NameInRequiredType
idpathyesstring
Responses
StatusDescriptionSchema
200SuperContestEffectDetail

Try it

Developer reference

Base URLhttps://pokeapi.co
Rate limit

No hard limit — fair-use policy, cache responses locally

Key endpoints
  • GET/api/v2/pokemon/{id}/
  • GET/api/v2/type/{id}/