NAV
curl

Introduction

Introduction



This is version 2 (v2) of the Mapillary API. Using this API you can access the vast amount of images and image sequences that are a part of Mapillary. Mapillary is a service for crowdsourcing map images using simple tools like smartphones or action cameras.

The APIs use OAuth2 for authentication and enable you and your applications to perform a wide range of tasks, as users or as apps acting on behalf of users.

At the moment we do not have any bindings, but we will make sure to get that going pretty soon.

Bugs

API

Please report bugs on API here.

Documentation

Please report bugs or send pull requests on documentation here.

Authentication

client_id

Provide a client_id in the query string:

# Always pass your client_id in the query string
curl https://a.mapillary.com/v2/status/api?client_id=<CLIENT_ID>

Make sure to replace <CLIENT_ID> with your API key.

Mapillary uses a client id to allow access to the API. You can register a client at your application settings page. The Mapillary API expects that the client_id parameter is present in all requests.

Like this:

https://a.mapillary.com/v2/status/api?client_id=<CLIENT_ID>

oauth token

For authenticating request, make sure to add an authorization token in the parameters.

# Add the oauth token in the Authorization header
curl -H "Authorization: Bearer xxx.yyy.zzz" https://a.mapillary.com/v2/status/api?client_id=<CLIENT_ID>

Make sure to replace xxx.yyy.zzz with the user’s token.

The token received on behalf of the user is used to authenticate requests. Always pass the token in the http header “Authorization”. As in this example:

Authorization: Bearer xxx.yyy.zzz

OAuth

The Mapillary API lets you interact with Mapillary on the behalf of a user. This is achieved by using OAuth 2.0. Mapillary supports the implicit and code flow of the OAuth 2.0 specification.

Mapillary OAuth tokens do not have any expiration time. The user can at any time revoke the token directly from the settings page..

Request Authorization

Example initiation URL:

http://www.mapillary.com/connect?client_id=<CLIENT_ID>&response_type=token&scope=user:email%20org:read&redirect_uri=http:%2F%2Fexample.com`

The OAuth2 authorization endpoint. Your app redirects a user to this endpoint, allowing them to delegate access to their account.

GET http://www.mapillary.com/connect

Query Parameters

Parameter Type Description
client_id string The client id belonging to your application
redirect_uri string The redirect uri you have configured for your application
response_type enumeration (implicit, token)
scope string The scopes to request from the user using %20 (space) as delimiter
state string Any value included here will be appended to the redirect URI

Finish Authorization

The OAuth2 token endpoint. This endpoint accepts POST requests and is used to provision access tokens once a user has authorized your application.

HTTP Request

POST https://a.mapillary.com/v2/oauth/token

Parameter Type Description
client_id string The client id belonging to your application
client_secret string The client secret belonging to your application
redirect_uri string The redirect uri you have configured for your application
grant_type enumeration (authorization_code)
code string The authorization code obtained when user is sent to redirect_uri

Scopes

The following scopes are available.

Name Description
mapillary:user This scope is only available to native Mapillary applications
user:read Access to all private information about user
user:write Ability to update a users information
user:email Access to users email
public:write Update users public objects
public:upload Upload public images on behalf of the user
private:read Read users private objects
private:write Update users private objects
private:upload Upload private images for the user
org:read Read users organizations and projects
org:write Update users organizations and projects

Images and Sequences

Images

Access an Mapillary image by key

https://d1cuyjsrcm0gby.cloudfront.net/<KEY>/thumb-320.jpg

Make sure to replace <KEY> with the key of the image.

Mapillary images are photos contributed by users and made available on the website and through this API. The publicly accessible photos are stripped of information that may be sensitive for privacy reasons and are processed by face blurring and license plate blurring before they are made available.

Image key

Each Mapillary image has a unique identifier key. This key is part of the URL of image views when browsing the website, for example: http://www.mapillary.com/map/im/

The KEY is also used to retrieve information from the API.

Image license

Mapillary images are available under the Creative Commons Attribution-ShareAlike 4.0 International License (CC BY-SA 4.0).

Creative Commons License

This license applies to all four versions of the photos, named “thumb-320.jpg”, “thumb-640.jpg”, “thumb-1024.jpg”, and “thumb-2048.jpg” respectively.

Attribution should include a clearly visible link to mapillary.com or to the Mapillary photo page directly.

The images are also available under other licenses for commercial use if CC BY-SA is not appropriate for the commercial usage.

Mapillary images are available using the following URL pattern:

https://d1cuyjsrcm0gby.cloudfront.net/<KEY>/thumb-320.jpg https://d1cuyjsrcm0gby.cloudfront.net/<KEY>/thumb-640.jpg https://d1cuyjsrcm0gby.cloudfront.net/<KEY>/thumb-1024.jpg https://d1cuyjsrcm0gby.cloudfront.net/<KEY>/thumb-2048.jpg

Sequences

All images are part of a sequence. Sequences are a continuous meaningful grouping of photos as the user pans or moves around. For example, driving a stretch of road. Mapillary encourages capture of images in sequences to maximize the connectedness of images and make sure it is possible to navigate to and from an image.

Sequence key

Each Mapillary sequence has a unique identifier key. This key is visible under the info card when browsing an image view on the website and is used to retrieve information from the API.

Blurs /b

/v2/b

Manage blurs.

GET /b/:key

/v2/b/:key

curl "https://a.mapillary.com/v2/b/UUyAhNVPHTAdOeCgJwa4dg?client_id=<CLIENT_ID>"

The above command returns JSON structured like this:

{
    "bs": [
        {
            "type": "license",
            "rect": [
                0.25625,
                0.7426944478352865,
                0.28875,
                0.7926944478352864
            ]
        },
        {
            "type": "useredit",
            "rect": [
                0.9425,
                0.6810277811686198,
                0.97,
                0.7210277811686198
            ]
        }
    ]
}

Retrieve information about a specific blur.

Scopes

Name When
private:read Needed when accessing blurs made on private images

HTTP Request

GET https://a.mapillary.com/v2/b/:key

Parameter Description
client_id The client id belonging to your application
key Key of the blur

Response Parameters

Parameter Description
bs List of blurs for image
bs[type] Describes type of blur, face = face detected, license = license plate detected, user = user defined blur
bs[rect] Placement of blur as a rectangle, [NorthWest, SouthEast] -> [[x,y],[x,y]]
user User who decided the blur, if null it’s mapillary default
applied True if applied false if not

POST /cm/:key

/v2/cm/:key

curl -XPOST "https://a.mapillary.com/v2/b/UUyAhNVPHTAdOeCgJwa4dg?client_id=<CLIENT_ID>"

The above command returns JSON structured like this:

{
    "code": "ok",
    "message": "request performed",
    "status": 200
}

Approve a nonapproved blur.

Scopes

Name When
mapillary:admin Always

HTTP Request

POST https://a.mapillary.com/v2/b/:key

Parameter Description
key Key of the comment

DELETE /cm/:key

/v2/cm/:key

curl -XPOST "https://a.mapillary.com/v2/b/UUyAhNVPHTAdOeCgJwa4dg?client_id=<CLIENT_ID>"

The above command returns JSON structured like this:

{
    "code": "ok",
    "message": "request performed",
    "status": 200
}

Reject a nonapproved blur.

Scopes

Name When
mapillary:admin Always

HTTP Request

DELETE https://a.mapillary.com/v2/b/:key

Parameter Description
key Key of the comment

Comments /cm

/v2/cm

Manage comments.

GET /cm/:key

/v2/cm/:key

curl "https://a.mapillary.com/v2/cm/v-fa0oYnRnpy6vzbmGRTCQ?client_id=<CLIENT_ID>"

The above command returns JSON structured like this:

{
    "comment": "Next time you got to catch the whole way down.",
    "created_at": 1438038345237,
    "key": "v-fa0oYnRnpy6vzbmGRTCQ",
    "mkey": "4fjj5tH4yBpp6m6iItlc-w",
    "user": "gyllen"
}

Retrieve information about a specific comment.

Scopes

Name When
private:read Needed when accessing comments made on private images

HTTP Request

GET https://a.mapillary.com/v2/cm/:key

Parameter Description
key Key of the comment

Response Parameters

Parameter Description
client_id The client id belonging to your application
comment The actual comment
created_at Time comment was created in EPOCH ms
key Key of the comment
mkey Key of corresponding image
user User making the comment

DELETE /cm/:key

/v2/cm/:key

curl -XDELETE "https://a.mapillary.com/v2/cm/v-fa0oYnRnpy6vzbmGRTCQ?client_id=<CLIENT_ID>"

The above command returns JSON structured like this:

{
    "code": "ok",
    "message": "request performed",
    "status": 200
}

Remove a comment.

Scopes

Name When
public:write When removing a user comment on a public image
private:write When removing a user comment on a private image

HTTP Request

DELETE https://a.mapillary.com/v2/cm/:key

Parameter Description
key Key of the comment

Images /im

/v2/im

Manage single images. For the ability to search for images see the separate search API.

GET /im/:key

/v2/im/:key

curl "https://a.mapillary.com/v2/im/V3HG0CMVMk4aNQj6_YFHgQ?client_id=<CLIENT_ID>"

The above command returns JSON structured like this:

{
  "ca":95.70099,
  "captured_at":1400486721000,
  "key":"V3HG0CMVMk4aNQj6_YFHgQ",
  "lon":-118.369883,
  "lat":34.095438,
  "location":"De Longpre Avenue, L.A.",
  "user":"gyllen"
}

Retrieve information about a specific image.

Scopes

Name When
private:read Needed when accessing private images

HTTP Request

GET https://a.mapillary.com/v2/im/:key

Parameter Description
client_id The client id belonging to your application
key Key of the image to get information about

Response Parameters

Parameter Description
ca Angle of the image shot in degrees between 0 to 360
captured_at Time image was captured in EPOCH ms
key Key of the image
lon Longitude of image
lat Latitude of image
location String representation of where image was shot
user Username of user who uploaded the image

GET /im/:key/geojson

/v2/im/:key/geojson

curl "https://a.mapillary.com/v2/im/V3HG0CMVMk4aNQj6_YFHgQ/geojson?client_id=<CLIENT_ID>"

The above command returns JSON structured like this:

{
  "features": [
    {
      "type":"Feature",
      "geometry": {
        "type":"Point",
        "coordinates": [
          -118.369883,
          34.095438
        ]
      },
      "properties": {
        "key":"V3HG0CMVMk4aNQj6_YFHgQ",
        "ca":95.70099
      }
    }
  ],
  "type":"FeatureCollection"
}

Retrieve information about a specific image in geojson format.

Scopes

Name When
private:read Needed when accessing private images

HTTP Request

GET https://a.mapillary.com/v2/im/:key/geojson

Parameter Description
client_id The client id belonging to your application
key Key of the image to get information about

Geojson Properties

Parameter Description
ca Angle of the image shot in degrees between 0 to 360
key Key of the image

GET /im/:key/b

/v2/im/:key/b

curl "https://a.mapillary.com/v2/im/:key/b?client_id=<CLIENT_ID>"

