DiscGolfAPI Regions API

Region, state and subdivision coverage index.

Documentation

Specifications

Schemas & Data

Other Resources

OpenAPI Specification

discgolfapi-regions-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: DiscGolf Countries Regions API
  version: 1.0.0
  description: DiscGolfAPI is a read-only API for structured disc golf course data. It provides stable course records, location fields, country and region indexes, update metadata, confidence signals and attribution information for developer projects, maps, directories, websites and AI systems.
  termsOfService: https://discgolfapi.com/terms/
  contact:
    name: DiscGolfAPI
    url: https://discgolfapi.com/contact/
  license:
    name: Free to use with attribution
    url: https://discgolfapi.com/licence/
servers:
- url: https://io.discgolfapi.com/v1
  description: Production API
tags:
- name: Regions
  description: Region, state and subdivision coverage index.
paths:
  /regions:
    get:
      tags:
      - Regions
      summary: List Regions
      description: Returns regions, states and subdivisions represented in the current public dataset where region codes are available.
      operationId: listRegions
      responses:
        '200':
          description: A region coverage response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/RegionsResponse'
        '429':
          $ref: '#/components/responses/TooManyRequests'
        '500':
          $ref: '#/components/responses/ServerError'
components:
  schemas:
    Region:
      type: object
      properties:
        country_code:
          type: string
        region_code:
          type: string
        region_name:
          type: string
        course_count:
          type: integer
          minimum: 0
        updated_at:
          type: string
          format: date-time
      required:
      - country_code
      - region_code
      - region_name
      - course_count
      - updated_at
    CommonEnvelope:
      type: object
      properties:
        schema_version:
          type: string
        generated_at:
          type: string
          format: date-time
        attribution:
          type: string
        attribution_required:
          type: boolean
        license:
          type: string
        license_url:
          type: string
          format: uri
        terms_url:
          type: string
          format: uri
        no_warranty:
          type: string
        meta:
          $ref: '#/components/schemas/ResponseMeta'
      required:
      - schema_version
      - generated_at
      - attribution
      - attribution_required
      - license
      - license_url
      - terms_url
      - no_warranty
    ErrorResponse:
      type: object
      properties:
        error:
          type: string
      required:
      - error
      additionalProperties: true
    RegionsResponse:
      allOf:
      - $ref: '#/components/schemas/CommonEnvelope'
      - type: object
        properties:
          regions:
            type: array
            items:
              $ref: '#/components/schemas/Region'
        required:
        - regions
    ResponseMeta:
      type: object
      properties:
        publish_version:
          type: string
        release_scope:
          type: string
      additionalProperties: true
  responses:
    ServerError:
      description: Temporary server error.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
    TooManyRequests:
      description: Too many requests.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
externalDocs:
  description: DiscGolfAPI documentation
  url: https://discgolfapi.com/docs/