Recording Locations Service

With our Recording Locations Service, you can retrieve the locations of available imagery (the ‘recording dots’), so you can use them in your own mapping application (GIS). For Dutch clients, this service also includes the recording locations of Oblique imagery. The Recording Locations Service is available as a Web Feature Service (WFS).

Picture

Obtain credentials

Before you can start using the Recording Locations Service, you need to have credentials. If you do not have them yet, please use this form to request access.

Request your credentials
Picture

Read the documentation

Everything you need to know about the use of our Recording Locations Service can be found below in the Service Documentation.

Read the service documentation
Picture

View our examples

To help you getting started, we have created a set of code examples for you. You can use them as a basis for your own service requests.

Explore the code examples

Service Documentation

Filter capabilities

The Recording Locations Service offers filter capabilities that follow the OGC Filter Encoding Implementation Specification.

Geometry operators:

  • gml:Point

  • gml:Envelope

Spatial operators:

  • BBOX

  • DWithin

Comparison operators: (not available yet for "thirdPartyRecording")

  • EqualTo and NotEqualTo

  • LessThan and GreaterThan

  • LessThanEqualTo and GreaterThanEqualTo

  • NullCheck

  • Between

Using the Recording Locations Service

The Recording Locations Service is a Web Feature Service (WFS) which can be accessed through this URL:

https://atlasapi.cyclomedia.com/api/recording/wfs

This WFS supports the following operations:

  • GetCapabilities

  • DescribeFeatureType

  • GetFeature

Both HTTP GET request and HTTP POST requests are supported.

Response

The output of a request can be given as Geography Markup Language (GML) version 3.1.1 or as GeoJSON. Default output is GML, but this can be changed using the ‘outputformat’ parameter. The application schemas can be retrieved by the URLs below.

Application schemas

GML application schema

To view the GML application schema, use this URL:

https://atlasapi.cyclomedia.com/api/recordings/wfs?service=WFS&version=1.1.0&request=DescribeFeatureType&typename=atlas:Recording

GeoJSON application schema

To view the GeoJSON application schema, use this URL:

https://atlasapi.cyclomedia.com/api/recordings/wfs?service=WFS&version=1.1.0&request=DescribeFeatureType&typename=atlas:Recording&outputformat=application/json

Feature types and properties

Feature 'recording'

A feature of the type 'recording' the following properties:

imageId

Readable identification of the recording. Type: string.

recordedAt

Timestamp and offset to UTC of the recording. Type: dateTime.

location

Spatial field that holds the geographic longitude, latitude, and height of the recording location in a specified spatial reference system (SRS). The longitude and latitude coordinates are in degrees or in meters (depending on the SRS), the height is in meters. Type: gml:pointPropertyType.

height

Height of the recording location (in meters). The height system is included in the system attribute. This property is only included when the specified coordinate system is two dimensional and when a height value is available. Type: float.

latitudePrecision  |  longitudePrecision  |  heightPrecision

Precision of the latitude coordinate, longitude coordinate, or height, respectively (all in meters). If the value is null, this precision is not known. Type: float.

orientation  |  orientationPrecision

The orientation of the recording relative to the geographic north (in degrees), and the precision of that orientation (also in degrees). Type: float.

groundLevelOffset

Offset of the camera above the ground level (in meters). Type: float.

recorderDirection

The direction of the recorder (e.g. the car) relative to the geographic north (in degrees). Type: float.

expiredAt

Date when the recording is expired. Type: dateTime.

productType

Type of the recording (Cyclorama, Aquarama). Type: atlas:ProductType.

Images

List of additional images related to the recording. Type: atlas:ImageType.

isAuthorized

Indicates whether the user is authorized to view this recording. Type: boolean.

tileSchema

The authorized tile schema of this recording (NoTiling, Dcr9Tiling, Dcr10Tiling or Dcr11Tiling). Type: string.

Note: This property is deprecated and only for legacy purposes. You should migrate to panoramaTileSchema and panoramaMaxResolutionAllowed.

year

The year associated with this recording. Type: integer.

hasDepthMap

Indicates whether the recording has associated depth maps. Type: boolean.

depthMapVersion

The version of the depth maps. This property is only included when the recording has depth maps. Type: float.

depthMapPrecision

The precision of the depth maps. This property is only included when the recording has depth maps. Type: float.

ownerInfo

The owner of the recording (for copyright purposes). Type: atlas:OwnerInfo.

isBlurred

Indicates whether the recording is blurred. Type: boolean.

pointCloud

The unique identifier of the point cloud data in PointScene. Type: string.

panoramaTileSchema

The tileschema of this recording (TS_11, TS_100, TS_100_PLUS or TS_250). Type: string.

panoramaMaxResolutionAllowed

The maximum resolution allowed for the user for this recording (MaxResolution20MP, MaxResolution100MP or MaxResolution250MP). Type: string.

Feature 'imageType'