The above command returns JSON structured like this:

{
    "bs": [
        {
            "type": "license",
            "rect": [
                0.25625,
                0.7426944478352865,
                0.28875,
                0.7926944478352864
            ]
        },
        {
            "type": "user",
            "rect": [
                0.9425,
                0.6810277811686198,
                0.97,
                0.7210277811686198
            ]
        }
    ]
}

Retrieve blurs for an image.

Scopes

Name When
private:read Needed when accessing private images

HTTP Request

GET https://a.mapillary.com/v2/im/:key/b

Parameter Description
client_id The client id belonging to your application
key Key of the image to get information about

Response Parameters

Parameter Description
bs List of blurs for image
bs[type] Describes type of blur, face = face detected, license = license plate detected, user = user defined blur
bs[rect] Placement of blur as a rectangle, [NorthWest, SouthEast] -> [[x,y],[x,y]]
pbs List of requested blurs, new requests can not be done until this request is rejected or approved
pbs[type] Describes type of blur, user = user defined blur
pbs[rect] Placement of blur as a rectangle, [NorthWest, SouthEast] -> [[x,y],[x,y]]
user User who decided the blur, if null it’s mapillary default
requesting_user User requesting a blur

POST /im/:key/b

/v2/im/:key/b

curl -d "https://a.mapillary.com/v2/im/:key/b?client_id=<CLIENT_ID>"

The above command returns JSON structured like this:

{
    "code": "ok",
    "message": "request performed",
    "status": 200
}

Request blur for an image.

Scopes

Name When
public:write Needed when writing to public images
private:write Needed when writing to private images

HTTP Request

POST https://a.mapillary.com/v2/im/:key/b

Parameter Description
client_id The client id belonging to your application
key Key of the image to get information about

Request body

Request body example

{
    "bs": [
        {
            "type": "license",
            "rect": [
                0.25625,
                0.7426944478352865,
                0.28875,
                0.7926944478352864
            ]
        },
        {
            "type": "user",
            "rect": [
                0.9425,
                0.6810277811686198,
                0.97,
                0.7210277811686198
            ]
        }
    ]
}
Parameter Description
bs List of blurs to send (including old blurs this is all blurs that are requested)
bs[type] Describes type of blur, face = face detected, license = license plate detected, user = user defined blur
bs[rect] Placement of blur as a rectangle, [NorthWest, SouthEast] -> [[x,y],[x,y]]

GET /im/:key/cm

/v2/im/:key/cm

curl -d "https://a.mapillary.com/v2/im/:key/cm?client_id=<CLIENT_ID>"

The above command returns JSON structured like this:

{
    "cms": [
        {
            "comment": "Beautiful images, strange I have not seen this before.",
            "created_at": 1436485760094,
            "key": "PazK_LSDLAqcc3PdCAeeOA",
            "user": {
                "username": "gyllen",
                "avatar": "22b939a6ac2e3920a434c0d9/profile.png"
            }
        }
    ]
}

Get all comments for an image.

Scopes

Name When
private:read Needed when accessing private images

HTTP Request

POST https://a.mapillary.com/v2/im/:key/cm

Parameter Description
client_id The client id belonging to your application
key Key of the image to get information about

Response Parameters

Parameter Description
comment The actual comment
created_at When comment was commented in EPOCH ms
key Unique key of comment, this key could be used to delete comment
user{} Struct of user
user[username] Username of user
user[avatar] Link to avatar of user

POST /im/:key/cm

/v2/im/:key/cm

curl "https://a.mapillary.com/v2/im/-l5NpA-2oGhmslXVYK6Y9g/cm?client_id=<CLIENT_ID>"

The above command returns JSON structured like this:

{
    "code": "ok",
    "message": "request performed",
    "status": 200
}

Create a comment.

Scopes

Name When
public:write When creating a user comment on a public image
private:write When creating a user comment on a private image

HTTP Request

POST https://a.mapillary.com/v2/im/:key/cm

Parameter Description
key Key of the image to comment on

Request body

Parameter Description
cm The actual comment

POST /im/:key/complain

/v2/im/:key/complain

curl "https://a.mapillary.com/v2/im/-l5NpA-2oGhmslXVYK6Y9g/complain?client_id=<CLIENT_ID>"

The above command returns JSON structured like this:

{
    "code": "ok",
    "message": "request performed",
    "status": 200
}

Create a complaint for an image.

HTTP Request

POST https://a.mapillary.com/v2/im/:key/complain

Parameter Description
key Key of the image to complain on

Request body

Parameter Description
cm The complaint to report (a comment)

GET /im/:key/or

/v2/im/:key/or

curl "https://a.mapillary.com/v2/im/:key/or?client_id=<CLIENT_ID>"

The above command returns JSON structured like this:

{
    "ca": 256.4223844427362,
    "captured_at": 1400317595000,
    "key": "2SCoJAJIjJFB4bK2m3mspg",
    "lon": 13.01069653,
    "lat": 55.60790127,
    "user": "mapillarysweden1",
    "or_rects": [
        {
            "score": "0.935301527552",
            "package": "trafficsign_eu_1.0",
            "type": "information_pedestrian_crossing",
            "rect": [
                0.3037109375,
                0.5182291666666666,
                0.3232421875,
                0.5442708333333334
            ]
        },
        {
            "score": "1.66795574937",
            "package": "trafficsign_eu_1.0",
            "rect": [
                0.302734375,
                0.5494791666666666,
                0.326171875,
                0.5807291666666666
            ],
            "type": "mandatory_keep_right"
        }
    ],
    "or_rectversions": [],
    "or_done": true,
    "or_packages": [
        "trafficsign_eu_1.0"
    ]
}

Retrieve recognized objects for an image.

Scopes

Name When
private:read Needed when accessing private images

HTTP Request

GET https://a.mapillary.com/v2/im/:key/or

Parameter Description
client_id The client id belonging to your application
key Key of the image to get objects for

Response Parameters

Parameter Description
ca Angle of the image shot in degrees between 0 to 360
captured_at Time image was captured in EPOCH ms
key Key of the image
lon Longitude of image
lat Latitude of image
user Username of user taken the image
or_rects[] Matches in form of rectangles
or_rects[score] Confidence score of match
or_rects[package] Object recognition package
or_rects[type] Classification of match
or_rects[rect] Rectangle of match in normalized coordinates (0 to 1) [North West X, North West Y, South East X, South East Y]
or_rectversions[] User classifications
or_rectversions[rects] Detections in form of rectangles
or_rectversions[rects][rect] Rectangle of detection in normalized coordinates (0 to 1) [North West X, North West Y, South East X, South East Y]
or_rectversions[rects][type] Type of match
or_rectversions[rects][user_defined] True if defined by user
or_rectversions[timestamp] Version and also timestamp of registered version match against confirmations
or_rectversions[user] User performing detection
or_rectversions[package] Package feeding back against
or_done True if all detections are run on image
or_packages List of detections that’s been run on image
or_confirmed_packages[] Confirmations against detections
or_confirmed_packages[package] Package confirmation is made against
or_confirmed_packages[user] User performing confirmations
or_confirmed_packages[version] Version of detection that is confirmed

POST /im/:key/or/version

Create a detected version. Not yet available.

POST /im/:key/or/version/approve

Approve a detected version. Not yet available.

Me /me

GET /me

/v2/me

curl "https://a.mapillary.com/v2/me?client_id=<CLIENT_ID>"

The above command returns JSON structured like this:

{
  "about": "A short text about me.",
  "avatar": "22b939a6ac2e3920a434c0d9/profile.png",
  "member_since": 1379530348000,
  "username": "gyllen",
  "user_uuid": "2BJl04nvnfW1y2GNaj7x5w",
  "email": "email@example.com"
}

Get info about user.

Scopes

Name When
user:read Always
user:email Access to users email

HTTP Request

GET https://a.mapillary.com/v2/me

Response Parameters

Parameter Description
about Text about user
avatar URL to user avatar
member_since When user created account in EPOCH ms
username Username of user
user_uuid Unique identifier of user in Mapillary system
email Users email if correct scope is authenticated

PUT /me

TBD not yet available.

GET /me/feed

/v2/me/feed

curl "https://a.mapillary.com/v2/me/feed?client_id=<CLIENT_ID>"

The above command returns JSON structured like this:

{
  "feed": [
    {
      "action": "commented",
      "timestamp": 1396244855000,
      "object": "comment",
      "key": "kKQR3646GpRnbqZSFvVlNA",
      "user": "gyllen",
      "other_user": "jesolem",
      "image_url": "https://d1cuyjsrcm0gby.cloudfront.net/kKQR3646GpRnbqZSFvVlNA/thumb-320.jpg",
      "main_description": "Whoa, this is a comment.",
      "detail_description": "",
      "location": "Lomma, Sweden",
      "version": 1
    }
  ]
}

Retrieve a users feed.

Scopes

Name When
user:read Always

HTTP Request

GET https://a.mapillary.com/v2/me/feed

Parameter Description
version Get only feed items with this version and below
limit Results per page in pagination
page Page number in pagination

Response Parameters

Parameter Description
feed Array of events in the feed sorted by newest first
feed[action] Action or feed event
feed[timestamp] When event happened
feed[object] Type of object operated at
feed[key] Key of object
feed[user] User responsible for action
feed[other_use] Secondary user in action
feed[image_url] Link to an image representing the event
feed[main_description] Main description
feed[detail_description] Longer and more detailed description of event
feed[location] Location where event happened
feed[version] Version of feed event

GET /me/uploads/secrets

/v2/me/uploads/secrets

curl "https://a.mapillary.com/v2/me/uploads/secrets?client_id=<CLIENT_ID>"

The above command returns JSON structured like this:

{
    "images_policy": "AAA",
    "images_hash": "BBB",
    "videos_policy": "CCC",
    "videos_hash": "DDD"
}

Retrieve user specific hashes to use S3 direct upload for images.

Scopes

Name When
public:upload Always

HTTP Request

GET https://a.mapillary.com/v2/me/uploads/secrets

Response Parameters

Parameter Description
images_policy Policy to upload to Mapillary images S3 folder
images_hash Hash to upload to Mapillary images S3 folder
videos_policy Policy to upload to Mapillary videos S3 folder
videos_hash Hash to upload to Mapillary videos S3 folder

GET /me/uploads/status

/v2/me/uploads/status

curl "https://a.mapillary.com/v2/me/uploads/status?client_id=<CLIENT_ID>"

The above command returns JSON structured like this:

{
}

INFO

Scopes

Name When
public:upload Always

HTTP Request

GET https://a.mapillary.com/v2/me/uploads/status

Response Parameters

Parameter Description

POST /me/uploads/images/:key

/v2/me/uploads

curl "https://a.mapillary.com/v2/me/uploads/images/:key?client_id=<CLIENT_ID>"

The above command returns JSON structured like this:

{
}

INFO

Scopes

Name When
public:upload Always

HTTP Request

POST https://a.mapillary.com/v2/me/uploads/images/:key

Response Parameters

Parameter Description

DELETE /me/uploads/images/:key

/v2/me/uploads/images/:key

