---
title: "Get evolution chain"
method: GET
path: "/api/v2/evolution-chain/{id}/"
tags: ["evolution"]
---

# Get evolution chain

`GET /api/v2/evolution-chain/{id}/`

Evolution chains are essentially family trees. They start with the lowest stage within a family and detail evolution conditions for each as well as Pokémon they can evolve into up through the hierarchy.

## Path parameters

- `id` string, required

## Response `200`

- EvolutionChainDetail
  - `id` integer, required
  - `baby_trigger_item` ItemSummary, required
    - `name` string, required
    - `url` string, uri, required
  - `chain` object, required
    - `evolution_details` unknown[], required
      - unknown
    - `evolves_to` object[], required
      - `evolution_details` object[], required
        - `gender` object, nullable, required
          - `name` string, required
          - `url` string, uri, required
        - `held_item` object, nullable, required
          - `name` string, required
          - `url` string, uri, required
        - `item` object, nullable, required
          - `name` string, required
          - `url` string, uri, required
        - `known_move` unknown, required
        - `known_move_type` unknown, required
        - `location` object, nullable, required
          - `name` string, required
          - `url` string, uri, required
        - `min_affection` integer, nullable, required
        - `min_beauty` integer, nullable, required
        - `min_damage_taken` integer, nullable, required
        - `min_happiness` integer, nullable, required
        - `min_level` integer, nullable, required
        - `min_move_count` integer, nullable, required
        - `min_steps` integer, nullable, required
        - `needs_multiplayer` boolean, nullable, required
        - `needs_overworld_rain` boolean, nullable, required
        - `party_species` string, nullable, required
        - `party_type` string, nullable, required
        - `relative_physical_stats` string, nullable, required
        - `time_of_day` string, required
        - `trade_species` string, nullable, required
        - `trigger` object, required
          - `name` string, required
          - `url` string, uri, required
        - `turn_upside_down` boolean, required
        - `used_move` unknown, required
        - `region` object, nullable, required
          - `name` string, required
          - `url` string, uri, required
        - `base_form` object, nullable, required
          - `name` string, required
          - `url` string, uri, required
      - `is_baby` boolean, required
      - `species` object, required
        - `name` string, required
        - `url` string, uri, required
    - `is_baby` boolean, required
    - `species` object, required
      - `name` string, required
      - `url` string, uri, required

## Changes

- **2026-04-29** `650bc9dd2efe` — 1 info
  - api operation id `api_v2_evolution_chain_retrieve` removed and replaced with `evolution_chain_retrieve`
- **2026-04-19** `a5451fda70cf` — 2 breaking, 2 info
  - removed the required property `chain/evolves_to/items/evolution_details/items/base_form_id` from the response with the `200` status
  - removed the required property `chain/evolves_to/items/evolution_details/items/region_id` from the response with the `200` status
  - added the required property `chain/evolves_to/items/evolution_details/items/base_form` to the response with the `200` status
  - added the required property `chain/evolves_to/items/evolution_details/items/region` to the response with the `200` status
- **2025-12-31** `e4e347f06f84` — 7 info
  - added the required property `chain/evolves_to/items/evolution_details/items/base_form_id` to the response with the `200` status
  - added the required property `chain/evolves_to/items/evolution_details/items/min_damage_taken` to the response with the `200` status
  - added the required property `chain/evolves_to/items/evolution_details/items/min_move_count` to the response with the `200` status
  - added the required property `chain/evolves_to/items/evolution_details/items/min_steps` to the response with the `200` status
  - …3 more
- **2025-05-30** `663217b1c9e4` — 1 info
  - api operation id `evolution_chain_retrieve` removed and replaced with `api_v2_evolution_chain_retrieve`
- …earlier changes not shown

[Full history](https://skmtc.dev/pokeapi/apis/poke-api/changes/api/v2/evolution-chain/:id/get.md)

---

[API](https://skmtc.dev/pokeapi/apis/poke-api.md) · [All operations](https://skmtc.dev/pokeapi/apis/poke-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/pokeapi/poke-api/revisions/650bc9dd2efe/schema)
