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/