> ## Documentation Index
> Fetch the complete documentation index at: https://restcountries.francocarballar.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Obtener Todos los Países

> Recupera una lista de todos los países, con opciones para filtrar, ordenar y aplanar (flatten).



## OpenAPI

````yaml docs/es/openapi.yaml get /api/v1/all
openapi: 3.0.3
info:
  title: REST Countries API (Hono)
  description: >-
    API para obtener información sobre países del mundo, construida con Hono y
    desplegada en Cloudflare Workers.
  version: 1.0.0
servers:
  - url: http://localhost:8787
    description: Servidor de desarrollo local
  - url: https://restcountries.mcp-blockchain-metadata.workers.dev
    description: Servidor de producción (Cloudflare Workers)
security: []
paths:
  /api/v1/all:
    get:
      tags:
        - Countries (Países)
      summary: Obtener Todos los Países
      description: >-
        Recupera una lista de todos los países, con opciones para filtrar,
        ordenar y aplanar (flatten).
      parameters:
        - $ref: '#/components/parameters/FieldsQueryParam'
        - $ref: '#/components/parameters/SortQueryParam'
        - $ref: '#/components/parameters/FlattenQueryParam'
      responses:
        '200':
          description: >-
            Un array de países. La estructura depende de los parámetros de
            consulta.
          content:
            application/json:
              schema:
                type: array
                items:
                  oneOf:
                    - type: object
                    - type: string
                    - type: number
                    - type: boolean
              example:
                - name:
                    common: Spain
                  population: 47351567
                - name:
                    common: France
                  population: 65273511
        '400':
          $ref: '#/components/responses/BadRequest'
        '500':
          $ref: '#/components/responses/InternalServerError'
components:
  parameters:
    FieldsQueryParam:
      name: fields
      in: query
      required: false
      description: >-
        Lista separada por comas de campos a incluir (p. ej.,
        `name.common,capital`).
      schema:
        type: string
    SortQueryParam:
      name: sort
      in: query
      required: false
      description: >-
        Lista separada por comas de campos por los cuales ordenar (prefijo con
        `-` para descendente, p. ej., `-population`).
      schema:
        type: string
    FlattenQueryParam:
      name: flatten
      in: query
      required: false
      description: >-
        Si es true y solo se solicita un campo, devuelve un array plano de
        valores.
      schema:
        type: boolean
  responses:
    BadRequest:
      description: Bad Request - Parámetros de entrada inválidos.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
          example:
            error:
              status: 400
              message: 'Parámetro de consulta inválido: ...'
    InternalServerError:
      description: Internal Server Error - Ocurrió un error inesperado.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
          example:
            error:
              status: 500
              message: Ocurrió un error interno del servidor.
  schemas:
    ErrorResponse:
      type: object
      properties:
        error:
          type: object
          properties:
            status:
              type: integer
              format: int32
              description: El código de estado HTTP.
            message:
              type: string
              description: Un mensaje de error legible por humanos.

````