Walt Disney Characters API

Disney character data including films, TV shows, and park attractions

OpenAPI Specification

walt-disney-characters-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Disney Characters API
  description: The Disney Characters API provides REST and GraphQL interfaces to a comprehensive database of Disney characters across films, TV shows, video games, and park attractions. The API covers 9,820+ Disney characters from all Disney brands including Walt Disney Animation, Pixar, Marvel, Star Wars, and National Geographic. No authentication is required for read access.
  version: 1.0.0
  contact:
    name: Disney API
    url: https://disneyapi.dev/
  license:
    name: MIT
    url: https://github.com/ManuCastrillonM/disney-api/blob/main/LICENSE
servers:
- url: https://api.disneyapi.dev
  description: Disney Characters API Production
tags:
- name: Characters
  description: Disney character data including films, TV shows, and park attractions
paths:
  /character:
    get:
      operationId: listCharacters
      summary: List All Characters
      description: Retrieve a paginated list of all Disney characters. Each character includes associated films, short films, TV shows, video games, park attractions, and character alignment.
      tags:
      - Characters
      parameters:
      - name: page
        in: query
        required: false
        schema:
          type: integer
          default: 1
          minimum: 1
        description: Page number for pagination
      - name: pageSize
        in: query
        required: false
        schema:
          type: integer
          default: 50
          minimum: 1
          maximum: 200
        description: Number of characters per page
      responses:
        '200':
          description: Paginated list of Disney characters
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CharacterListResponse'
        '400':
          description: Invalid request parameters
        '429':
          description: Too many requests - rate limit exceeded
  /character/{id}:
    get:
      operationId: getCharacterById
      summary: Get Character by ID
      description: Retrieve a specific Disney character by their unique identifier. Returns full character details including all associated media properties.
      tags:
      - Characters
      parameters:
      - name: id
        in: path
        required: true
        schema:
          type: integer
        description: Unique identifier of the Disney character
      responses:
        '200':
          description: Disney character details
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CharacterResponse'
        '404':
          description: Character not found
        '429':
          description: Too many requests
components:
  schemas:
    PaginationInfo:
      type: object
      properties:
        totalPages:
          type: integer
          description: Total number of pages available
        count:
          type: integer
          description: Total number of characters matching the query
        previousPage:
          type: string
          nullable: true
          description: URL for the previous page of results
        nextPage:
          type: string
          nullable: true
          description: URL for the next page of results
    CharacterResponse:
      type: object
      properties:
        info:
          $ref: '#/components/schemas/PaginationInfo'
        data:
          $ref: '#/components/schemas/Character'
    CharacterListResponse:
      type: object
      properties:
        info:
          $ref: '#/components/schemas/PaginationInfo'
        data:
          type: array
          items:
            $ref: '#/components/schemas/Character'
    Character:
      type: object
      description: A Disney character with all associated media appearances
      properties:
        _id:
          type: integer
          description: Unique character identifier
        url:
          type: string
          format: uri
          description: URL to the character's detail page
        name:
          type: string
          description: Character name
        sourceUrl:
          type: string
          format: uri
          description: Source URL for character data
        films:
          type: array
          items:
            type: string
          description: List of Disney films featuring this character
        shortFilms:
          type: array
          items:
            type: string
          description: List of Disney short films featuring this character
        tvShows:
          type: array
          items:
            type: string
          description: List of TV shows featuring this character
        videoGames:
          type: array
          items:
            type: string
          description: List of video games featuring this character
        parkAttractions:
          type: array
          items:
            type: string
          description: List of Disney park attractions featuring this character
        allies:
          type: array
          items:
            type: string
          description: List of allied characters
        enemies:
          type: array
          items:
            type: string
          description: List of enemy characters
        alignment:
          type: string
          description: Character alignment (Hero, Villain, etc.)
        imageUrl:
          type: string
          format: uri
          description: URL to the character's image
      required:
      - _id
      - name
externalDocs:
  description: Disney API Documentation
  url: https://disneyapi.dev/docs/