swagger: "2.0"
schemes:
  - http
host: data.surrey.ca
basePath: /open511
info:
  contact:
    email: opendata@surrey.ca
    name: City of Surrey GIS Section
    url: http://data.surrey.ca
    x-twitter: CityofSurrey
  description: This API provides real time traffic obstruction events occuring within the City of Surrey.
  license:
    name: Open Government Licence - Surrey
    url: http://data.surrey.ca/pages/open-government-licence-surrey
  title: City of Surrey Open511 API
  version: "0.1"
  x-apisguru-categories:
    - open_data
  x-logo:
    url: https://twitter.com/CityofSurrey/profile_image?size=original
  x-origin:
    - format: swagger
      url: https://raw.githubusercontent.com/cityofsurrey/open511/master/open511definition.json
      version: "2.0"
  x-providerName: surrey.ca
  x-serviceName: open511
produces:
  - application/json
tags:
  - name: traffic
  - name: obstructions
  - name: realtime
  - name: transportation
paths:
  /areas:
    get:
      description: Provides the geographical boundaries for all the jurisdictions.
      parameters:
        - description: The format of the response
          in: query
          name: format
          type: string
      responses:
        "200":
          description: List of packages
      tags:
        - jurisdictions
  /events:
    get:
      description: Provides real time traffic obstruction events.  The event resource provides information about road events (constructions, special events, etc.).
      parameters:
        - description: The format of the response
          in: query
          name: format
          type: string
        - description: Limits the response to events having a given status.
          in: query
          name: status
          type: string
        - description: "Limits the response to events tagged with one of the listed severity values. The possible values are: [MINOR, MODERATE,MAJOR]. Multiple values may be listed, and should be separated by a comma. The default is to return events of any severity."
          in: query
          name: severity
          type: string
        - description: Limits the response to events reported by a given jurisdiction. The value given must be specified as the ID of a jurisdiction returned by the /jurisdiction resource. The default is to return events from all jurisdictions.
          in: query
          name: jurisdiction
          type: string
        - description: "Limits the response to events tagged with one of the listed event types. The possible values include: [CONSTRUCTION, INCIDENT, SPECIAL_EVENT, WEATHER_CONDITION]. Multiple values may be listed, and should be separated by a comma. The default is to return events of all types."
          in: query
          name: event_type
          type: string
        - description: Limits the response to events based on the date and time that the event was created (first recorded). The date/time must be specified in ISO 8601 format, and may be prefixed by one of the following operators [<, <=, >, >=] to indicate 'before', 'before or equal to', 'after' or 'after or equal to' respectively. For example, >2013-12-01T12:00:00Z requests all events create after Dec. 1, 2015 at 12pm (noon) Coordinated Universal Time. The default is to return events with any creation time.
          in: query
          name: created
          type: string
        - description: Limits the response to events based on the date and time that the event was last updated. The date/time must be specified in ISO 8601 format, and may be prefixed by one of the following operators [<, <=, >, >=] to indicate 'before', 'before or equal to', 'after' or 'after or equal to' respectively. For example, >2013-12-01T12:00:00Z requests all events updated after Dec. 1, 2015 at 12pm (noon) Coordinated Universal Time. The default is to return events with any update time
          in: query
          name: updated
          type: string
        - description: Limits the response to events on a given road as specified by the road name. An example of a valid road name is 'Highway 1'. The default is to return events on all roads.
          in: query
          name: road_name
          type: string
        - description: "Limits the response to events within one of the specified areas. An area must be specified as the ID of an item returned by the /areas resource. For example: an area_id of 'drivebc.ca/1' limits events to those within the Lower Mainland District. The default is to return events in all areas."
          in: query
          name: area_id
          type: string
        - description: "Limits the response to events that fall within the specified geographical bounding box. The bbox format must be '[min longitude],[min latitude],[max longitude],[max latitude]' with WGS84 coordinates. For example: -123.45,48.99,-122.45,49.49. The default is to return events in all geographical locations."
          in: query
          name: bbox
          type: string
      responses:
        "200":
          description: List of packages
      tags:
        - obstructions
        - events
  /jurisdiction:
    get:
      description: Lists the jurisdictions publishing data through this Open511 API implementation.
      parameters:
        - description: The format of the response
          in: query
          name: format
          type: string
      responses:
        "200":
          description: List of packages
      tags:
        - jurisdictions
  /jurisdictiongeography:
    get:
      description: Provides the geographical boundaries for all the jurisdictions.
      parameters:
        - description: The format of the response
          in: query
          name: format
          type: string
      responses:
        "200":
          description: List of packages
      tags:
        - jurisdictions