curl "https://a.mapillary.com/v2/me/uploads/images/:key?client_id=<CLIENT_ID>"

The above command returns JSON structured like this:

{
}

INFO

Scopes

Name When
public:upload Always

HTTP Request

DELETE https://a.mapillary.com/v2/me/uploads/images/:key

Response Parameters

Parameter Description

DELETE /me/uploads/images/:key/file

/v2/me/uploads/images/:key/file

curl "https://a.mapillary.com/v2/me/uploads/images/:key/:file?client_id=<CLIENT_ID>"

The above command returns JSON structured like this:

{
}

INFO

Scopes

Name When
public:upload Always

HTTP Request

GET https://a.mapillary.com/v2/me/uploads/images/:key/:file

Response Parameters

Parameter Description

Sequences /s

GET /s/:key

/v2/s/:key

curl "https://a.mapillary.com/v2/s/XXhG1IuvngsFAw-zRrk6cg?client_id=<CLIENT_ID>"

The above command returns JSON structured like this:

{
    "boundary": {
        "min_lat": 58.85197745,
        "min_lon": 5.74313594,
        "max_lat": 58.85199353,
        "max_lon": 5.74316249
    },
    "captured_at": 1437142973705,
    "cas": [
        340.360486328602,
        358.657117366791
    ],
    "coords": [
        [
            5.74313594,
            58.85199353
        ],
        [
            5.74313632,
            58.85199297
        ]
    ],
    "key": "XXhG1IuvngsFAw-zRrk6cg",
    "keys": [
        "TaBv0AZF5kloqhnbyOuZHw",
        "EGJ-FwLmvspXe04vmnWfKg"
    ]
}

Retrieve information about a specific sequence.

Scopes

Name When
private:read Needed when accessing private sequences

HTTP Request

GET https://a.mapillary.com/v2/s/:key

Parameter Description
client_id The client id belonging to your application
key Key of the sequence to get information about

Response Parameters

Parameter Description
boundary Box covering the whole sequence
captured_at When the sequence was captured
cas List of angles
coords List of coords for the sequence
key Key of the sequence
keys Array of the keys of the images in the sequence

GET /s/:key/geojson

/v2/s/:key/geojson

curl "https://a.mapillary.com/v2/s/XXhG1IuvngsFAw-zRrk6cg/geojson?client_id=<CLIENT_ID>"

The above command returns JSON structured like this:

{
    "more": false,
    "features": [
        {
            "type": "Feature",
            "geometry": {
                "type": "LineString",
                "coordinates": [
                    [
                        5.74313594,
                        58.85199353
                    ],
                    [
                        5.74313632,
                        58.85199297
                    ]
                ],
                "bbox": [
                    5.74313594,
                    58.85197745,
                    5.74316249,
                    58.85199353
                ]
            },
            "properties": {
                "boundary": {
                    "min_lat": 58.85197745,
                    "min_lon": 5.74313594,
                    "max_lat": 58.85199353,
                    "max_lon": 5.74316249
                },
                "captured_at": 1437142973705,
                "key": "XXhG1IuvngsFAw-zRrk6cg",
                "keys": [
                    "TaBv0AZF5kloqhnbyOuZHw",
                    "EGJ-FwLmvspXe04vmnWfKg"
                ],
                "cas": [
                    340.360486328602,
                    358.657117366791
                ]
            }
        }
    ],
    "type": "FeatureCollection"
}

Retrieve information about a specific sequence in geojson format.

Scopes

Name When
private:read Needed when accessing private sequences

HTTP Request

GET https://a.mapillary.com/v2/s/:key/geojson

Parameter Description
client_id The client id belonging to your application
key Key of the sequence to get information about

Geojson Properties

Parameter Description
boundary Box covering the whole sequence
captured_at When the sequence was captured
key Key of the sequence
keys Array of the keys of the images in the sequence
cas List of angles

Search /search

/v2/search

Search for objects in the Mapillary archives.

GET /search/b

/v2/search/b

curl "https://a.mapillary.com/v2/search/b?client_id=<CLIENT_ID>&limit=1&page=0"

The above command returns JSON structured like this:

{
  "more": true,
  "ims" : [
    {
      "ca":165.9576,
      "captured_at":1412953933000,
      "key":"66AuTgR_tQKBuO07rLPIWg",
      "lon":28.357766,
      "lat":-15.400321,
      "location":"Lusaka",
      "user":"gyllen"
    }
  ]
}

Search for blurs to approve/reject.

Scopes

Name When
private:read Needed to get private images

HTTP Request

GET http://a.mapillary.com/v2/search/b

Parameter Description
client_id The client id of your application
limit Results per page in pagination
page Page number in pagination

Response Parameters

Parameter Description

GET /search/im

/v2/search/im

curl "https://a.mapillary.com/v2/search/im?client_id=<CLIENT_ID>&max_lat=55.89&max_lon=13.01&min_lat=55.875&min_lon=12.975&limit=1&page=0"

The above command returns JSON structured like this:

{
  "more": true,
  "ims" : [
    {
      "ca":165.9576,
      "captured_at":1412953933000,
      "key":"66AuTgR_tQKBuO07rLPIWg",
      "lon":28.357766,
      "lat":-15.400321,
      "location":"Lusaka",
      "user":"gyllen"
    }
  ]
}

Search for images.

Scopes

Name When
private:read Needed when project provided as query parameter

HTTP Request

GET http://a.mapillary.com/v2/search/im

Parameter Description
client_id The client id of your application
start_time Start time in EPOCH ms
end_time End time in EPOCH ms
project If added show only objects for that project, if not show public
hidden Also show hidden images, only for authed user though
me Just objects for logged in user
user Just objects for specific user
min_lat Minimum Latitude
max_lat Maximum Latitude
min_lon Minimum Longitude
max_lon Maximum Longitude
limit Results per page in pagination
page Page number in pagination

Response Parameters

Parameter Description
more True if there are more images in pagination false if not.
ims A list of images
ims[ca] Angle of the image shot in degrees between 0 to 360
ims[captured_at] Time image was captured in EPOCH ms
ims[key] Key of the image
ims[lon] Longitude of image
ims[lat] Latitude of image
ims[location] String representation of where image was shot
ims[user] Username of user taken the image

GET /search/im/close

/v2/search/im/close

curl "https://a.mapillary.com/v2/search/im/close?client_id=<CLIENT_ID>&lat=55.874973779667876&limit=1&lon=12.981805801391602&min_ca=140&max_ca=190"

The above command returns JSON structured like this:

  {
    "more": true,
    "ims" : [
      {
        "ca":165.9576,
        "captured_at":1412953933000,
        "distance":10,
        "key":"66AuTgR_tQKBuO07rLPIWg",
        "lon":28.357766,
        "lat":-15.400321,
        "location":"Lusaka",
        "user":"gyllen"
      }
    ]
  }

Get images close to a certain point defined by longitude, latitude, max angle, min angle and a radius in meters.

Scopes

Name When
private:read Needed when project provided as query parameter

HTTP Request

GET http://a.mapillary.com/v2/search/im/close

Parameter Description
client_id The client id belonging to your application
start_time Start time in EPOCH ms
end_time End time in EPOCH ms
project If added show only objects for that project, if not show all none projects
hidden Also show hidden images, only for authed user though
me Just objects for logged in user
user Just objects for specific user
lat Latitude to search in circle from
lon Longitude to search in circle from
min_ca Minimum angle of image in degrees
max_ca Maximum angle of image in degrees
distance Search radius in meters
limit Results per page in pagination
page Page number in pagination

Response Parameters

Parameter Description
more True if there are more images in pagination false if not.
ims A list of images
ims[ca] Angle of the image shot in degrees between 0 to 360
ims[captured_at] Time image was captured in EPOCH ms
ims[distance] Distance in meters for the closets image
ims[key] Key of the image
ims[lon] Longitude of image
ims[lat] Latitude of image
ims[location] String representation of where image was shot
ims[user] Username of user taken the image

GET /search/im/w3w

/v2/search/im/w3w

curl "https://a.mapillary.com/v2/search/im/w3w?client_id=<CLIENT_ID>&string=bland.pylons.asserts"

The above command returns JSON structured like this:

  {
    "ims" : [
      {
        "key":"66AuTgR_tQKBuO07rLPIWg",
        "lon":28.357766,
        "lat":-15.400321
      }
    ]
  }

Get images in a specific w3w word

Scopes

None

HTTP Request

GET http://a.mapillary.com/v2/search/im/w3w

Parameter Description
client_id The client id belonging to your application
string what3words string

Response Parameters

Parameter Description
ims A list of images
ims[key] Key of the image
ims[lon] Longitude of image
ims[lat] Latitude of image

GET /search/im/randomselected

/v2/search/im/randomselected

curl "https://a.mapillary.com/v2/search/im/randomselected?client_id=<CLIENT_ID>"

The above command returns JSON structured like this:

{
  "ca":165.9576,
  "captured_at":1412953933000,
  "distance":10,
  "key":"66AuTgR_tQKBuO07rLPIWg",
  "lon":28.357766,
  "lat":-15.400321,
  "location":"Lusaka",
  "user":"gyllen"
}

Get a random image from the Mapillary image archive, the images is randomized from a set of curated images.

Scopes

none

HTTP Request

GET http://a.mapillary.com/v2/search/im/randomselected

Response Parameters

Parameter Description
ca Angle of the image shot in degrees between 0 to 360
captured_at Time image was captured in EPOCH ms
key Key of the image
lon Longitude of image
lat Latitude of image
location String representation of where image was shot
user Username of user taken the image

GET /search/im/b

/v2/search/im/b

curl "https://a.mapillary.com/v2/search/im/b?client_id=<CLIENT_ID>"

The above command returns JSON structured like this:

{
  "blur": [
    {
      "type":"license",
      "rect": [
        0.7444852941176471,
        0.4959150326797386,
        0.8002450980392157,
        0.5175653594771242
      ]
    }
  ],
  "ca":165.9576,
  "captured_at":1412953933000,
  "distance":10,
  "key":"66AuTgR_tQKBuO07rLPIWg",
  "lon":28.357766,
  "lat":-15.400321,
  "location":"Lusaka",
  "user":"gyllen"
}

Search and get all image blurs within an area.

Scopes

Name When
private:read Needed when project provided as query parameter

HTTP Request

GET http://a.mapillary.com/v2/search/im/b

Parameter Description
client_id The client id belonging to your application
start_time Start time in EPOCH ms
end_time End time in EPOCH ms
project If added show only objects for that project, if not show all none projects
hidden Also show hidden images, only for authed user though
me Just objects for logged in user
user Just objects for specific user
min_lat Minimum Latitude
max_lat Maximum Latitude
min_lon Minimum Longitude
max_lon Maximum Longitude
limit Results per page in pagination
page Page number in pagination

Response Parameters

