FixMyStreet support for Open311

FixMyStreet supports Open311 both as a client (sending reports made on the site to an external service via the Open311 protocol), and partly as a server (returning reports made on the site when queried via the Open311 protocol).

What is Open311?

In a nutshell, it's an international open standard that allows services to 'talk to' council systems.

As channels of communication diversify, it has become more and more important that council systems can recognise and accept reports from a variety of sources. For example, reports may come in via Twitter, SMS, email, services like FixMyStreet, and the council's own website.

Where can I find out more?

Open311 isn't as widely known as it deserves to be, so we wrote a short series of blog posts to explain the basics. And you can find out lots more at open311.org.

Why does it matter?

If you oversee problem reports at a council, you will of course be concerned about future-proofing your communication channels in an easy and economical way – Open311 gives you that assurance.

You may be interested to know about FixMyStreet Pro, our hosted service which sits seamlessly on your council website.

We can integrate it with any council back-end system, but if you use Open311, we charge less. That's how much we believe it's the sane way forward for council problem-reporting systems.

Any questions?

We're always happy to talk. Just drop us a line.


Rhyngwyneb Rhaglennu Cymwysiadau Open311 i weinydd mySociety FixMyStreet

Ar hyn o bryd dim ond chwilio am ac edrych ar adroddiadau.

Mae gweithrediad y rhyngwyneb rhaglennu cymwysiadau hwn ar y gweill ac nid yw wedi'i sefydlogi eto. Bydd yn newid yn ddirybudd yn y dyfodol.

Ar y mwyaf, mae 1000 cais yn cael eu dychwelyd ym mhob ymholiad. Mae'r ceisiadau yn cael eu dychwelwyd fesul request_datetime, felly i gael pob cais, gwnewch sawl chwiliad gyda rolling start_date a end_date.

Mae'r priodoleddau Open311 v2 canlynol yn cael eu dychwelyd ar gyfer pob cais: service_request_id, description, lat, long, media_url, status, requested_datetime, updated_datetime, service_code and service_name.

Yn ogystal, dychwelir y priodoleddau canlynol nad ydynt yn rhan o fanyleb Open311 v2: agency_sent_datetime, teitl (dychwelwyd hefyd fel rhan o'r disgrifiad), interface_used, comment_count, requestor_name (dim ond yn bresennol os yw'r ceisiwr wedi caniatáu i'r enw gael ei ddangos ar y wefan hon) .

Defnyddir y priodoledd Open311 v2 agency_responsible i restru'r gweinyddiaethau a dderbyniodd yr adroddiad, nid yn union y modd mae'r priodoledd wedi'i ddiffinio yn y fanyleb Open311 v2.

Gyda chwiliadau cais, mae hefyd yn bosibl chwilio am agency_responsible i gyfyngu'r ceisiadau i'r rhai a anfonir at un weinyddiaeth. Y term chwilio yw'r ID gweinyddol a ddarperir gan MaPit .

Enghreifftiau:

  • discovery information: XML or JSON
    /open311/v2/discovery.format?jurisdiction_id=fixmystreet
  • list of services provided: XML or JSON
    /open311/v2/services.format?jurisdiction_id=fixmystreet
  • list of services provided for WGS84 coordinate latitude 60 longitude 11: XML or JSON
    /open311/v2/services.format?jurisdiction_id=fixmystreet&lat=60&long=11
  • Request number 1: XML or JSON
    /open311/v2/requests/1.format?jurisdiction_id=fixmystreet
  • All requests with the category 'Other': XML or JSON
    /open311/v2/requests.format?jurisdiction_id=fixmystreet&service_code=Other
  • All closed requests: XML or JSON
    /open311/v2/requests.format?jurisdiction_id=fixmystreet&status=closed
  • All open requests reported before 2011-03-10 to Trondheim (id 1601): XML or JSON
    /open311/v2/requests.format?jurisdiction_id=fixmystreet&status=open&agency_responsible=1601&end_date=2011-03-10
  • All open requests in Asker (id 220) and Bærum (id 219): XML or JSON
    /open311/v2/requests.format?jurisdiction_id=fixmystreet&status=open&agency_responsible=219|220

Searching

The following search parameters can be used:

service_request_id
Search for numeric ID of specific request. Using this is identical to asking for a individual request using the /requests/number.format URL.
service_code
Search for the given category / service type string.
status
Search for open or closed (fixed) requests.
start_date
Only return requests with requested_datetime set after or at the date and time specified. The format is YYYY-MM-DDTHH:MM:SS+TZ:TZ.
end_date
Only return requests with requested_datetime set before the date and time specified. Same format as start_date.
agency_responsible
ID of government body receiving the request. Several IDs can be specified with | as a separator.
interface_used
Name / identifier of interface used.
has_photo
Search for entries with or without photos. Use value 'true' to only get requests created with images, and 'false' to get those created without images.
max_requests
Max number of requests to return from the search. If it is larger than the site specific max_requests value specified in the discovery call, the value provided is ignored.

The search result might look like this:

  <requests>
    <request>
      <agency_responsible>
        <recipient>Statens vegvesen region øst</recipient>
        <recipient>Oslo</recipient>
      </agency_responsible>
      <agency_sent_datetime>2011-04-23T10:28:55+02:00</agency_sent_datetime>
      <description>Mangler brustein: Det støver veldig på tørre dager.  Her burde det vært brustein.</description>
      <detail>Det støver veldig på tørre dager.  Her burde det vært brustein.</detail>
      <interface_used>Web interface</interface_used>
      <lat>59.916848</lat>
      <long>10.728148</long>
      <requested_datetime>2011-04-23T09:32:36+02:00</requested_datetime>
      <requestor_name>Petter Reinholdtsen</requestor_name>
      <service_code>Annet</service_code>
      <service_name>Annet</service_name>
      <service_request_id>1</service_request_id>
      <status>open</status>
      <title>Mangler brustein</title>
      <updated_datetime>2011-04-23T10:28:55+02:00</updated_datetime>
    </request>
  </requests>