swagger: "2.0"
schemes:
  - https
host: api.mon-voyage-pas-cher.com
info:
  title: Mon-voyage-pas-cher.com Public API
  version: 0.0.1
  x-apisguru-categories:
    - transport
  x-origin:
    - format: swagger
      url: https://www.mon-voyage-pas-cher.com/assets/documentation/swagger.yaml
      version: "2.0"
  x-providerName: mon-voyage-pas-cher.com
consumes:
  - application/json
produces:
  - application/json
securityDefinitions:
  x-api-key:
    in: header
    name: x-api-key
    type: apiKey
paths:
  /airports:
    get:
      description: This webservice is providing you the ability to retrieve a list of airports matching your search criterias.<br />The 3 mains search criterias are<br />- by country code, this will list all airports for a given country.<br />- by latitude/longitude with a radius in km. You can actually combine those 2 criterias, and search for example the closest airport in the USA of Vancoucer, Canada.<br />- The last way to use the API is by searching directly with a IATA CODE in the location parameter, this will only return one result in the array of data results
      operationId: getAirport
      parameters:
        - description: the language code of the language you want the content to be returned
          enum:
            - en
            - fr
            - de
            - es
          in: query
          name: language
          required: true
          type: string
        - description: The location you want to search for. Either a latitude/longitude point or a letter airport IATA CODE ( ex. LHR ) if you want the detail for only one single airport.
          in: query
          name: location
          pattern: ^[A-Za-z]{3}$|^(\-?\d+(\.\d+)?),\s*(\-?\d+(\.\d+)?)$
          required: false
          type: string
        - default: 100
          description: Radius in km for a lat/long search, will be ignore if a IATA is passed in location parameter code is passed
          in: query
          maximum: 500
          name: radius
          required: false
          type: integer
        - description: Filter - The country ISO code 2 letters, provided by the GET /countries. If passed the results will be filtered to this country only, regardless if you passed a lat/long and a large radius
          in: query
          name: countrycode
          pattern: ^[A-Za-z]{2}$
          required: false
          type: string
        - description: Filter the results to only the top and large airports airports.
          in: query
          name: top_airports
          required: false
          type: boolean
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/AirportsSearchResponse"
        "500":
          description: The error message object
          schema:
            $ref: "#/definitions/ErrorResponse"
      security:
        - x-api-key: []
      summary: Search airports by country / Search nearby airports / Search an airport
      tags:
        - Geography APIs
      x-amazon-apigateway-integration:
        httpMethod: POST
        type: aws_proxy
        uri: ${lambda_handler_invoke_arn}
    options:
      consumes:
        - application/json
      description: |
        Enable CORS by returning correct headers
      produces:
        - application/json
      responses:
        "200":
          description: Default response for CORS method
          headers:
            Access-Control-Allow-Headers:
              type: string
            Access-Control-Allow-Methods:
              type: string
            Access-Control-Allow-Origin:
              type: string
      summary: CORS support
      x-amazon-apigateway-integration:
        requestTemplates:
          application/json: |
            {
              "statusCode" : 200
            }
        responses:
          default:
            responseParameters:
              method.response.header.Access-Control-Allow-Headers: "'Content-Type,X-Amz-Date,Authorization,X-Api-Key'"
              method.response.header.Access-Control-Allow-Methods: "'*'"
              method.response.header.Access-Control-Allow-Origin: "'*'"
            responseTemplates:
              application/json: |
                {}
            statusCode: "200"
        type: mock
    x-swagger-router-controller: airports
  /cities/findcitiesfromlatlong:
    get:
      description: Search cities according to given criterias. Either lat/long + radius or country code. A limit can be given but cannot exceed 50 results.<br /> A significant city will be defined according to the pourcent of population within a country.
      operationId: getCities
      parameters:
        - description: the language code of the language you want the content to be returned
          enum:
            - en
            - fr
            - de
            - es
          in: query
          name: language
          required: true
          type: string
        - description: if you want to limit the result to one country
          in: query
          name: countrycode
          pattern: ^[A-Za-z]{2}$
          required: false
          type: string
        - description: The Lat/Long of the location your are seeking cities ( ex. 45.4478988,3.23456)
          in: query
          name: location
          pattern: ^(\-?\d+(\.\d+)?),\s*(\-?\d+(\.\d+)?)$
          required: false
          type: string
        - default: 20
          description: Radius in km for a lat/long search. Default is 20km and there is no maximum, but need to be combined with limit. code is passed
          in: query
          maximum: 200
          name: radius
          required: false
          type: integer
        - default: 20
          description: Limit of the result. Default is 20 rows, and maximum is 50.
          in: query
          maximum: 50
          minimum: 1
          name: limit
          required: false
          type: integer
        - default: 0
          description: offset of the result set
          in: query
          minimum: 0
          name: offset
          required: false
          type: integer
        - default: distance,asc
          description: The order you want the result ordered. Default is population while when entering a lat/long, you can order the results by distance from requested lat/long point
          enum:
            - distance,desc
            - distance,asc
            - population,desc
            - population,asc
            - elevation,desc
            - elevation,asc
            - name,desc
            - name,asc
            - timezone,asc
            - timezone,desc
          in: query
          name: sort
          required: true
          type: string
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/CitiesResponse"
        "500":
          description: The error message object
          schema:
            $ref: "#/definitions/ErrorResponse"
      security:
        - x-api-key: []
      summary: Search all cities from lat/long or countrycode
      tags:
        - Geography APIs
      x-amazon-apigateway-integration:
        httpMethod: POST
        type: aws_proxy
        uri: ${lambda_handler_invoke_arn}
    options:
      consumes:
        - application/json
      description: |
        Enable CORS by returning correct headers
      produces:
        - application/json
      responses:
        "200":
          description: Default response for CORS method
          headers:
            Access-Control-Allow-Headers:
              type: string
            Access-Control-Allow-Methods:
              type: string
            Access-Control-Allow-Origin:
              type: string
      summary: CORS support
      x-amazon-apigateway-integration:
        requestTemplates:
          application/json: |
            {
              "statusCode" : 200
            }
        responses:
          default:
            responseParameters:
              method.response.header.Access-Control-Allow-Headers: "'Content-Type,X-Amz-Date,Authorization,X-Api-Key'"
              method.response.header.Access-Control-Allow-Methods: "'*'"
              method.response.header.Access-Control-Allow-Origin: "'*'"
            responseTemplates:
              application/json: |
                {}
            statusCode: "200"
        type: mock
    x-swagger-router-controller: cities
  /cities/findcitiesfromtext:
    get:
      description: Search cities from a string parameters.
      operationId: getAutocomplete
      parameters:
        - description: the string you want to search
          in: query
          minLength: 3
          name: q
          required: true
          type: string
        - description: the language code of the language you want the content to be returned
          enum:
            - en
            - fr
            - de
            - es
          in: query
          name: language
          required: true
          type: string
        - description: if you want to limit the result to one country
          in: query
          name: countrycode
          pattern: ^[A-Za-z]{2}$
          required: false
          type: string
        - default: population,desc
          description: The order you want the result ordered. Default is population while when entering a lat/long, you can order the results by distance from requested lat/long point
          enum:
            - population,desc
            - population,asc
            - elevation,desc
            - elevation,asc
            - name,desc
            - name,asc
            - timezone,asc
            - timezone,desc
            - match_score,desc
            - match_score,asc
          in: query
          name: sort
          required: true
          type: string
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/CitiesResponse"
        "500":
          description: The error message object
          schema:
            $ref: "#/definitions/ErrorResponse"
      security:
        - x-api-key: []
      summary: Retrieve cities informations from a string / build an autocomplete
      tags:
        - Geography APIs
      x-amazon-apigateway-integration:
        httpMethod: POST
        type: aws_proxy
        uri: ${lambda_handler_invoke_arn}
    options:
      consumes:
        - application/json
      description: |
        Enable CORS by returning correct headers
      produces:
        - application/json
      responses:
        "200":
          description: Default response for CORS method
          headers:
            Access-Control-Allow-Headers:
              type: string
            Access-Control-Allow-Methods:
              type: string
            Access-Control-Allow-Origin:
              type: string
      summary: CORS support
      x-amazon-apigateway-integration:
        requestTemplates:
          application/json: |
            {
              "statusCode" : 200
            }
        responses:
          default:
            responseParameters:
              method.response.header.Access-Control-Allow-Headers: "'Content-Type,X-Amz-Date,Authorization,X-Api-Key'"
              method.response.header.Access-Control-Allow-Methods: "'*'"
              method.response.header.Access-Control-Allow-Origin: "'*'"
            responseTemplates:
              application/json: |
                {}
            statusCode: "200"
        type: mock
    x-swagger-router-controller: cities
  /cities/significant:
    get:
      description: Search cities according to given criterias. Either lat/long + radius or country code. A limit can be given but cannot exceed 50 results.<br /> A significant city will be defined according to the pourcent of population within a country.
      operationId: getSignificantCities
      parameters:
        - description: the language code of the language you want the content to be returned
          enum:
            - en
            - fr
            - de
            - es
          in: query
          name: language
          required: true
          type: string
        - default: 0.5
          description: The pourcent of population the cities need to be in order to appear in results
          in: query
          maximum: 5
          minimum: 0.05
          name: pourcent
          required: false
          type: number
        - description: if you want to limit the result to one country
          in: query
          name: countrycode
          pattern: ^[A-Za-z]{2}$
          required: false
          type: string
        - description: The Lat/Long of the location your are seeking cities ( ex. 45.4478988,3.23456)
          in: query
          name: location
          pattern: ^(\-?\d+(\.\d+)?),\s*(\-?\d+(\.\d+)?)$
          required: false
          type: string
        - default: 20
          description: Radius in km for a lat/long search. Default is 20km and there is no maximum, but need to be combined with limit. code is passed
          in: query
          maximum: 200
          name: radius
          required: false
          type: integer
        - default: 20
          description: Limit of the result. Default is 20 rows, and maximum is 50.
          in: query
          maximum: 50
          minimum: 1
          name: limit
          required: false
          type: integer
        - default: 0
          description: offset of the result set
          in: query
          minimum: 0
          name: offset
          required: false
          type: integer
        - default: population,desc
          description: The order you want the result ordered. Default is population while when entering a lat/long, you can order the results by distance from requested lat/long point
          enum:
            - distance,desc
            - distance,asc
            - population,desc
            - population,asc
            - elevation,desc
            - elevation,asc
            - name,desc
            - name,asc
            - timezone,asc
            - timezone,desc
          in: query
          name: sort
          required: true
          type: string
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/CitiesResponse"
        "500":
          description: The error message object
          schema:
            $ref: "#/definitions/ErrorResponse"
      security:
        - x-api-key: []
      summary: Search significant cities from lat/long or countrycode
      tags:
        - Geography APIs
      x-amazon-apigateway-integration:
        httpMethod: POST
        type: aws_proxy
        uri: ${lambda_handler_invoke_arn}
    options:
      consumes:
        - application/json
      description: |
        Enable CORS by returning correct headers
      produces:
        - application/json
      responses:
        "200":
          description: Default response for CORS method
          headers:
            Access-Control-Allow-Headers:
              type: string
            Access-Control-Allow-Methods:
              type: string
            Access-Control-Allow-Origin:
              type: string
      summary: CORS support
      x-amazon-apigateway-integration:
        requestTemplates:
          application/json: |
            {
              "statusCode" : 200
            }
        responses:
          default:
            responseParameters:
              method.response.header.Access-Control-Allow-Headers: "'Content-Type,X-Amz-Date,Authorization,X-Api-Key'"
              method.response.header.Access-Control-Allow-Methods: "'*'"
              method.response.header.Access-Control-Allow-Origin: "'*'"
            responseTemplates:
              application/json: |
                {}
            statusCode: "200"
        type: mock
    x-swagger-router-controller: cities
  /continents:
    get:
      description: This webservice is providing you the ability to retrieve all informations about continents
      operationId: getContinents
      parameters:
        - description: The language code of the language you want the content to be returned
          enum:
            - en
            - fr
            - de
            - es
          in: query
          name: language
          required: true
          type: string
        - description: The code of the continent you want to retrieve, this parameter is not required if you want ot retrieve all continents at once
          in: query
          name: continentcode
          required: false
          type: string
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/ContinentsResponse"
        "500":
          description: The error message object
          schema:
            $ref: "#/definitions/ErrorResponse"
      security:
        - x-api-key: []
      summary: Search all continents or one specific continent
      tags:
        - Geography APIs
      x-amazon-apigateway-integration:
        httpMethod: POST
        type: aws_proxy
        uri: ${lambda_handler_invoke_arn}
    options:
      consumes:
        - application/json
      description: |
        Enable CORS by returning correct headers
      produces:
        - application/json
      responses:
        "200":
          description: Default response for CORS method
          headers:
            Access-Control-Allow-Headers:
              type: string
            Access-Control-Allow-Methods:
              type: string
            Access-Control-Allow-Origin:
              type: string
      summary: CORS support
      x-amazon-apigateway-integration:
        requestTemplates:
          application/json: |
            {
              "statusCode" : 200
            }
        responses:
          default:
            responseParameters:
              method.response.header.Access-Control-Allow-Headers: "'Content-Type,X-Amz-Date,Authorization,X-Api-Key'"
              method.response.header.Access-Control-Allow-Methods: "'*'"
              method.response.header.Access-Control-Allow-Origin: "'*'"
            responseTemplates:
              application/json: |
                {}
            statusCode: "200"
        type: mock
    x-swagger-router-controller: continents
  /countries:
    get:
      description: This webservice is providing you the ability to retrieve a list of countries matching your search criterias.<br />The 2 mains ways to search use this API are<br />- by countrycode, it will only returns you one country<br />- without the countrycode parameter which will return the full list of countries
      operationId: getCountries
      parameters:
        - description: the language code of the language you want the content to be returned
          enum:
            - en
            - fr
            - de
            - es
          in: query
          name: language
          required: true
          type: string
        - description: The code of the country you want to retrieve
          in: query
          name: countrycode
          required: false
          type: string
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/CountriesResponse"
        "500":
          description: The error message object
          schema:
            $ref: "#/definitions/ErrorResponse"
      security:
        - x-api-key: []
      summary: Search all countries or one specific country
      tags:
        - Geography APIs
      x-amazon-apigateway-integration:
        httpMethod: POST
        type: aws_proxy
        uri: ${lambda_handler_invoke_arn}
    options:
      consumes:
        - application/json
      description: |
        Enable CORS by returning correct headers
      produces:
        - application/json
      responses:
        "200":
          description: Default response for CORS method
          headers:
            Access-Control-Allow-Headers:
              type: string
            Access-Control-Allow-Methods:
              type: string
            Access-Control-Allow-Origin:
              type: string
      summary: CORS support
      x-amazon-apigateway-integration:
        requestTemplates:
          application/json: |
            {
              "statusCode" : 200
            }
        responses:
          default:
            responseParameters:
              method.response.header.Access-Control-Allow-Headers: "'Content-Type,X-Amz-Date,Authorization,X-Api-Key'"
              method.response.header.Access-Control-Allow-Methods: "'*'"
              method.response.header.Access-Control-Allow-Origin: "'*'"
            responseTemplates:
              application/json: |
                {}
            statusCode: "200"
        type: mock
    x-swagger-router-controller: countries
  /distance:
    get:
      description: This webservice is providing you the ability to calculate the distance between 2 lat/long points, it returns you the value in km or miles
      operationId: getDistance
      parameters:
        - description: The location as a latitude / longitude point ( ex. 67.85572,20.22513 ) of location point A
          in: query
          name: locationA
          pattern: ^[A-Za-z]{3}$|^(\-?\d+(\.\d+)?),\s*(\-?\d+(\.\d+)?)$
          required: true
          type: string
        - description: The location as a latitude / longitude point ( ex. 67.85572,20.22513 ) of location point B
          in: query
          name: locationB
          pattern: ^[A-Za-z]{3}$|^(\-?\d+(\.\d+)?),\s*(\-?\d+(\.\d+)?)$
          required: true
          type: string
        - default: kms
          description: The unit of length you want the elevation returned either meters or feet returned
          enum:
            - kms
            - miles
          in: query
          name: unit
          required: false
          type: string
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/DistanceResponse"
        "403":
          description: Forbidden
        "500":
          description: The error message object
          schema:
            $ref: "#/definitions/ErrorResponse"
      security:
        - x-api-key: []
      summary: Calculate distance between lats/longs
      tags:
        - Services APIs
      x-amazon-apigateway-integration:
        httpMethod: POST
        type: aws_proxy
        uri: ${lambda_handler_invoke_arn}
    options:
      consumes:
        - application/json
      description: |
        Enable CORS by returning correct headers
      produces:
        - application/json
      responses:
        "200":
          description: Default response for CORS method
          headers:
            Access-Control-Allow-Headers:
              type: string
            Access-Control-Allow-Methods:
              type: string
            Access-Control-Allow-Origin:
              type: string
      summary: CORS support
      x-amazon-apigateway-integration:
        requestTemplates:
          application/json: |
            {
              "statusCode" : 200
            }
        responses:
          default:
            responseParameters:
              method.response.header.Access-Control-Allow-Headers: "'Content-Type,X-Amz-Date,Authorization,X-Api-Key'"
              method.response.header.Access-Control-Allow-Methods: "'*'"
              method.response.header.Access-Control-Allow-Origin: "'*'"
            responseTemplates:
              application/json: |
                {}
            statusCode: "200"
        type: mock
    x-swagger-router-controller: elevation
  /elevation:
    get:
      description: This webservice is providing you the ability to retrieve the elevation in meters or feet of ONE or MULTIPLE given latitude/longitude point(s). <br />If you use MULTIPLE lat/long point, the maximum number of point you can send in one request is 256. Be aware that if MULTIPLE mode, the results are de-deplicated if you are sending the same latitude/longitude point multiple times.<br />If your workload is a batch of millions of lat/long point, You will also get better throughput if you send around 100 lat/long points in one request than the maximum. This maximum is mostly allowed for people trying to graph altitudes.
      operationId: getElevation
      parameters:
        - default: 67.85572,20.22513
          description: The location as a latitude / longitude point ( ex. 67.85572,20.22513 ) or a list of coordinates separated using the pipe ('|') character. The maximum number of coordinates you can send at one time is 20 ( ex. 67.85572,20.22513|27.85572,20.22513 )
          in: query
          name: locations
          pattern: ^(\-?\d+(\.\d+)?),\s*(\-?\d+(\.\d+)?)+((\|\-?\d+(\.\d+)?),\s*(\-?\d+(\.\d+)?)){0,256}$
          required: true
          type: string
        - default: meters
          description: The unit of length you want the elevation returned either meters or feet returned
          enum:
            - meters
            - feet
          in: query
          name: unit
          required: false
          type: string
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/ElevationResponse"
        "403":
          description: Forbidden
        "500":
          description: The error message object
          schema:
            $ref: "#/definitions/ErrorResponse"
      security:
        - x-api-key: []
      summary: Search elevation informations from lat/long
      tags:
        - Services APIs
      x-amazon-apigateway-integration:
        httpMethod: POST
        type: aws_proxy
        uri: ${lambda_handler_invoke_arn}
    options:
      consumes:
        - application/json
      description: |
        Enable CORS by returning correct headers
      produces:
        - application/json
      responses:
        "200":
          description: Default response for CORS method
          headers:
            Access-Control-Allow-Headers:
              type: string
            Access-Control-Allow-Methods:
              type: string
            Access-Control-Allow-Origin:
              type: string
      summary: CORS support
      x-amazon-apigateway-integration:
        requestTemplates:
          application/json: |
            {
              "statusCode" : 200
            }
        responses:
          default:
            responseParameters:
              method.response.header.Access-Control-Allow-Headers: "'Content-Type,X-Amz-Date,Authorization,X-Api-Key'"
              method.response.header.Access-Control-Allow-Methods: "'*'"
              method.response.header.Access-Control-Allow-Origin: "'*'"
            responseTemplates:
              application/json: |
                {}
            statusCode: "200"
        type: mock
    x-swagger-router-controller: elevation
  /pong:
    get:
      description: Returns a ping. In case you need a health check in your system. Cannot be called /ping as AWS is using this route for their health check. This webservice doesn't have CORS enable, as it's supposed to be call server to server and not from a webpage ( it won't work over the tester)
      operationId: getPing
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/PongResponse"
      security:
        - x-api-key: []
      tags:
        - Utilities APIs
      x-amazon-apigateway-integration:
        httpMethod: POST
        type: aws_proxy
        uri: ${lambda_handler_invoke_arn}
    x-swagger-router-controller: ping
  /sun_positions:
    get:
      description: This webservice is providing you the ability to retrieve the time of each phases of the sunlight cycle. Sunset, sunrise, sunriseEnd, golden hour, solarNoon, dawn, dusk and more for a given location and date. If the date if not provided, the response provided return informations for today at UTC time.
      operationId: getSun
      parameters:
        - description: Here you can send either a latitude / longitude
          in: query
          name: location
          pattern: ^[A-Za-z]{3}$|^(\-?\d+(\.\d+)?),\s*(\-?\d+(\.\d+)?)$
          required: true
          type: string
        - description: The date for what you will get the data ( full-date notation as defined by RFC 3339, section 5.6, for example, 2017-07-21 ), if not provided as parameter, today is going to be used
          format: date
          in: query
          name: date
          required: false
          type: string
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/SunPositionResponse"
        "403":
          description: Forbidden
        "500":
          description: The error message object
          schema:
            $ref: "#/definitions/ErrorResponse"
      security:
        - x-api-key: []
      summary: Search position of sun from lat/long and date
      tags:
        - Services APIs
      x-amazon-apigateway-integration:
        httpMethod: POST
        type: aws_proxy
        uri: ${lambda_handler_invoke_arn}
    options:
      consumes:
        - application/json
      description: |
        Enable CORS by returning correct headers
      produces:
        - application/json
      responses:
        "200":
          description: Default response for CORS method
          headers:
            Access-Control-Allow-Headers:
              type: string
            Access-Control-Allow-Methods:
              type: string
            Access-Control-Allow-Origin:
              type: string
      summary: CORS support
      x-amazon-apigateway-integration:
        requestTemplates:
          application/json: |
            {
              "statusCode" : 200
            }
        responses:
          default:
            responseParameters:
              method.response.header.Access-Control-Allow-Headers: "'Content-Type,X-Amz-Date,Authorization,X-Api-Key'"
              method.response.header.Access-Control-Allow-Methods: "'*'"
              method.response.header.Access-Control-Allow-Origin: "'*'"
            responseTemplates:
              application/json: |
                {}
            statusCode: "200"
        type: mock
    x-swagger-router-controller: sun_moon
  /swagger:
    x-swagger-pipe: swagger_raw
  /timezone:
    get:
      description: This webservice is providing you the ability to retrieve the tz database time zones ( https://en.wikipedia.org/wiki/List_of_tz_database_time_zones )  from a given location ( )latitude and longitude or IATA code ). It also returns you the current time at the provided location.
      operationId: getTimezone
      parameters:
        - default: 45.8326307,6.8650517
          description: Here you can send either a latitude / longitude ( ex. 67.85572,20.22513 ) or a IATA Code ( ex. LHR for London Heathrow)
          in: query
          name: location
          pattern: ^[A-Za-z]{3}$|^(\-?\d+(\.\d+)?),\s*(\-?\d+(\.\d+)?)$
          required: true
          type: string
      responses:
        "200":
          description: Success
          schema:
            $ref: "#/definitions/TimezoneResponse"
        "403":
          description: Forbidden
        "500":
          description: The error message object
          schema:
            $ref: "#/definitions/ErrorResponse"
      security:
        - x-api-key: []
      summary: Search timezone and time informations from lat/long
      tags:
        - Services APIs
      x-amazon-apigateway-integration:
        httpMethod: POST
        type: aws_proxy
        uri: ${lambda_handler_invoke_arn}
    options:
      consumes:
        - application/json
      description: |
        Enable CORS by returning correct headers
      produces:
        - application/json
      responses:
        "200":
          description: Default response for CORS method
          headers:
            Access-Control-Allow-Headers:
              type: string
            Access-Control-Allow-Methods:
              type: string
            Access-Control-Allow-Origin:
              type: string
      summary: CORS support
      x-amazon-apigateway-integration:
        requestTemplates:
          application/json: |
            {
              "statusCode" : 200
            }
        responses:
          default:
            responseParameters:
              method.response.header.Access-Control-Allow-Headers: "'Content-Type,X-Amz-Date,Authorization,X-Api-Key'"
              method.response.header.Access-Control-Allow-Methods: "'*'"
              method.response.header.Access-Control-Allow-Origin: "'*'"
            responseTemplates:
              application/json: |
                {}
            statusCode: "200"
        type: mock
    x-swagger-router-controller: timezone
definitions:
  AirportsSearchResponse:
    description: This section provides response schema of Airport Search Response
    properties:
      count:
        type: integer
      data:
        items:
          $ref: "#/definitions/DataAirportsSearch"
        type: array
      message:
        type: string
      status:
        description: Status of the response
        type: string
    type: object
  CitiesData:
    description: This is the data object for the response of a Cities APIs calls
    properties:
      alternatename:
        items:
          description: Here is a list of alternate name for the city in the requested language
          type: string
        type: array
      asciiname:
        description: The ASCII name of the city
        type: string
      country:
        description: The 2 letter ISO code of the country the city belongs to
        type: string
      elevation:
        description: The elevation of the city
        type: number
      latitude:
        description: The latitude considered as central for the city
        type: number
      longitude:
        description: The longitude considered as central for the city
        type: number
      name:
        description: The name of the city
        type: string
      population:
        description: The population of the city
        type: number
      timezone:
        description: The longitude considered as central for the city
        type: string
  CitiesResponse:
    description: This is the main object for the response of a Cities API call
    properties:
      count:
        type: integer
      data:
        items:
          $ref: "#/definitions/CitiesData"
        type: array
      message:
        type: string
      status:
        description: Status of the response
        type: string
    type: object
  ContinentData:
    description: This is the data object for the response of a Continent API call
    properties:
      code:
        description: The ISO code of the continent.
        type: string
      countries_in:
        items:
          description: Here is a list of country code that belong to the continent
          type: string
        type: array
      latitude:
        description: The latitude considered as central for the continent
        type: number
      longitude:
        description: The longitude considered as central for the continent
        type: number
      name:
        description: The name of the continent in english
        type: string
      name_locale:
        description: The name of the continent in the requested languager
        type: string
  ContinentsResponse:
    description: This is the main object for the response of a Continent API call
    properties:
      count:
        type: integer
      data:
        items:
          $ref: "#/definitions/ContinentData"
        type: array
      message:
        type: string
      status:
        description: Status of the response
        type: string
    type: object
  CountriesData:
    description: This is the data object for the response of a Countries API call
    properties:
      airportscount:
        description: The name of the country in english language
        type: number
      alternatename:
        items:
          description: The other given name, nickname of the country, this is as well as in requested language but also foreign languages
          type: string
        type: array
      areainsqkm:
        description: The superficy of the country in square km
        type: number
      capital:
        description: The capital of this country in english language
        type: string
      currencycode:
        description: The international currency code
        type: string
      currencyname:
        description: The local name of the currency used in this country
        type: string
      fr_article:
        description: The name of the country in english language
        type: string
      fr_preposition:
        description: The name of the country in english language
        type: string
      iso_alpha2:
        description: The 2 letter ISO code of the country
        type: string
      languages:
        description: The name of the country in english language
        type: string
      latitude:
        description: The latitude considered as central for this country
        type: number
      longitude:
        description: The longitude considered as central for this country
        type: number
      name:
        description: The name of the country in english language
        type: string
      name_locale:
        description: The name of the country in the requested language
        type: string
      neighbors:
        items:
          description: Here is a list of country code that have territorial border with the this country
          type: string
        type: array
      population:
        description: The total population in this country
        type: number
      postalcode:
        description: The format of the postal codes if multiple format to be applied, then a pipe | is used as separator
        type: string
      postalcoderegex:
        description: The regex to use to check a postal code for this country
        type: string
      tld:
        description: The top level domain which is used by the local internet authority.
        type: string
  CountriesResponse:
    description: This is the main object for the response of a Countries API call
    properties:
      count:
        type: integer
      data:
        items:
          $ref: "#/definitions/CountriesData"
        type: array
      message:
        type: string
      status:
        description: Status of the response
        type: string
    type: object
  DataAirportsSearch:
    properties:
      airlineroutescount:
        type: integer
      airport_website:
        type: string
      altitude:
        type: integer
      cityname:
        type: string
      countrycode:
        type: string
      destinationscount:
        type: integer
      distance:
        description: only in response when operating a lat/long search
        type: string
      iatacode:
        type: string
      icao:
        type: string
      istopdestination:
        type: boolean
      latitude:
        type: number
      longitude:
        type: number
      name:
        type: string
      timezone:
        type: string
      wikipedia_page:
        type: string
  DistanceResponse:
    description: This section provides response schema of pong response
    properties:
      count:
        type: integer
      data:
        description: Here is the distance between latlong A and latlong B, in the requested unit
        type: number
      message:
        type: string
      status:
        description: Status of the response
        type: string
    type: object
  ElevationData:
    properties:
      elevation:
        type: integer
      location:
        type: string
      unit:
        type: string
  ElevationResponse:
    description: This is the main object for the response of a TimezoneRequest
    properties:
      count:
        type: integer
      data:
        items:
          $ref: "#/definitions/ElevationData"
        type: array
      message:
        type: string
      status:
        description: Status of the response
        type: string
    type: object
  ErrorResponse:
    properties:
      message:
        type: string
    required:
      - message
  PongResponse:
    description: This section provides response schema of pong response
    properties:
      data:
        description: Will always return "pong"
        type: string
      message:
        type: string
      status:
        description: Status of the response
        type: string
    type: object
  SunPositionData:
    description: This is the data object for the response of a SunPosition API call
    properties:
      dawn:
        description: Date and time of the dawn at local time of the given location
        format: date-time
        type: string
      dusk:
        description: Date and time of the dusk at local time of the given location
        format: date-time
        type: string
      goldenHour:
        description: Date and time of the golden hour at local time of the given location
        format: date-time
        type: string
      goldenHourEnd:
        description: Date and time of the golden hour end at local time of the given location
        format: date-time
        type: string
      nadir:
        description: Date and time of the nadir at local time of the given location
        format: date-time
        type: string
      nauticalDawn:
        description: Date and time of the nautical dawn at local time of the given location
        format: date-time
        type: string
      nauticalDusk:
        description: Date and time of the nautical dusk at local time of the given location
        format: date-time
        type: string
      night:
        description: Date and time of the night at local time of the given location
        format: date-time
        type: string
      nightEnd:
        description: Date and time of the night end at local time of the given location
        format: date-time
        type: string
      solarNoon:
        description: Date and time of the solar moon at local time of the given location
        format: date-time
        type: string
      sunrise:
        description: Date and time of the sunris at local time of the given location
        format: date-time
        type: string
      sunriseEnd:
        description: Date and time of the sunrise end at local time of the given location
        format: date-time
        type: string
      sunset:
        description: Date and time of the sunset at local time of the given location
        format: date-time
        type: string
      sunsetStart:
        description: Date and time of the sunset start at local time of the given location
        format: date-time
        type: string
  SunPositionResponse:
    description: This is the main object for the response of a SunPosition API call
    properties:
      count:
        type: integer
      data:
        $ref: "#/definitions/SunPositionData"
        type: object
      message:
        type: string
      status:
        description: Status of the response
        type: string
    type: object
  TimezoneResponse:
    description: This is the main object for the response of a TimezoneRequest
    properties:
      count:
        type: integer
      data:
        properties:
          time_now:
            format: date-time
            type: string
          timezone_name:
            type: string
        type: object
      message:
        type: string
      status:
        description: Status of the response
        type: string
    type: object
x-amazon-apigateway-api-key-source: HEADER