Parameter Description
more True if there are more images in pagination false if not.
ims A list of images
ims[blur] List of current blurs for image
ims[blur][type] Describes type of blur, face = face detected, license = license plate detected, user = user defined blur
ims[blur][rect] Placement of blur as a rectangle, [SouthWest, NorthEast] -> [[x,y],[x,y]]
ims[ca] Angle of the image shot in degrees between 0 to 360
ims[captured_at] Time image was captured in EPOCH ms
ims[distance] Distance in meters for the closets image
ims[key] Key of the image
ims[lon] Longitude of image
ims[lat] Latitude of image
ims[location] String representation of where image was shot
ims[user] Username of user taken the image

GET /search/im/cm

/v2/search/im/cm

curl "https://a.mapillary.com/v2/search/im/cm?client_id=<CLIENT_ID>"

The above command returns JSON structured like this:

{
  "ca":165.9576,
  "captured_at":1412953933000,
  "comments": [
    {
      "comment": "Nice image",
      "created_at": 1404416754000,
      "key": "lPP2c_CMwtBvfLqiWc_NSw",
      "user": "jesolem"
    }
  ],
  "distance":10,
  "key":"66AuTgR_tQKBuO07rLPIWg",
  "lon":28.357766,
  "lat":-15.400321,
  "location":"Lusaka",
  "user":"gyllen"
}

Get all images that have at least one comment in an area.

Scopes

Name When
private:read Needed when project provided as query parameter

HTTP Request

GET http://a.mapillary.com/v2/search/im/cm

Parameter Description
client_id The client id belonging to your application
start_time Start time in EPOCH ms
end_time End time in EPOCH ms
project If added show only objects for that project, if not show all none projects
hidden Also show hidden images, only for authed user though
me Just objects for logged in user
user Just objects for specific user
min_lat Minimum Latitude
max_lat Maximum Latitude
min_lon Minimum Longitude
max_lon Maximum Longitude
limit Results per page in pagination
page Page number in pagination

Response Parameters

Parameter Description
more True if there are more images in pagination false if not.
ims A list of images
ims[comment] List of comments for image
ims[comment][comment] The actual comment
ims[comment][created_at] When comment was commented in EPOCH ms
ims[comment][key] Comment key to reference comment by
ims[comment][user] User who made comment
ims[ca] Angle of the image shot in degrees between 0 to 360
ims[captured_at] Time image was captured in EPOCH ms
ims[distance] Distance in meters for the closets image
ims[key] Key of the image
ims[lon] Longitude of image
ims[lat] Latitude of image
ims[location] String representation of where image was shot
ims[user] Username of user taken the image

GET /search/im/or

/v2/search/im/or

curl "https://a.mapillary.com/v2/search/im/or?or_classes[]=prohibitory_no&or_classes[]=other_no&or_package=trafficsign_eu_1.0&min_score=2&client_id=<CLIENT_ID>"

The above command returns JSON structured like this:

{
  "more": true,
  "ims": [
    {
      "ca":119.65005493164062,
      "key":"O77SSbW100Il4NcIPU0-9Q",
      "lat":53.88683744240552,
      "lon":18.62872120924294,
      "rects": [
        {
          "package":"trafficsign_eu_1.0",
          "score":"0.810551672189",
          "type":"mandatory_go_straight",
          "rect":[
            0.70703125,
            0.4231770833333333,
            0.732421875,
            0.45703125
          ]
        }
      ],
      "user":"gyllen"
    }
  ]
}

Search for recognized objects in images. Currently these are traffic signs.

Scopes

Name When
private:read Needed when project provided as query parameter

HTTP Request

GET http://a.mapillary.com/v2/search/im/or

Parameter Description
client_id The client id of your application
start_time Start time in EPOCH ms
end_time End time in EPOCH ms
project If added show only objects for that project, if not show public
hidden Also show hidden images, only for authorized user
me Only objects in images from logged in user
user Only objects in images from specific user
min_lat Minimum Latitude
max_lat Maximum Latitude
min_lon Minimum Longitude
max_lon Maximum Longitude
or_package Package to search in (available “trafficsign_eu_1.0” and “trafficsign_us_1.0”)
or_classes[] Arrays of classes to search for. Search works on prefix basis, so “prohibitory” will match both “prohibitory_no_parking” and “prohibitory_no_traffic_both_ways”. While “prohibitory_no_parking” will only match “prohibitory_no_parking”. For a list of classes see Object Recognition Classes..
min_score Minimal category score
limit Results per page in pagination
page Page number in pagination

Response Parameters

Parameter Description
more True if there are more images in pagination false if not.
ims List of images that include matches
ims[ca] Angle of where images was taken
ims[key] Key of image
ims[lat] Latitude of image
ims[lon] Longitude of image
ims[rects] Matches in form of rectangles
ims[rects][package] Object recognition package
ims[rects][score] Confidence score of match
ims[rects][type] Classification of match
ims[rects][rect] Rectangle of match in normalized coordinates (0 to 1) [North West X, North West Y, South East X, South East Y]
ims[user] Username of user that provided the image

GET /search/im/or/random

/v2/search/im/or/random

curl "https://a.mapillary.com/v2/search/im/or/random?client_id=<CLIENT_ID>"

The above command returns JSON structured like this:

{
  "key": "D0OcUyPvenEDCwObI571LA",
  "rects": [
    {
      "package": "trafficsign_eu_1.0",
      "score": "0.0732049922895",
      "type": "mandatory_keep_right",
      "rect": [
        0.05078125,
        0.7291666666666666,
        0.0732421875,
        0.7591145833333334
      ]
    },
    {
      "package": "trafficsign_eu_1.0",
      "score": "0.0164618917635",
      "type": "prohibitory_speed_limit_60",
      "rect": [
        0.6865234375,
        0.75,
        0.7783203125,
        0.8802083333333334
      ]
    }
  ],
  "orversions": [
    {
      "timestamp": 1437218019615,
      "package": "trafficsign_eu_1.0",
      "user": "hknk1",
      "rects": []
    }
  ],
  "random_type": 1
}

Get a random recognized images with recognized object. Currently these are traffic signs.

HTTP Request

GET http://a.mapillary.com/v2/search/im/or/random

Parameter Description
client_id The client id of your application

Response Parameters

Parameter Description
key Key of the image
rects Matches in form of rectangles
rects[package] Object recognition package
rects[score] Confidence score of match
rects[type] Classification of match
rects[rect] Rectangle of match in normalized coordinates (0 to 1) [North West X, North West Y, South East X, South East Y]
orversions List of recognition versions
orversions[timestamp] Version and also timestamp of registered version match against confirmations
orversions[package] Object recognition package
orversions[user] user who created the version of the recognition
orversions[rects] Matches in form of rectangles
orversions[rects][score] Confidence score of match
orversions[rects][type] Classification of match
orversions[rects][user_defined] True if the object was defined by the user
orversions[rects][rect] Rectangle of match in normalized coordinates (0 to 1) [North West X, North West Y, South East X, South East Y]
random_type ????

GET /search/im/s/:key

/v2/search/im/s/:key

curl "https://a.mapillary.com/v2/search/im/s/uwDS-P5HcC9BfMghANb3Pw?client_id=<CLIENT_ID>"

The above command returns JSON structured like this:

{
  "ca":95.70099,
  "captured_at":1400486721000,
  "key":"V3HG0CMVMk4aNQj6_YFHgQ",
  "lon":-118.369883,
  "lat":34.095438,
  "location":"De Longpre Avenue, L.A.",
  "user":"gyllen"
}

Search for an image given a sequence. If a point is provided (lat, lon), closest image will be returned.

HTTP Request

GET http://a.mapillary.com/v2/search/im/s/:key

Parameter Description
key A sequence key to use for the search
lat Latitude to be close at
lon Longitude to be close at

Response Parameters

Parameter Description
ca Angle of the image shot in degrees between 0 to 360
captured_at Time image was captured in EPOCH ms
key Key of the image
lon Longitude of image
lat Latitude of image
location String representation of where image was shot
user Username of user taken the image

GET /search/im/geojson

curl "https://a.mapillary.com/v2/search/im/geojson?client_id=<CLIENT_ID>&max_lat=55.89&max_lon=13.01&min_lat=55.875&min_lon=12.975&limit=1&page=0"

The above command returns JSON structured like this:

{
  "more": true,
  "features": [
    {
      "type": "Feature",
      "geometry": {
        "type": "Point",
        "coordinates": [
          12.44476,
          65.770999
        ]
      },
      "properties": {
        "ca": 144.747,
        "key": "T3vpeidB4_N1TX5O4fh9rw"
      }
    }
  ],
  "type": "FeatureCollection"
}

Search for images and return geojson.

Scopes

Name When
private:read Needed when project provided as query parameter

HTTP Request

GET http://a.mapillary.com/v2/search/im/geojson

Parameter Description
client_id The client id of your application
start_time Start time in EPOCH ms
end_time End time in EPOCH ms
project If added show only objects for that project, if not show public
hidden Also show hidden images, only for authed user though
me Just objects for logged in user
user Just objects for specific user
min_lat Minimum Latitude
max_lat Maximum Latitude
min_lon Minimum Longitude
max_lon Maximum Longitude
limit Results per page in pagination
page Page number in pagination

Geojson Properties

Parameter Description
ca Angle of the image shot in degrees between 0 to 360
key Key of the image

GET /search/im/geojson/close

/v2/search/im/geojson/close

curl "https://a.mapillary.com/v2/search/im/geojson/close?client_id=<CLIENT_ID>&lat=55.874973779667876&limit=1&lon=12.981805801391602&min_ca=140&max_ca=190"

The above command returns JSON structured like this:

{
    "features": [
        {
            "type": "Feature",
            "geometry": {
                "type": "Point",
                "coordinates": [
                    12.9807531619924,
                    55.8747099459846
                ]
            },
            "properties": {
                "ca": 147.372297838271,
                "key": "q0a6C3iEDjh3XUfGRmVPHQ"
            }
        }
    ],
    "type": "FeatureCollection"
}

Get images close to a certain point defined by longitude, latitude, max angle, min angle and a radius in meters in geojson format.

Scopes

Name When
private:read Needed when project provided as query parameter

HTTP Request

GET http://a.mapillary.com/v2/search/im/geojson/close

Parameter Description
client_id The client id belonging to your application
start_time Start time in EPOCH ms
end_time End time in EPOCH ms
project If added show only objects for that project, if not show all none projects
hidden Also show hidden images, only for authed user though
me Just objects for logged in user
user Just objects for specific user
lat Latitude to search in circle from
lon Longitude to search in circle from
min_ca Minimum angle of image in degrees
max_ca Maximum angle of image in degrees
distance Search radius in meters
limit Results per page in pagination
page Page number in pagination

Geojson Properties

Parameter Description
ca Angle of the image shot in degrees between 0 to 360
key Key of the image

GET /search/im/geojson/randomimage

curl "https://a.mapillary.com/v2/search/im/geojson/randomimage?client_id=<CLIENT_ID>&max_lat=55.89&max_lon=13.01&min_lat=55.875&min_lon=12.975&limit=1&page=0"

The above command returns JSON structured like this:

{
    "features": [
        {
            "type": "Feature",
            "geometry": {
                "type": "Point",
                "coordinates": [
                    13.2313177,
                    55.77544222
                ]
            },
            "properties": {
                "ca": 241.206534530401,
                "key": "MB7HcaQLeuCom53Uvez5yg"
            }
        }
    ],
    "type": "FeatureCollection"
}