A feature of the type 'imageType' the following properties:

imageId

Readable identification of the image. Type: string.

location

Spatial field that holds the geographic longitude, latitude, and height of the recording location in a specified spatial reference system (SRS). The longitude and latitude coordinates are in degrees or in meters (depending on the SRS), the height is in meters. Type: gml:pointPropertyType.

height

Height of the image location (in meters). The height system is included in the system attribute. This property is only included when the specified coordinate system is two dimensional and when a height value is available. Type: float.

latitudeStDev  |  longitudeStDev  |  heightStDev

Standard deviation of the latitude coordinate, longitude coordinate, or height, respectively (all in meters). If the value is null, this precision is not known. Type: float.

yaw  |  pitch  |  roll 

The yaw, pitch, and roll of the center of the image in the specified spatial reference system (all in degrees). Type: float.

yawStDev  |  pitchStDev  |  rollStDev

The standard deviation of the yaw, pitch, and roll, respectively (all in degrees). Type: float.

focalLength

The focal length (in pixels) of the image. This is only applicable for a Picture-in-Picture (PiP) image. Type: float.

principalPointX  |  principalPointY

The x-coordinate and y-coordinate (in pixels) of the principal point. Type: float.

imageType

Type of the image. Can be one of Panorama, AdditionalImageFront, AdditionalImageRear or SinglePip. Type: ImageTypeType.

imageHeight  |  imageWidth

Height and width of the image in pixels. Type: integer.

isAuthorized

Indicates whether the user is authorized to view this image. Type: boolean.

Feature 'OwnerInfo'

A feature of the type 'OwnerInfo' the following properties:

name

The name of the owner. Type: string.

url

The URL of the owner. Type: xlink:simpleLink.

Feature 'thirdPartyRecording'

A feature of the type 'thirdPartyRecording' the following properties:

imageId

Readable identification of the image. Type: string.

location

Spatial field that holds the geographic longitude, latitude, and height of the recording location in a specified spatial reference system (SRS). The longitude and latitude coordinates are in degrees or in meters (depending on the SRS), the height is in meters. Type: gml:pointPropertyType.

height

Height of the image location (in meters). The height system is included in the system attribute. This property is only included when the specified coordinate system is two dimensional and when a height value is available. Type: float.

yaw  |  pitch  |  roll 

The yaw, pitch, and roll of the center of the image in the specified spatial reference system (all in degrees). Type: float.

recordedAt

Timestamp and offset to UTC of the recording. Type: dateTime.

tileSchema

The authorized tile schema of this recording (NoTiling, Dcr9Tiling, Dcr10Tiling or Dcr11Tiling). Type: string.

Note: This property is deprecated and only for legacy purposes. You should migrate to panoramaTileSchema and panoramaMaxResolutionAllowed.

panoramaTileSchema

The tileschema of this recording (TS_11, TS_100, TS_100_PLUS or TS_250). Type: string.

customerId

The customer that produces the entry. Type: string.

projectId

The "projectId" serves as the singular identifier for a specific car drive undertaken by the customer, during which panoramic photos and satellite navigation points were gathered, consolidating all entries made during that drive. Type: string.

groundLevelOffset

Offset of the camera above the ground level (in meters). Type: float.

orientation

The orientation of the recording relative to the geographic north (in degrees), and the precision of that orientation (also in degrees). Type: float.

imageTilesUrlStructure

URI and basic structural format of the image files that compose the panorama, based on a given location. Type: string.

depthTilesUrlStructure

URI and basic structural format of the image files that compose the panorama, based on a given location. Type: string.

productType


As the third party recordings can refer to many models and features, this property informs the entry's type. Type: string.

Exception reporting

When the WFS Recordings service encounters an error while processing a request or when it receives an unrecognized request, this will be returned as an exception report in the response. The format of the XML response is described in OWS Common Implementation Specification:

<ows:ExceptionReport version="1.1.0" 
xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance
xmlns:ows=http://www.opengis.net/ows
xsi:schemaLocation="http://www.opengis.net/ows">
<ows:Exception exceptionCode="{the exception code}">
<ows:ExceptionText>
{the error message}
</ows:ExceptionText>
</ows:Exception>
</ows:ExceptionReport>

For GeoJSON, the response will be:

{ 
"exception": {
"code": null,
"locator": null,
"text": "<the error message>"
}
}

Code examples

Note: you can use Postman to test our web services and try out the code examples below.

Return the capabilities of the service

How to get the capabilities of the Recording Locations Service in either GML format (default) or GeoJSON.

Get the capabilities of the Recording Locations Service

https://atlasapi.cyclomedia.com/api/recording/wfs?service=WFS&version=1.1.0&request=GetCapabilities

With a response in GeoJSON format:

https://atlasapi.cyclomedia.com/api/recording/wfs?service=WFS&version=1.1.0&request=GetCapabilities&outputFormat=application/json