Get a random image in geojson format.

Scopes

Name When
private:read Needed when project provided as query parameter

HTTP Request

GET http://a.mapillary.com/v2/search/im/geojson/randomimage

Parameter Description
client_id The client id of your application
start_time Start time in EPOCH ms
end_time End time in EPOCH ms
project If added show only objects for that project, if not show public
hidden Also show hidden images, only for authed user though
me Just objects for logged in user
user Just objects for specific user
min_lat Minimum Latitude
max_lat Maximum Latitude
min_lon Minimum Longitude
max_lon Maximum Longitude
limit Results per page in pagination
page Page number in pagination

Geojson Properties

Parameter Description
ca Angle of the image shot in degrees between 0 to 360
key Key of the image

GET /search/im/geojson/b

curl "https://a.mapillary.com/v2/search/im/geojson/b?client_id=<CLIENT_ID>&max_lat=55.89&max_lon=13.01&min_lat=55.875&min_lon=12.975&limit=1&page=0"

The above command returns JSON structured like this:

{
  "more": true,
  "features": [
    {
      "type": "Feature",
      "geometry": {
        "type": "Point",
        "coordinates": [
          12.44476,
          65.770999
        ]
      },
      "properties": {
        "blurs" [],
        "ca": 144.747,
        "key": "T3vpeidB4_N1TX5O4fh9rw"
      }
    }
  ],
  "type": "FeatureCollection"
}

Search for images with blurs and return geojson.

Scopes

Name When
private:read Needed when project provided as query parameter

HTTP Request

GET http://a.mapillary.com/v2/search/im/geojson/b

Parameter Description
client_id The client id of your application
start_time Start time in EPOCH ms
end_time End time in EPOCH ms
project If added show only objects for that project, if not show public
hidden Also show hidden images, only for authed user though
me Just objects for logged in user
user Just objects for specific user
min_lat Minimum Latitude
max_lat Maximum Latitude
min_lon Minimum Longitude
max_lon Maximum Longitude
limit Results per page in pagination
page Page number in pagination

Geojson Properties

Parameter Description
blurs List of blurs
ca Angle of the image shot in degrees between 0 to 360
key Key of the image

GET /search/im/geojson/cm

curl "https://a.mapillary.com/v2/search/im/geojson/cm?client_id=<CLIENT_ID>&max_lat=55.89&max_lon=13.01&min_lat=55.875&min_lon=12.975&limit=1&page=0"

The above command returns JSON structured like this:

{
  "more": true,
  "features": [
    {
      "type": "Feature",
      "geometry": {
        "type": "Point",
        "coordinates": [
          12.44476,
          65.770999
        ]
      },
      "properties": {
        "commants": []
        "ca": 144.747,
        "key": "T3vpeidB4_N1TX5O4fh9rw"
      }
    }
  ],
  "type": "FeatureCollection"
}

Search for images and return geojson.

Scopes

Name When
private:read Needed when project provided as query parameter

HTTP Request

GET http://a.mapillary.com/v2/search/im/geojson

Parameter Description
client_id The client id of your application
start_time Start time in EPOCH ms
end_time End time in EPOCH ms
project If added show only objects for that project, if not show public
hidden Also show hidden images, only for authed user though
me Just objects for logged in user
user Just objects for specific user
min_lat Minimum Latitude
max_lat Maximum Latitude
min_lon Minimum Longitude
max_lon Maximum Longitude
limit Results per page in pagination
page Page number in pagination

Geojson Properties

Parameter Description
comments List of comments
ca Angle of the image shot in degrees between 0 to 360
key Key of the image

GET /search/im/geojson/or

/v2/search/im/or

curl "https://a.mapillary.com/v2/search/im/geojson/or?or_classes[]=prohibitory_no&or_classes[]=other_no&or_package=trafficsign_eu_1.0&min_score=2&client_id=<CLIENT_ID>"

The above command returns JSON structured like this:

{
  "more": true,
  "type": "FeatureCollection",
  "features": [
    {
      "type":"Feature",
      "geometry": {
        "type":"Point",
        "coordinates":[17.972541,59.295835]
      },
      "properties": {
        "key":"4IJdgEKP9lgmrMdAw776sA",
        "boundary": {
          "min_lat":59.295835,
          "max_lat":59.295835,
          "min_lon":17.972541,
          "max_lon":17.972541
        },
        "rects": [
          {
            "package":"trafficsign_eu_1.0",
            "score":"2.20829962158",
            "type":"other_no_entry",
            "rect": [
              0.943359375,
              0.58984375,
              0.96875,
              0.6328125
            ]
          }
        ]
      }
    }
  ]
}

Search for recognized objects in images.

Scopes

Name When
private:read Needed when project provided as query parameter

HTTP Request

GET http://a.mapillary.com/v2/search/im/or/geojson

Parameter Description
client_id The client id belonging to your application
start_time Start time in EPOCH ms
end_time End time in EPOCH ms
project If added show only objects for that project, if not show all none projects
hidden Also show hidden images, only for authed user though
me Just objects for logged in user
user Just objects for specific user
min_lat Minimum Latitude
max_lat Maximum Latitude
min_lon Minimum Longitude
max_lon Maximum Longitude
or_package Package to search in (available “trafficsign_eu_1.0” and “trafficsign_us_1.0”)
or_classes[] Arrays of classes to search for. Search are on prefix “prohibitory” will match both “prohibitory_no_parking” and “prohibitory_no_traffic_both_ways”. While “prohibitory_no_parking” will only match “prohibitory_no_parking”. For a list of classes see Object Recognition Classes.
min_score Minimal category score
limit Results per page in pagination
page Page number in pagination

Geojson properties

Property Description
key Key of the image
boundary Boundary fully covering the Geojson object
rects Matches in form of rectangles
rects[package] Object recognition package
rects[score] Confidence score of match
rects[type] Classification of match
rects[rect] Rectangle of match in normalized coordinates (0 to 1) [North West X, North West Y, South East X, South East Y]

GET /search/s

curl "https://a.mapillary.com/v2/search/s?client_id=<CLIENT_ID>&max_lat=55.89&max_lon=13.01&min_lat=55.875&min_lon=12.975&limit=1&page=0"

The above command returns JSON structured like this:

{
  "more": true,
  "ss": [
    {
      "boundary": {
        "min_lat": 55.881391,
        "min_lon": 12.998529,
        "max_lat": 55.881464,
        "max_lon": 12.999371
      },
      "captured_at": 1393974729000,
      "cas": [
        277.0169,
        276.5476,
        276.9955,
        282.9344,
        278.464,
        262.5792
      ],
      "coords": [
        [
          12.999371,
          55.881391
        ],
        [
          12.999269,
          55.881393
        ],
        [
          12.99903,
          55.881421
        ],
        [
          12.998885,
          55.881438
        ],
        [
          12.998721,
          55.881446
        ],
        [
          12.998529,
          55.881464
        ]
      ],
      "key": "VbAjo-zFc0-5MnLr9NGo3w",
      "keys": [
        "_OIeLo5yNx2t062lsRvY3g",
        "M1khnbbXaYMmy6R8E9qWnQ",
        "kASJKwnX8LqkCGvdZmNKVQ",
        "QVF-zyrwsIEi9ggQuIymzw",
        "hZwk1eIWOGe93CtLmZ4JMw",
        "zaDzim32bzYiwvN1vjrnYQ"
      ]
    }
  ]
}

Search for sequences.

Scopes

Name When
private:read Needed when project provided as query parameter

HTTP Request

GET http://a.mapillary.com/v2/search/s

Parameter Description
client_id The client id of your application
start_time Start time in EPOCH ms
end_time End time in EPOCH ms
project If added show only objects for that project, if not show public
hidden Also show hidden images, only for authed user though
me Just objects for logged in user
user Just objects for specific user
min_lat Minimum Latitude
max_lat Maximum Latitude
min_lon Minimum Longitude
max_lon Maximum Longitude
limit Results per page in pagination
page Page number in pagination

Response Parameters

Parameter Description
more True if there are more sequences in pagination false if not.
ss A list of sequences
ss[boundary] Box covering the whole sequence
ss[captured_at] When the sequence was captured
ss[cas] List of angles
ss[coords] List of coords for the sequence
ss[key] Key of the sequence
ss[keys] Array of the keys of the images in the sequence

GET /search/s/geojson

curl "https://a.mapillary.com/v2/search/s/geojson?client_id=<CLIENT_ID>&max_lat=55.89&max_lon=13.01&min_lat=55.875&min_lon=12.975&limit=1&page=0"

The above command returns JSON structured like this:

{
  "more": true,
  "features": [
    {
      "type": "Feature",
      "geometry": {
        "type": "LineString",
        "coordinates": [
          [
            12.999371,
            55.881391
          ],
          [
            12.999269,
            55.881393
          ],
          [
            12.99903,
            55.881421
          ],
          [
            12.998885,
            55.881438
          ],
          [
            12.998721,
            55.881446
          ],
          [
            12.998529,
            55.881464
          ]
        ],
        "bbox": [
          12.998529,
          55.881391,
          12.999371,
          55.881464
        ]
      },
      "properties": {
        "boundary": {
          "min_lat": 55.881391,
          "min_lon": 12.998529,
          "max_lat": 55.881464,
          "max_lon": 12.999371
        },
        "captured_at": 1393974729000,
        "key": "VbAjo-zFc0-5MnLr9NGo3w",
        "keys": [
          "_OIeLo5yNx2t062lsRvY3g",
          "M1khnbbXaYMmy6R8E9qWnQ",
          "kASJKwnX8LqkCGvdZmNKVQ",
          "QVF-zyrwsIEi9ggQuIymzw",
          "hZwk1eIWOGe93CtLmZ4JMw",
          "zaDzim32bzYiwvN1vjrnYQ"
        ],
        "cas": [
          277.0169,
          276.5476,
          276.9955,
          282.9344,
          278.464,
          262.5792
        ]
      }
    }
  ],
  "type": "FeatureCollection"
}

Search for sequences.

Scopes

Name When
private:read Needed when project provided as query parameter

HTTP Request

GET http://a.mapillary.com/v2/search/s

Parameter Description
client_id The client id of your application
start_time Start time in EPOCH ms
end_time End time in EPOCH ms
project If added show only objects for that project, if not show public
hidden Also show hidden images, only for authed user though
me Just objects for logged in user
user Just objects for specific user
min_lat Minimum Latitude
max_lat Maximum Latitude
min_lon Minimum Longitude
max_lon Maximum Longitude
limit Results per page in pagination
page Page number in pagination

Geojson Properties

Parameter Description
boundary Box covering the whole sequence
captured_at When the sequence was captured
key Key of the sequence
keys Array of the keys of the images in the sequence
cas List of angles

GET /search/s/ul

curl "https://a.mapillary.com/v2/search/s/ul?client_id=<CLIENT_ID>&max_lat=55.89&max_lon=13.01&min_lat=55.875&min_lon=12.975&limit=2&page=0"

The above command returns JSON structured like this:

{
    "more": true,
    "ss": [
        {
            "captured_at": 0,
            "key": "rF7dghtIOCO2sq7zRRmAMg",
            "mkey": "Zdns26dIV6MCevbhgzZcxw",
            "location": null,
            "starred": false,
            "user": null,
            "views": 6
        },
        {
            "captured_at": 1437785407000,
            "key": "q1W4_L_Y8u6EIyKzUfTZNg",
            "mkey": "YD9VH3xf-e1Ynic8pURtLg",
            "location": "Avenue Kennedy, Nîmes",
            "starred": false,
            "user": "balooval",
            "views": 4
        }
    ]
}

Search for sequences return a condensed format good for listing sequences.

Scopes

Name When
private:read Needed when project provided as query parameter

HTTP Request

GET http://a.mapillary.com/v2/search/s

Parameter Description
client_id The client id of your application
start_time Start time in EPOCH ms
end_time End time in EPOCH ms
project If added show only objects for that project, if not show public
hidden Also show hidden images, only for authed user though
me Just objects for logged in user
user Just objects for specific user
min_lat Minimum Latitude
max_lat Maximum Latitude
min_lon Minimum Longitude
max_lon Maximum Longitude
limit Results per page in pagination
page Page number in pagination

Response Parameters

Parameter Description
more True if there are more sequences in pagination false if not.
ss A list of sequences in a special list format
ss[captured_at] When the sequence was captured
ss[key] Key of the sequence
ss[mkey] Key of image representing sequence
ss[location] Location where sequence was captured
ss[starred] If sequence is starred in system
ss[user] User thats owner of sequence
ss[views] Number of views of sequence

GET /search/u

curl "https://a.mapillary.com/v2/search/u?client_id=<CLIENT_ID>&match=gyl"

The above command returns JSON structured like this:

{
    "matches": [
        {
            "username": "gyllan"
        },
        {
            "username": "gyllen",
            "avatar": "22b939a6ac2e3920a434c0d9/profile.png"
        }
    ]
}

Search for usernames.

HTTP Request

GET http://a.mapillary.com/v2/search/u

Parameter Description
match String to try to match for a username

Response Parameters

Parameter Description
matches[] List of matched users
matches[username] Matched username
matches[avatar] If available link to avatar of matched username

Stats /stats

GET /stats/im

curl "https://a.mapillary.com/v2/stats/im?client_id=<CLIENT_ID>"

The above command returns JSON structured like this:

{
    "images": 27450593,
    "distance": 703360611
}

Stats about images in Mapillary system

HTTP Request

GET http://a.mapillary.com/v2/stats/im

Response Parameters

Parameter Description
images Total number of images on Mapillary
distance Total meters mapped on Mapillary

GET /stats/im/toplist

curl "https://a.mapillary.com/v2/stats/toplist?client_id=<CLIENT_ID>&cname=sweden"

The above command returns JSON structured like this:

{
  "toplist": [
    {
      "list": [
        {
          "username": "jesolem",
          "count": 938
        },
        {
          "username": "mthagaard",
          "count": 334
        }
      ],
      "week": "41"
    }
  ],
  "total": [
    {
      "username": "vicroads",
      "count": 3276096
    },
    {
      "username": "cogg",
      "count": 2119347
    }
  ],
  "total_count": 27496346
}

Top lists stats for Mapillary.

HTTP Request

GET http://a.mapillary.com/v2/stats/toplist

Parameter Description
cname Name of country for stats (optional if not added whole world is assumed)
limit Number of users in every list (default 10, optional)

Response Parameters

Parameter Description
toplist List of toplists per week
toplist[list] The actual list
toplist[list][username] Username in list
toplist[list][count] Count of images in that week for user
total The total toplist over all weeks
total[username] Username in list
total[count] Count of images in total for user
total_count Total number of images in selection

User /u

/v2/u

Get public information and stats about Mapillary users.

GET /u/:user

/v2/im/:user

curl "https://a.mapillary.com/v2/u/gyllen?client_id=<CLIENT_ID>"

The above command returns JSON structured like this:

{
  "about":"I work in the deep dark mines of Mapillary.",
  "avatar":"https://d4vkkeqw582u.cloudfront.net/bf9970c0c76a3fe226aa212e/profile.png",
  "distance_all":518570,
  "histogram": [
    {
      "day":1381622400000,
      "count":295
    },
    {
      "day":1381708800000,
      "count":152
    }
  ],
  "images_none_processed":0,
  "images_hidden":28,
  "images_all":21606,
  "user":"gyllen",
  "user_uuid":"2BJl04nvnfW1y2GNaj7x5w"
}

Retrieve public information and stats about a Mapillary user.

Scopes

none

HTTP Request

GET https://a.mapillary.com/v2/u/:user

Parameter Description
user Username of user wanted for lookup

Response Parameters

Parameter Description
about Descriptive user entered text about user
avatar Users avatar image
distance_all Distance mapped in meters by user
histogram Users uploads the last year, day by day
images_none_processed Public images uploaded that entered the Mapillary system but are not fully processed
images_hidden Public images hidden by user
images_all Total amount of public images uploaded by user
user username
user_uuid Unique user identifier in the Mapillary system

GET /u/:user/feed

/v2/im/:user/feed

curl "https://a.mapillary.com/v2/u/gyllen/feed?client_id=<CLIENT_ID>"

The above command returns JSON structured like this:

{
  "feed": [
    {
      "action": "commented",
      "timestamp": 1396244855000,
      "object": "comment",
      "key": "kKQR3646GpRnbqZSFvVlNA",
      "user": "gyllen",
      "other_user": "jesolem",
      "image_url": "https://d1cuyjsrcm0gby.cloudfront.net/kKQR3646GpRnbqZSFvVlNA/thumb-320.jpg",
      "main_description": "Whoa, this is a comment.",
      "detail_description": "",
      "location": "Lomma, Sweden",
      "version": 1
    }
  ]
}

Retrieve a users feed.

HTTP Request

GET https://a.mapillary.com/v2/u/:user/feed

Parameter Description
user Username of user to get connections for
version Get only feed items with this version and below
limit Results per page in pagination
page Page number in pagination

Response Parameters

Parameter Description
feed Array of events in the feed sorted by newest first
feed[action] Action or feed event
feed[timestamp] When event happened
feed[object] Type of object operated at
feed[key] Key of object
feed[user] User responsible for action
feed[other_use] Secondary user in action
feed[image_url] Link to an image representing the event
feed[main_description] Main description
feed[detail_description] Longer and more detailed description of event
feed[location] Location where event happened
feed[version] Version of feed event

GET /u/:user/profile.png

/v2/im/:user/profile.png

curl "https://a.mapillary.com/v2/u/gyllen/profile.png?client_id=<CLIENT_ID>"

The above command redirects to the users profile picture

Retrieve a users profile image.

HTTP Request

GET https://a.mapillary.com/v2/u/:user/profile.png

Traffic Sign Classes

Mapillary detects traffic signs on images. Traffic signs are divided to 5 different categories Regulatory (Prohibitory), Warning (Danger), Mandatory, Information, Priority (EU only). The same traffic sign can be visually different in different countries and regions. In some cases, the same traffic sign class can have visual variation even in the same country/region. To handle all these, the naming of traffic signs follows the convention

{category}–{traffic-sign-type}–{country_code}–{variant}.

For instance, warningcrossroads-aheadcaontario stands for the Ontario-variant of Canadian crossroads-ahead sign in the warning category.

Country variation of traffic signs are handled by country(region)-specific detector packages. The number of available traffic sign classes and latest detector package version for each supported country(region) are summarized in the table below (Variants of a sign in the same country are counted as one class).

Country Country Code Total Version
Australia au 75 2.0
Brazil br 82 5.0
Canada ca 86 2.0
Europe eu 79 6.0
USA us 84 3.0

The traffic sign classes in each of the detector packages are listed below in details. The naming of the package follows the convention {trafficsign}_{country_code}_{version}.

trafficsign_eu_6.0

Priority

Nbr Name
1 priority–give-way–de
2 priority–give-way-to-oncoming-traffic–de
3 priority–give-way-to-oncoming-traffic–se
4 priority–priority-road–de
5 priority–stop–de

Information

Nbr Name
1 information–bus-stop–de
2 information–disabled-persons–de
3 information–parking–de
4 information–pedestrian-crossing–de

Prohibitory

Nbr Name
1 prohibitory–maximum-height–de
2 prohibitory–maximum-speed-limit-10–de
3 prohibitory–maximum-speed-limit-100–de
4 prohibitory–maximum-speed-limit-110–de
5 prohibitory–maximum-speed-limit-120–de
6 prohibitory–maximum-speed-limit-130–de
7 prohibitory–maximum-speed-limit-20–de
8 prohibitory–maximum-speed-limit-30–de
9 prohibitory–maximum-speed-limit-40–de
10 prohibitory–maximum-speed-limit-50–de
11 prohibitory–maximum-speed-limit-60–de
12 prohibitory–maximum-speed-limit-70–de
13 prohibitory–maximum-speed-limit-80–de
14 prohibitory–maximum-speed-limit-90–de
15 prohibitory–maximum-width–de
16 prohibitory–no-bicycles–se
17 prohibitory–no-entry–de
18 prohibitory–no-heavy-goods-vehicles–de
19 prohibitory–no-left-turn–de
20 prohibitory–no-motor-vehicles–de
21 prohibitory–no-motorcycles–de
22 prohibitory–no-overtaking–de
23 prohibitory–no-overtaking–ru
24 prohibitory–no-overtaking-by-heavy-goods-vehicles–de
25 prohibitory–no-parking–de
26 prohibitory–no-pedestrians–se
27 prohibitory–no-right-turn–de
28 prohibitory–no-stopping-or-parking–de
29 prohibitory–no-traffic-both-ways–de
30 prohibitory–no-u-turn–de
31 prohibitory–no-vehicles-carrying-dangerous-goods–de

Mandatory

Nbr Name
1 mandatory–bicycles-only–de
2 mandatory–dual-path-cyclists-and-pedestrians–de
3 mandatory–dual-path-pedestrians-and-cyclists–de
4 mandatory–pass-on-either-side–de
5 mandatory–pass-on-this-side-left–de
6 mandatory–pass-on-this-side-right–de
7 mandatory–pedestrians-only–de
8 mandatory–pedestrians-only–gr
9 mandatory–pedestrians-only–it
10 mandatory–proceed-straight–de
11 mandatory–proceed-straight-or-turn-left–de
12 mandatory–proceed-straight-or-turn-right–de
13 mandatory–roundabout–de
14 mandatory–shared-path-pedestrians-and-cyclists–de
15 mandatory–turn-left–de
16 mandatory–turn-left-ahead–de
17 mandatory–turn-right–de
18 mandatory–turn-right-ahead–de
19 mandatory–turn-right-ahead–it

Danger

Nbr Name
1 danger–children–de
2 danger–children–it
3 danger–children–se
4 danger–children–uk
5 danger–crossroads-ahead–de
6 danger–crossroads-with-priority-to-the-right–de
7 danger–curve-left–de
8 danger–curve-right–de
9 danger–cyclists-crossing-ahead–de
10 danger–cyclists-crossing-ahead–de–right
11 danger–cyclists-crossing-ahead–fi
12 danger–cyclists-crossing-ahead–it
13 danger–cyclists-crossing-ahead–se
14 danger–double-curve-first-left–de
15 danger–double-curve-first-right–de
16 danger–junction-with-a-side-road-perpendicular-left–de
17 danger–junction-with-a-side-road-perpendicular-right–de
18 danger–other-danger–de
19 danger–pedestrian-crossing–de
20 danger–pedestrian-crossing–es
21 danger–pedestrian-crossing–pl
22 danger–pedestrian-crossing–se
23 danger–road-bump–de
24 danger–road-narrows-ahead–de
25 danger–road-narrows-ahead–es
26 danger–road-narrows-ahead–it
27 danger–road-narrows-left-ahead–de
28 danger–road-narrows-right-ahead–de
29 danger–roadworks-ahead–de
30 danger–roadworks-ahead–de–v1
31 danger–roundabout-ahead–de
32 danger–roundabout-ahead–es
33 danger–slippery-road-surface–de
34 danger–traffic-signals-ahead–de
35 danger–two-way-traffic-ahead–be
36 danger–two-way-traffic-ahead–de
37 danger–two-way-traffic-ahead–es
38 danger–uneven-road-ahead–de
39 danger–unprotected-quayside-or-riverbank–de
40 danger–wild-animals–de

trafficsign_ca_2.0

Regulatory

Nbr Name
1 regulatory–maximum-speed-limit-10–ca
2 regulatory–maximum-speed-limit-100–ca
3 regulatory–maximum-speed-limit-110–ca
4 regulatory–maximum-speed-limit-120–ca
5 regulatory–maximum-speed-limit-15–ca
6 regulatory–maximum-speed-limit-20–ca
7 regulatory–maximum-speed-limit-25–ca
8 regulatory–maximum-speed-limit-30–ca
9 regulatory–maximum-speed-limit-35–ca
10 regulatory–maximum-speed-limit-40–ca
11 regulatory–maximum-speed-limit-45–ca
12 regulatory–maximum-speed-limit-5–ca
13 regulatory–maximum-speed-limit-50–ca
14 regulatory–maximum-speed-limit-55–ca
15 regulatory–maximum-speed-limit-60–ca
16 regulatory–maximum-speed-limit-65–ca
17 regulatory–maximum-speed-limit-70–ca
18 regulatory–maximum-speed-limit-75–ca
19 regulatory–maximum-speed-limit-80–ca
20 regulatory–maximum-speed-limit-85–ca
21 regulatory–maximum-speed-limit-90–ca
22 regulatory–no-bicycles–ca
23 regulatory–no-entry–ca
24 regulatory–no-heavy-goods-vehicles–ca
25 regulatory–no-left-turn–ca
26 regulatory–no-motor-vehicles–ca
27 regulatory–no-motorcycles–ca
28 regulatory–no-overtaking–ca
29 regulatory–no-parking–ca
30 regulatory–no-pedestrians–ca
31 regulatory–no-right-turn–ca
32 regulatory–no-stopping–ca
33 regulatory–no-u-turn–ca
34 regulatory–stop–ca

Warning

Nbr Name
1 warning–bump-in-road–ca
2 warning–crossroads-ahead–ca
3 warning–crossroads-ahead–ca–ontario
4 warning–curve-left-ahead–ca
5 warning–curve-left-ahead–ca–ontario
6 warning–curve-right-ahead–ca
7 warning–curve-right-ahead–ca–ontario
8 warning–cyclists-crossing–ca
9 warning–dip-in-road–ca
10 warning–divided-highway-ahead–ca
11 warning–divided-highway-ends–ca
12 warning–domestic-animals–ca
13 warning–double-curve-first-left-ahead–ca–ontario
14 warning–double-curve-first-right-ahead–ca–ontario
15 warning–double-turn-first-left-ahead–ca
16 warning–double-turn-first-right-ahead–ca
17 warning–emergency-vehicles–ca
18 warning–equestrians–ca
19 warning–falling-rocks-or-debris-right–ca
20 warning–farm-vehicles–ca
21 warning–hairpin-curve-right-ahead–ca
22 warning–hairpin-curve-right-ahead–ca–ontario
23 warning–height-restriction-ahead–ca–feet
24 warning–height-restriction-ahead–ca–meters
25 warning–junction-with-a-side-road-perpendicular-left-ahead–ca
26 warning–junction-with-a-side-road-perpendicular-left-ahead–ca–ontario
27 warning–junction-with-a-side-road-perpendicular-right-ahead–ca
28 warning–junction-with-a-side-road-perpendicular-right-ahead–ca–ontario
29 warning–level-railroad-crossing-with-barriers-ahead–ca
30 warning–loose-road-surface–ca
31 warning–narrow-bridge-ahead–ca
32 warning–opening-or-swing-bridge–ca
33 warning–pavement-ends–ca
34 warning–pedestrian-crossing–ca
35 warning–pedestrian-crossing–ca–quebec
36 warning–playground-ahead–ca
37 warning–road-narrows-ahead–ca
38 warning–road-narrows-left-ahead–ca
39 warning–road-narrows-right-ahead–ca
40 warning–roundabout-ahead–ca
41 warning–shared-road-motocycles-cyclists–ca
42 warning–slippery-road-surface–ca
43 warning–steep-hill-downwards–ca
44 warning–steep-hill-upwards–ca
45 warning–stop-ahead–ca
46 warning–stop-ahead–ca–ontario
47 warning–traffic-merges-left-ahead–ca
48 warning–traffic-merges-left-ahead–ca–ontario
49 warning–traffic-merges-right-ahead–ca
50 warning–traffic-merges-right-ahead–ca–ontario
51 warning–traffic-signals-ahead–ca
52 warning–tunnel-ahead–ca
53 warning–turn-left–ca
54 warning–turn-right–ca
55 warning–two-way-traffic-ahead–ca
56 warning–uncontrolled-railroad-crossing-ahead–ca
57 warning–uneven-road–ca
58 warning–wild-animals–ca
59 warning–winding-road-first-left-ahead–ca
60 warning–winding-road-first-right-ahead–ca
61 warning–workers-in-road-ahead–ca
62 warning–yield-ahead–ca

Mandatory

Nbr Name
1 mandatory–pass-on-either-side–ca

trafficsign_au_2.0

Prohibitory

Nbr Name
1 prohibitory–maximum-speed-limit-10–au
2 prohibitory–maximum-speed-limit-100–au
3 prohibitory–maximum-speed-limit-110–au
4 prohibitory–maximum-speed-limit-120–au
5 prohibitory–maximum-speed-limit-130–au
6 prohibitory–maximum-speed-limit-20–au
7 prohibitory–maximum-speed-limit-30–au
8 prohibitory–maximum-speed-limit-40–au
9 prohibitory–maximum-speed-limit-50–au
10 prohibitory–maximum-speed-limit-60–au
11 prohibitory–maximum-speed-limit-70–au
12 prohibitory–maximum-speed-limit-80–au
13 prohibitory–maximum-speed-limit-90–au

Regulatory

Nbr Name
1 regulatory–no-bicycles–au
2 regulatory–no-entry–au
3 regulatory–no-heavy-goods-vehicles–au
4 regulatory–no-left-turn–au
5 regulatory–no-pedestrians–au
6 regulatory–no-right-turn–au
7 regulatory–no-u-turn–au
8 regulatory–stop–au
9 regulatory–yield–au
10 regulatory–yield-to-oncoming-traffic–au

Warning

Nbr Name
1 warning–added-lane-left–au
2 warning–added-lane-right–au
3 warning–bump-in-road–au
4 warning–children–au
5 warning–crossroads-ahead–au
6 warning–curve-left-ahead–au
7 warning–curve-right-ahead–au
8 warning–cyclists-crossing–au
9 warning–dip-in-road–au
10 warning–divided-highway-ahead–au
11 warning–divided-highway-ends–au
12 warning–domestic-animals–au
13 warning–double-curve-first-left-ahead–au
14 warning–double-curve-first-right-ahead–au
15 warning–double-turn-first-left-ahead–au
16 warning–double-turn-first-right-ahead–au
17 warning–emu-crossing–au–left
18 warning–emu-crossing–au–right
19 warning–equestrians–au
20 warning–falling-rocks-or-debris-left–au
21 warning–farm-vehicles–au
22 warning–hairpin-curve-left-ahead–au
23 warning–hairpin-curve-right-ahead–au
24 warning–horizontal-alignment-left–au
25 warning–horizontal-alignment-right–au
26 warning–junction-with-a-side-road-perpendicular-left-ahead–au
27 warning–junction-with-a-side-road-perpendicular-right-ahead–au
28 warning–koala–au
29 warning–koala-crossing–au
30 warning–narrow-bridge-ahead–au
31 warning–pedestrian-crossing–au
32 warning–pedestrian-crossing–au–retired
33 warning–pedestrians-cyclists–au
34 warning–railway-level-crossing-with-flashing-signals-ahead–au
35 warning–road-narrows-ahead–au
36 warning–roundabout-ahead–au
37 warning–slippery-motorcycles–au–victoria
38 warning–slippery-road-surface–au
39 warning–steep-hill-downwards–au
40 warning–steep-hill-upwards–au
41 warning–stop-ahead–au
42 warning–traffic-merges-left-ahead–au
43 warning–traffic-merges-right-ahead–au
44 warning–traffic-signals-ahead–au
45 warning–truck-crossing–au
46 warning–turn-left–au
47 warning–turn-right–au
48 warning–two-way-traffic-ahead–au
49 warning–uncontrolled-railroad-crossing-ahead–au
50 warning–wild-animals–au
51 warning–winding-road-first-left-ahead–au
52 warning–winding-road-first-right-ahead–au
53 warning–wombat-crossing–au
54 warning–wombat-crossing–au–victoria
55 warning–yield-ahead–au

trafficsign_br_5.0

Prohibitory

Nbr Name
1 prohibitory–maximum-speed-limit-10–br
2 prohibitory–maximum-speed-limit-100–br
3 prohibitory–maximum-speed-limit-110–br
4 prohibitory–maximum-speed-limit-120–br
5 prohibitory–maximum-speed-limit-130–br
6 prohibitory–maximum-speed-limit-20–br
7 prohibitory–maximum-speed-limit-30–br
8 prohibitory–maximum-speed-limit-40–br
9 prohibitory–maximum-speed-limit-50–br
10 prohibitory–maximum-speed-limit-60–br
11 prohibitory–maximum-speed-limit-70–br
12 prohibitory–maximum-speed-limit-80–br
13 prohibitory–maximum-speed-limit-90–br

Information

Nbr Name
1 information–parking–br
2 information–two-way-traffic–br

Warning

Nbr Name
1 warning–added-lane-right–br
2 warning–bump-in-road–br
3 warning–cyclists-crossing–br
4 warning–divided-highway-ahead–br
5 warning–domestic-animals–br
6 warning–double-curve-first-left-ahead–br
7 warning–double-curve-first-right-ahead–br
8 warning–double-reverse-curve–br
9 warning–double-turn-first-left-ahead–br
10 warning–double-turn-first-right-ahead–br
11 warning–falling-rocks-or-debris-right–br
12 warning–farm-vehicles–br
13 warning–flaggers-in-road-ahead–br
14 warning–height-restriction-ahead–br–feet
15 warning–horizontal-alignment-right–br
16 warning–junction-with-a-side-road-acute-left-ahead–br
17 warning–junction-with-a-side-road-perpendicular-left-ahead–br
18 warning–junction-with-a-side-road-perpendicular-right-ahead–br
19 warning–loop-pretzel–br
20 warning–loose-road-surface–br
21 warning–pass-left-or-right–br
22 warning–pedestrian-crossing–br
23 warning–playground-ahead–br
24 warning–road-narrows-ahead–br
25 warning–road-narrows-left-ahead–br
26 warning–road-narrows-right-ahead–br
27 warning–roundabout-ahead–br
28 warning–school-zone–br
29 warning–slippery-road-surface–br
30 warning–stop-ahead–br
31 warning–t-roads–br
32 warning–traffic-merges-right-ahead–br
33 warning–traffic-signals-ahead–br
34 warning–triple-reverse-curve–br
35 warning–trucks-rollover–br
36 warning–turn-curve-left–br
37 warning–turn-curve-right–br
38 warning–turn-left–br
39 warning–turn-right–br
40 warning–two-way-traffic-ahead–br
41 warning–uneven-road–br
42 warning–wild-animals–br
43 warning–winding-road-first-left-ahead–br
44 warning–winding-road-first-right-ahead–br
45 warning–workers-in-road-ahead–br
46 warning–y-roads–br

Regulatory

Nbr Name
1 regulatory–no-bicycles–br
2 regulatory–no-entry–br
3 regulatory–no-heavy-goods-vehicles–br
4 regulatory–no-heavy-goods-vehicles–br–v1
5 regulatory–no-left-or-u-turn–br
6 regulatory–no-left-turn–br
7 regulatory–no-motor-vehicles–br
8 regulatory–no-motorcycles–br
9 regulatory–no-overtaking–br
10 regulatory–no-parking–br
11 regulatory–no-parking–br–v1
12 regulatory–no-pedestrians–br
13 regulatory–no-right-turn–br
14 regulatory–no-stopping–br
15 regulatory–no-straight-through–br
16 regulatory–no-u-turn–br
17 regulatory–stop–br
18 regulatory–yield–br

Mandatory

Nbr Name
1 mandatory–bicycles-only–br
2 mandatory–keep-right–br
3 mandatory–proceed-straight–br
4 mandatory–transit-only–br
5 mandatory–turn-right–br

trafficsign_us_3.0

Regulatory

Nbr Name
1 regulatory–maximum-speed-limit-10–us
2 regulatory–maximum-speed-limit-15–us
3 regulatory–maximum-speed-limit-20–us
4 regulatory–maximum-speed-limit-25–us
5 regulatory–maximum-speed-limit-30–us
6 regulatory–maximum-speed-limit-35–us
7 regulatory–maximum-speed-limit-40–us
8 regulatory–maximum-speed-limit-45–us
9 regulatory–maximum-speed-limit-50–us
10 regulatory–maximum-speed-limit-55–us
11 regulatory–maximum-speed-limit-60–us
12 regulatory–maximum-speed-limit-65–us
13 regulatory–maximum-speed-limit-70–us
14 regulatory–maximum-speed-limit-75–us
15 regulatory–maximum-speed-limit-80–us
16 regulatory–maximum-speed-limit-85–us
17 regulatory–no-bicycles–us
18 regulatory–no-entry–us
19 regulatory–no-heavy-goods-vehicles–us
20 regulatory–no-left-or-u-turn–us
21 regulatory–no-left-turn–us
22 regulatory–no-left-turn–us–v1
23 regulatory–no-parking–us
24 regulatory–no-pedestrians–us
25 regulatory–no-right-turn–us
26 regulatory–no-right-turn–us–v1
27 regulatory–no-straight-through–us
28 regulatory–no-u-turn–us
29 regulatory–no-u-turn–us–v1
30 regulatory–stop–us
31 regulatory–yield–us

Warning

Nbr Name
1 warning–added-lane-from-entering-roadway–us
2 warning–added-lane-right–us
3 warning–crossroads-ahead–us
4 warning–cyclists-crossing–us
5 warning–divided-highway-ahead–us
6 warning–domestic-animals–us
7 warning–double-curve-first-left-ahead–us
8 warning–double-curve-first-right-ahead–us
9 warning–double-reverse-curve–us
10 warning–double-turn-first-left-ahead–us
11 warning–double-turn-first-right-ahead–us
12 warning–emergency-vehicles–us
13 warning–falling-rocks-or-debris-right–us
14 warning–flaggers-in-road-ahead–us
15 warning–hairpin-curve-right-ahead–us
16 warning–height-restriction-ahead–us–feet
17 warning–height-restriction-ahead–us–meters
18 warning–horizontal-alignment-left–us
19 warning–horizontal-alignment-right–us
20 warning–junction-with-a-side-road-acute-left-ahead–us
21 warning–junction-with-a-side-road-acute-right-ahead–us
22 warning–junction-with-a-side-road-perpendicular-left-ahead–us
23 warning–junction-with-a-side-road-perpendicular-right-ahead–us
24 warning–loop-270-degree–us
25 warning–loop-pretzel–us
26 warning–motorcycle-crossing–us
27 warning–narrow-bridge-ahead–us
28 warning–offset-roads–us
29 warning–pass-left-or-right–us
30 warning–pedestrian-crossing–us
31 warning–playground-ahead–us
32 warning–road-narrows-ahead–us
33 warning–road-narrows-left-ahead–us
34 warning–road-narrows-right-ahead–us
35 warning–roundabout-ahead–us
36 warning–slippery-bicycles–us
37 warning–slippery-road-surface–us
38 warning–steep-hill-downwards–us
39 warning–stop-ahead–us
40 warning–t-roads–us
41 warning–traffic-merges-right-ahead–us
42 warning–traffic-signals-ahead–us
43 warning–tram-crossing–us
44 warning–triple-reverse-curve–us
45 warning–trucks-rollover–us
46 warning–turn-curve-left–us
47 warning–turn-curve-right–us
48 warning–turn-left–us
49 warning–turn-right–us
50 warning–two-way-traffic-ahead–us
51 warning–uncontrolled-railroad-crossing-ahead–us
52 warning–winding-road-first-left-ahead–us
53 warning–winding-road-first-right-ahead–us
54 warning–workers-in-road-ahead–us
55 warning–y-roads–us
56 warning–yield-ahead–us

Mandatory

Nbr Name
1 mandatory–pass-on-either-side–us

Errors

Error codes

MAPILLARY HTTP ERROR CODES

200 OK - Everything worked as expected.
400 Bad Request - Often missing required parameters.
401 Unauthorized - Your client_id is invalid, the OAuth token is invalid, client_id and OAuth token do not match.
404 Not Found - The API does not exist, the requested object does not exist.
429 Too Many Requests - You're requesting over your limit.
500 Internal Server Error - Something went wrong on Mapillary's servers.

The Mapillary API uses the following HTTP error codes:

Error Code Meaning Description
200 OK Everything worked as expected.
400 Bad Request Often missing required parameters.
401 Unauthorized Your client_id is invalid, the OAuth token is invalid, client_id and OAuth token do not match.
404 Not Found The API does not exist, the requested object does not exist.
429 Too Many Requests You’re requesting over your limit.
500 Internal Server Error Something went wrong on Mapillary’s servers.

Error messages

MAPILLARY ERROR RETURN FORMAT

{
  "code": "client_id_invalid",
  "message": "This API call needs a client_id"
}

MAPILLARY ERROR RETURN CODES

400 parameter_missing - One or more parameters are missing
400 parameter_invalid - One or more parameters are invalid
401 client_id_differ - The provided client id differs from auth token
401 client_id_invalid - The provided client id is invalid
401 client_id_missing - This API call needs a client_id
401 user_not_authenticated - User Not Authenticated
404 not_found - Resource not found
500 mapillary_internal_server_error - Internal Error: XXX

The Mapillary API can return the following error codes.

Response Parameters

Parameter Description
code The Mapillary error code
message A short message describing the error

Codes

HTTP Error code Code Description
400 parameter_missing One or more parameters are missing
400 parameter_invalid One or more parameters are invalid
401 client_id_differ The provided client id differs from auth token
401 client_id_invalid The provided client id is invalid
401 client_id_missing This API call needs a client_id
401 user_not_authenticated User Not Authenticated
404 not_found Resource not found
500 mapillary_internal_server_error Internal Error: XXX

Vector Tiles

MAPILLARY VECTOR TILE LAYERS

{
    "geometry": {
        "type": "LineString",
        "coordinates": [
            [
                13.038319945335386,
                55.734078661240154
            ],
            [
                13.038319945335386,
                55.73408772229796
            ],
            [
                13.038454055786133,
                55.734117925808796
            ],
            [
                13.040154576301575,
                55.734468284826406
            ],
            [
                13.04026186466217,
                55.734335390396815
            ],
            [
                13.040202856063843,
                55.73421155654382
            ],
            [
                13.040181398391724,
                55.73413604790405
            ],
            [
                13.040170669555664,
                55.73406053911823
            ]
        ]
    },
    "type": "Feature",
    "properties": {
        "username": "jesolem",
        "layer": "mapillary-sequences",
        "keys": "[\"nngnUoa9JR8q6no_RSn4Vg\", \"tU2JRf2oPQA5oTIfNmuG3Q\", \"W0KJ9IOAQoTeJmOZ9jaRHA\", \"4VCz6H7b5YFXWfarAJfhwA\", \"Pl4G2m_NFVxlQkvk_UECSA\", \"CtdZ-CDIBP8ebLqlyVasYQ\", \"jrnQ5mMtNcv6-1dVcELl7g\", \"ZxMXaXLbcjPtz6KN-rzcJg\"]",
        "cas": "[63.77213, 60.03442, 59.99939, 64.32697, 68.62, 73.33667, 74.14969, 72.56522]",
        "key": "xbWOXMuSU9IK_7nzilUq3Q",
        "captured_at": "1401121244000"
    }
}

You can access Mapillary data through vector tiles. We are using the Mapbox vector tile format that uses protocol buffers to store the data efficiently.

The data tiles have layers that you can interact with, for example to do hover animations and show basic information.

The tile URL pattern is:

https://d2munx5tg0hw47.cloudfront.net/tiles/{z}/{x}/{y}.mapbox

Tile Content

The vector tiles contain Mapillary sequences as a list of LineString objects, example to the right.

The properties are:

Property Description
username The user who took the sequence
layer The name of the layer
keys Image keys for the images in the sequence
cas Compass angles of the images in the sequence (in degrees)
key Sequence key for the sequence
captured_at Time image was captured in EPOCH ms