Package google.streetview.publish.v1

Index

StreetViewPublishService

Publishes and connects user-contributed photos on Street View.

BatchDeletePhotos

rpc BatchDeletePhotos(BatchDeletePhotosRequest) returns (BatchDeletePhotosResponse)

Deletes a list of Photos and their metadata.

Note that if BatchDeletePhotos fails, either critical fields are missing or there is an authentication error. Even if BatchDeletePhotos succeeds, individual photos in the batch may have failures. These failures are specified in each PhotoResponse.status in BatchDeletePhotosResponse.results. See DeletePhoto for specific failures that can occur per photo.

Authorization scopes

Requires the following OAuth scope:

  • https://www.googleapis.com/auth/streetviewpublish

For more information, see the OAuth 2.0 Overview.

BatchGetPhotos

rpc BatchGetPhotos(BatchGetPhotosRequest) returns (BatchGetPhotosResponse)

Gets the metadata of the specified Photo batch.

Note that if BatchGetPhotos fails, either critical fields are missing or there is an authentication error. Even if BatchGetPhotos succeeds, individual photos in the batch may have failures. These failures are specified in each PhotoResponse.status in BatchGetPhotosResponse.results. See GetPhoto for specific failures that can occur per photo.

Authorization scopes

Requires the following OAuth scope:

  • https://www.googleapis.com/auth/streetviewpublish

For more information, see the OAuth 2.0 Overview.

BatchUpdatePhotos

rpc BatchUpdatePhotos(BatchUpdatePhotosRequest) returns (BatchUpdatePhotosResponse)

Updates the metadata of Photos, such as pose, place association, connections, etc. Changing the pixels of photos is not supported.

Note that if BatchUpdatePhotos fails, either critical fields are missing or there is an authentication error. Even if BatchUpdatePhotos succeeds, individual photos in the batch may have failures. These failures are specified in each PhotoResponse.status in BatchUpdatePhotosResponse.results. See UpdatePhoto for specific failures that can occur per photo.

Only the fields specified in updateMask field are used. If updateMask is not present, the update applies to all fields.

The number of UpdatePhotoRequest messages in a BatchUpdatePhotosRequest must not exceed 20.

Note: To update Pose.altitude, Pose.latLngPair has to be filled as well. Otherwise, the request will fail.

Authorization scopes

Requires the following OAuth scope:

  • https://www.googleapis.com/auth/streetviewpublish

For more information, see the OAuth 2.0 Overview.

CreatePhoto

rpc CreatePhoto(CreatePhotoRequest) returns (Photo)

After the client finishes uploading the photo with the returned UploadRef, CreatePhoto publishes the uploaded Photo to Street View on Google Maps.

Currently, the only way to set heading, pitch, and roll in CreatePhoto is through the Photo Sphere XMP metadata in the photo bytes. CreatePhoto ignores the pose.heading, pose.pitch, pose.roll, pose.altitude, and pose.level fields in Pose.

This method returns the following error codes:

Authorization scopes

Requires the following OAuth scope:

  • https://www.googleapis.com/auth/streetviewpublish

For more information, see the OAuth 2.0 Overview.

CreatePhotoSequence

rpc CreatePhotoSequence(CreatePhotoSequenceRequest) returns (Operation)

After the client finishes uploading the PhotoSequence with the returned UploadRef, CreatePhotoSequence extracts a sequence of 360 photos from a video or Extensible Device Metadata (XDM, http://www.xdm.org/) to be published to Street View on Google Maps.

CreatePhotoSequence returns an Operation, with the PhotoSequence Id set in the Operation.name field.

This method returns the following error codes:

Authorization scopes

Requires the following OAuth scope:

  • https://www.googleapis.com/auth/streetviewpublish

For more information, see the OAuth 2.0 Overview.

DeletePhoto

rpc DeletePhoto(DeletePhotoRequest) returns (Empty)

Deletes a Photo and its metadata.

This method returns the following error codes:

Authorization scopes

Requires the following OAuth scope:

  • https://www.googleapis.com/auth/streetviewpublish

For more information, see the OAuth 2.0 Overview.

DeletePhotoSequence

rpc DeletePhotoSequence(DeletePhotoSequenceRequest) returns (Empty)

Deletes a PhotoSequence and its metadata.

This method returns the following error codes:

Authorization scopes

Requires the following OAuth scope:

  • https://www.googleapis.com/auth/streetviewpublish

For more information, see the OAuth 2.0 Overview.

GetPhoto

rpc GetPhoto(GetPhotoRequest) returns (Photo)

Gets the metadata of the specified Photo.

This method returns the following error codes:

Authorization scopes

Requires the following OAuth scope:

  • https://www.googleapis.com/auth/streetviewpublish

For more information, see the OAuth 2.0 Overview.

GetPhotoSequence

rpc GetPhotoSequence(GetPhotoSequenceRequest) returns (Operation)

Gets the metadata of the specified PhotoSequence via the Operation interface.

This method returns the following three types of responses:

  • Operation.done = false, if the processing of PhotoSequence is not finished yet.
  • Operation.done = true and Operation.error is populated, if there was an error in processing.
  • Operation.done = true and Operation.response is poulated, which contains a PhotoSequence message.

This method returns the following error codes:

Authorization scopes

Requires the following OAuth scope:

  • https://www.googleapis.com/auth/streetviewpublish

For more information, see the OAuth 2.0 Overview.

ListPhotoSequences

rpc ListPhotoSequences(ListPhotoSequencesRequest) returns (ListPhotoSequencesResponse)

Lists all the PhotoSequences that belong to the user, in descending CreatePhotoSequence timestamp order.

Authorization scopes

Requires the following OAuth scope:

  • https://www.googleapis.com/auth/streetviewpublish

For more information, see the OAuth 2.0 Overview.

ListPhotos

rpc ListPhotos(ListPhotosRequest) returns (ListPhotosResponse)

Lists all the Photos that belong to the user.

Note: Recently created photos that are still being indexed are not returned in the response.

Authorization scopes

Requires the following OAuth scope:

  • https://www.googleapis.com/auth/streetviewpublish

For more information, see the OAuth 2.0 Overview.

StartPhotoSequenceUpload

rpc StartPhotoSequenceUpload(Empty) returns (UploadRef)

Creates an upload session to start uploading photo sequence data. The upload URL of the returned UploadRef is used to upload the data for the photoSequence.

After the upload is complete, the UploadRef is used with CreatePhotoSequence to create the PhotoSequence object entry.

Authorization scopes

Requires the following OAuth scope:

  • https://www.googleapis.com/auth/streetviewpublish

For more information, see the OAuth 2.0 Overview.

StartUpload

rpc StartUpload(Empty) returns (UploadRef)

Creates an upload session to start uploading photo bytes. The method uses the upload URL of the returned UploadRef to upload the bytes for the Photo.

In addition to the photo requirements shown in https://support.google.com/maps/answer/7012050?ref_topic=6275604, the photo must meet the following requirements:

After the upload completes, the method uses UploadRef with CreatePhoto to create the Photo object entry.

Authorization scopes

Requires the following OAuth scope:

  • https://www.googleapis.com/auth/streetviewpublish

For more information, see the OAuth 2.0 Overview.

UpdatePhoto

rpc UpdatePhoto(UpdatePhotoRequest) returns (Photo)

Updates the metadata of a Photo, such as pose, place association, connections, etc. Changing the pixels of a photo is not supported.

Only the fields specified in the updateMask field are used. If updateMask is not present, the update applies to all fields.

This method returns the following error codes:

Authorization scopes

Requires the following OAuth scope:

  • https://www.googleapis.com/auth/streetviewpublish

For more information, see the OAuth 2.0 Overview.

BatchDeletePhotosRequest

Request to delete multiple Photos.

Fields
photo_ids[]

string

Required. IDs of the Photos. HTTP GET requests require the following syntax for the URL query parameter: photoIds=<id1>&photoIds=<id2>&....

BatchDeletePhotosResponse

Response to batch delete of one or more Photos.

Fields
status[]

Status

The status for the operation to delete a single Photo in the batch request.

BatchGetPhotosRequest

Request to get one or more Photos. By default

  • does not return the download URL for the photo bytes.

Parameters:

  • view controls if the download URL for the photo bytes is returned.
Fields
photo_ids[]

string

Required. IDs of the Photos. For HTTP GET requests, the URL query parameter should be photoIds=<id1>&photoIds=<id2>&....

view

PhotoView

Required. Specifies if a download URL for the photo bytes should be returned in the Photo response.

language_code

string

Optional. The BCP-47 language code, such as "en-US" or "sr-Latn". For more information, see http://www.unicode.org/reports/tr35/#Unicode_locale_identifier. If language_code is unspecified, the user's language preference for Google services is used.

BatchGetPhotosResponse

Response to batch get of Photos.

Fields
results[]

PhotoResponse

List of results for each individual Photo requested, in the same order as the requests in BatchGetPhotos.

BatchUpdatePhotosRequest

Request to update the metadata of photos. Updating the pixels of photos is not supported.

Fields
update_photo_requests[]

UpdatePhotoRequest

Required. List of UpdatePhotoRequests.

BatchUpdatePhotosResponse

Response to batch update of metadata of one or more Photos.

Fields
results[]

PhotoResponse

List of results for each individual Photo updated, in the same order as the request.

Connection

A connection is the link from a source photo to a destination photo.

Fields
target

PhotoId

Required. The destination of the connection from the containing photo to another photo.

CreatePhotoRequest

Request to create a Photo.

Fields
photo

Photo

Required. Photo to create.

CreatePhotoSequenceRequest

Request to create a PhotoSequence from a video.

Fields
photo_sequence

PhotoSequence

Required. PhotoSequence to create.

input_type

InputType

Required. The input form of PhotoSequence.

InputType

Input forms of PhotoSequence.

Enums
INPUT_TYPE_UNSPECIFIED Not specified. Server will return google.rpc.Code.INVALID_ARGUMENT.
VIDEO 360 Video.
XDM Extensible Device Metadata, http://www.xdm.org

DeletePhotoRequest

Request to delete a Photo.

Fields
photo_id

string

Required. ID of the Photo.

DeletePhotoSequenceRequest

Request to delete a PhotoSequence.

Fields
sequence_id

string

Required. ID of the PhotoSequence.

GetPhotoRequest

Request to get a Photo.

By default

  • does not return the download URL for the photo bytes.

Parameters:

  • view controls if the download URL for the photo bytes is returned.
Fields
photo_id

string

Required. ID of the Photo.

view

PhotoView

Required. Specifies if a download URL for the photo bytes should be returned in the Photo response.

language_code

string

The BCP-47 language code, such as "en-US" or "sr-Latn". For more information, see http://www.unicode.org/reports/tr35/#Unicode_locale_identifier. If language_code is unspecified, the user's language preference for Google services is used.

GetPhotoSequenceRequest

Request to get a PhotoSequence.

By default

Parameters:

  • view controls if the download URL for the PhotoSequence is returned.
Fields
sequence_id

string

Required. ID of the photo sequence.

view
(deprecated)

PhotoView

Specifies if a download URL for the photo sequence should be returned in download_url of individual photos in the PhotoSequence response.

Note: Currently not implemented.

filter

string

Optional. The filter expression. For example: published_status=PUBLISHED.

The filters supported are: published_status. See https://google.aip.dev/160 for more information.

GpsDataGapFailureDetails

Details related to ProcessingFailureReason#GPS_DATA_GAP. If there are multiple GPS data gaps, only the one with the largest duration is reported here.

Fields
gap_duration

Duration

The duration of the gap in GPS data that was found.

gap_start_time

Duration

Relative time (from the start of the video stream) when the gap started.

Imu

IMU data from the device sensors.

Fields
accel_mpsps[]

Measurement3d

The accelerometer measurements in meters/sec^2 with increasing timestamps from devices.

gyro_rps[]

Measurement3d

The gyroscope measurements in radians/sec with increasing timestamps from devices.

mag_ut[]

Measurement3d

The magnetometer measurements of the magnetic field in microtesla (uT) with increasing timestamps from devices.

Measurement3d

A Generic 3d measurement sample.

Fields
capture_time

Timestamp

The timestamp of the IMU measurement.

x

float

The sensor measurement in the x axis.

y

float

The sensor measurement in the y axis.

z

float

The sensor measurement in the z axis.

ImuDataGapFailureDetails

Details related to ProcessingFailureReason#IMU_DATA_GAP. If there are multiple IMU data gaps, only the one with the largest duration is reported here.

Fields
gap_duration

Duration

The duration of the gap in IMU data that was found.

gap_start_time

Duration

Relative time (from the start of the video stream) when the gap started.

InsufficientGpsFailureDetails

Details related to ProcessingFailureReason#INSUFFICIENT_GPS.

Fields
gps_points_found

int32

The number of GPS points that were found in the video.

LatLngBounds

A rectangle in geographical coordinates.

Fields
southwest

LatLng

The southwest corner of these bounds.

northeast

LatLng

The northeast corner of these bounds.

Level

Level information containing level number and its corresponding name.

Fields
number

double

Optional. Floor number, used for ordering. 0 indicates the ground level, 1 indicates the first level above ground level, -1 indicates the first level under ground level. Non-integer values are OK.

name

string

Required. A name assigned to this Level, restricted to 3 characters. Consider how the elevator buttons would be labeled for this level if there was an elevator.

ListPhotoSequencesRequest

Request to list all photo sequences that belong to the user sending the request.

Parameters:

  • pageSize determines the maximum number of photo sequences to return.
  • pageToken is the next page token value returned from a previous ListPhotoSequences request, if any.
Fields
page_size

int32

Optional. The maximum number of photo sequences to return. pageSize must be non-negative. If pageSize is zero or is not provided, the default page size of 100 is used. The number of photo sequences returned in the response may be less than pageSize if the number of matches is less than pageSize. This is currently unimplemented but is in process.

page_token

string

Optional. The nextPageToken value returned from a previous ListPhotoSequences request, if any.

filter

string

Optional. The filter expression. For example: imagery_type=SPHERICAL.

The filters supported are: imagery_type, processing_state, min_latitude, max_latitude, min_longitude, max_longitude, filename_query, min_capture_time_seconds, `max_capture_time_seconds. See https://google.aip.dev/160 for more information. Filename queries should sent as a Phrase in order to support multiple words and special characters by adding escaped quotes. Ex: filename_query="example of a phrase.mp4"

ListPhotoSequencesResponse

Response to list all photo sequences that belong to a user.

Fields
photo_sequences[]

Operation

List of photo sequences via Operation interface.

The maximum number of items returned is based on the pageSize field in the request.

Each item in the list can have three possible states,

  • Operation.done = false, if the processing of PhotoSequence is not finished yet.
  • Operation.done = true and Operation.error is populated, if there was an error in processing.
  • Operation.done = true and Operation.response contains a PhotoSequence message, In each sequence, only Id is populated.
next_page_token

string

Token to retrieve the next page of results, or empty if there are no more results in the list.

ListPhotosRequest

Request to list all photos that belong to the user sending the request.

By default

  • does not return the download URL for the photo bytes.

Parameters:

  • view controls if the download URL for the photo bytes is returned.
  • pageSize determines the maximum number of photos to return.
  • pageToken is the next page token value returned from a previous ListPhotos request, if any.
  • filter allows filtering by a given parameter. 'placeId' is the only parameter supported at the moment.
Fields
view

PhotoView

Required. Specifies if a download URL for the photos bytes should be returned in the Photos response.

page_size

int32

Optional. The maximum number of photos to return. pageSize must be non-negative. If pageSize is zero or is not provided, the default page size of 100 is used. The number of photos returned in the response may be less than pageSize if the number of photos that belong to the user is less than pageSize.

page_token

string

Optional. The nextPageToken value returned from a previous ListPhotos request, if any.

filter

string

Optional. The filter expression. For example: placeId=ChIJj61dQgK6j4AR4GeTYWZsKWw.

The filters supported are: placeId, min_latitude, max_latitude, min_longitude, max_longitude. See https://google.aip.dev/160 for more information.

language_code

string

Optional. The BCP-47 language code, such as "en-US" or "sr-Latn". For more information, see http://www.unicode.org/reports/tr35/#Unicode_locale_identifier. If language_code is unspecified, the user's language preference for Google services is used.

ListPhotosResponse

Response to list all photos that belong to a user.

Fields
photos[]

Photo

List of photos. The pageSize field in the request determines the number of items returned.

next_page_token

string

Token to retrieve the next page of results, or empty if there are no more results in the list.

NoOverlapGpsFailureDetails

Details related to PhotoSequenceProcessingFailureReason#NO_OVERLAP_GPS.

Fields
gps_start_time

Timestamp

Time of first recorded GPS point.

gps_end_time

Timestamp

Time of last recorded GPS point.

video_start_time

Timestamp

Start time of video.

video_end_time

Timestamp

End time of video.

NotOutdoorsFailureDetails

Details related to ProcessingFailureReason#NOT_OUTDOORS. If there are multiple indoor frames found, the first frame is recorded here.

Fields
start_time

Duration

Relative time (from the start of the video stream) when an indoor frame was found.

Photo

Photo is used to store 360 photos along with photo metadata.

Fields
photo_id

PhotoId

Required. Output only. Required when updating a photo. Output only when creating a photo. Identifier for the photo, which is unique among all photos in Google.

upload_reference

UploadRef

Input only. Required when creating a photo. Input only. The resource URL where the photo bytes are uploaded to.

download_url

string

Output only. The download URL for the photo bytes. This field is set only when GetPhotoRequest.view is set to PhotoView.INCLUDE_DOWNLOAD_URL.

thumbnail_url

string

Output only. The thumbnail URL for showing a preview of the given photo.

pose

Pose

Optional. Pose of the photo.

connections[]

Connection

Optional. Connections to other photos. A connection represents the link from this photo to another photo.

capture_time

Timestamp

Optional. Absolute time when the photo was captured. When the photo has no exif timestamp, this is used to set a timestamp in the photo metadata.

upload_time

Timestamp

Output only. Time when the image was uploaded.

places[]

Place

Optional. Places where this photo belongs.

view_count

int64

Output only. View count of the photo.

transfer_status

TransferStatus

Output only. Status of rights transfer on this photo.

maps_publish_status

MapsPublishStatus

Output only. Status in Google Maps, whether this photo was published or rejected.

MapsPublishStatus

Publication status of the photo in Google Maps.

Enums
UNSPECIFIED_MAPS_PUBLISH_STATUS The status of the photo is unknown.
PUBLISHED The photo is published to the public through Google Maps.
REJECTED_UNKNOWN The photo has been rejected for an unknown reason.

TransferStatus

Status of rights transfer.

Enums
TRANSFER_STATUS_UNKNOWN The status of this transfer is unspecified.
NEVER_TRANSFERRED This photo has never been in a transfer.
PENDING This photo transfer has been initiated, but the receiver has not yet responded.
COMPLETED The photo transfer has been completed, and this photo has been transferred to the recipient.
REJECTED The recipient rejected this photo transfer.
EXPIRED The photo transfer expired before the recipient took any action.
CANCELLED The sender cancelled this photo transfer.
RECEIVED_VIA_TRANSFER The recipient owns this photo due to a rights transfer.

PhotoId

Identifier for a Photo.

Fields
id

string

A unique identifier for a photo.

PhotoResponse

Response payload for a single Photo in batch operations including BatchGetPhotos and BatchUpdatePhotos.

Fields
status

Status

The status for the operation to get or update a single photo in the batch request.

photo

Photo

The Photo resource, if the request was successful.

PhotoSequence

A sequence of 360 photos along with metadata.

Fields
id

string

Output only. Unique identifier for the photo sequence. This also acts as a long running operation ID if uploading is performed asynchronously.

photos[]

Photo

Output only. Photos with increasing timestamps.

upload_reference

UploadRef

Input only. Required when creating photo sequence. The resource name where the bytes of the photo sequence (in the form of video) are uploaded.

capture_time_override

Timestamp

Optional. Absolute time when the photo sequence starts to be captured. If the photo sequence is a video, this is the start time of the video. If this field is populated in input, it overrides the capture time in the video or XDM file.

upload_time

Timestamp

Output only. The time this photo sequence was created in uSV Store service.

raw_gps_timeline[]

Pose

Input only. Raw GPS measurements with increasing timestamps from the device that aren't time synced with each photo. These raw measurements will be used to infer the pose of each frame. Required in input when InputType is VIDEO and raw GPS measurements are not in Camera Motion Metadata Track (CAMM). User can indicate which takes precedence using gps_source if raw GPS measurements are provided in both raw_gps_timeline and Camera Motion Metadata Track (CAMM).

gps_source

GpsSource

Input only. If both raw_gps_timeline and the Camera Motion Metadata Track (CAMM) contain GPS measurements, indicate which takes precedence.

imu

Imu

Input only. Three axis IMU data for the collection. If this data is too large to put in the request, then it should be put in the CAMM track for the video. This data always takes precedence over the equivalent CAMM data, if it exists.

processing_state

ProcessingState

Output only. The processing state of this sequence.

failure_reason

ProcessingFailureReason

Output only. If this sequence has processing_state = FAILED, this will contain the reason why it failed. If the processing_state is any other value, this field will be unset.

failure_details

ProcessingFailureDetails

Output only. If this sequence has failure_reason set, this may contain additional details about the failure.

distance_meters

double

Output only. The computed distance of the photo sequence in meters.

sequence_bounds

LatLngBounds

Output only. A rectangular box that encapsulates every image in this photo sequence.

view_count

int64

Output only. The total number of views that all the published images in this PhotoSequence have received.

filename

string

Output only. The filename of the upload. Does not include the directory path. Only available if the sequence was uploaded on a platform that provides the filename.

GpsSource

Primary source of GPS measurements.

Enums
PHOTO_SEQUENCE GPS in raw_gps_timeline takes precedence if it exists.
CAMERA_MOTION_METADATA_TRACK GPS in Camera Motion Metadata Track (CAMM) takes precedence if it exists.

PhotoView

Specifies which view of the Photo to include in the response.

Enums
BASIC Server responses do not include the download URL for the photo bytes. The default value.
INCLUDE_DOWNLOAD_URL Server responses include the download URL for the photo bytes.

Place

Place metadata for an entity.

Fields
place_id

string

Place identifier, as described in https://developers.google.com/places/place-id.

name

string

Output only. The name of the place, localized to the language_code.

language_code

string

Output only. The language_code that the name is localized with. This should be the language_code specified in the request, but may be a fallback.

Pose

Raw pose measurement for an entity.

Fields
lat_lng_pair

LatLng

Latitude and longitude pair of the pose, as explained here: https://cloud.google.com/datastore/docs/reference/rest/Shared.Types/LatLng When creating a Photo, if the latitude and longitude pair are not provided, the geolocation from the exif header is used. A latitude and longitude pair not provided in the photo or exif header causes the photo process to fail.

altitude

double

Altitude of the pose in meters above WGS84 ellipsoid. NaN indicates an unmeasured quantity.

heading

double

The following pose parameters pertain to the center of the photo. They match https://developers.google.com/streetview/spherical-metadata. Compass heading, measured at the center of the photo in degrees clockwise from North. Value must be >=0 and <360. NaN indicates an unmeasured quantity.

pitch

double

Pitch, measured at the center of the photo in degrees. Value must be >=-90 and <= 90. A value of -90 means looking directly down, and a value of 90 means looking directly up. NaN indicates an unmeasured quantity.

roll

double

Roll, measured in degrees. Value must be >= 0 and <360. A value of 0 means level with the horizon. NaN indicates an unmeasured quantity.

gps_record_timestamp_unix_epoch

Timestamp

Time of the GPS record since UTC epoch.

level

Level

Level (the floor in a building) used to configure vertical navigation.

accuracy_meters

float

The estimated horizontal accuracy of this pose in meters with 68% confidence (one standard deviation). For example, on Android, this value is available from this method: https://developer.android.com/reference/android/location/Location#getAccuracy(). Other platforms have different methods of obtaining similar accuracy estimations.

ProcessingFailureDetails

Additional details to accompany the ProcessingFailureReason enum. This message is always expected to be used in conjunction with ProcessingFailureReason, and the oneof value set in this message should match the FailureReason.

Fields
Union field details. Only one set of details will be set, and must match the corresponding enum in ProcessingFailureReason. details can be only one of the following:
insufficient_gps_details

InsufficientGpsFailureDetails

See InsufficientGpsFailureDetails.

gps_data_gap_details

GpsDataGapFailureDetails

See GpsDataGapFailureDetails.

imu_data_gap_details

ImuDataGapFailureDetails

See ImuDataGapFailureDetails.

not_outdoors_details

NotOutdoorsFailureDetails

See NotOutdoorsFailureDetails.

no_overlap_gps_details

NoOverlapGpsFailureDetails

See NoOverlapGpsFailureDetails.

ProcessingFailureReason

The possible reasons this PhotoSequence failed to process.

Enums
PROCESSING_FAILURE_REASON_UNSPECIFIED The failure reason is unspecified, this is the default value.
LOW_RESOLUTION Video frame's resolution is too small.
DUPLICATE This video has been uploaded before.
INSUFFICIENT_GPS Too few GPS points.
NO_OVERLAP_GPS No overlap between the time frame of GPS track and the time frame of video.
INVALID_GPS GPS is invalid (e.x. all GPS points are at (0,0))
FAILED_TO_REFINE_POSITIONS The sequence of photos could not be accurately located in the world.
TAKEDOWN The sequence was taken down for policy reasons.
CORRUPT_VIDEO The video file was corrupt or could not be decoded.
INTERNAL A permanent failure in the underlying system occurred.
INVALID_VIDEO_FORMAT The video format is invalid or unsupported.
INVALID_VIDEO_DIMENSIONS Invalid image aspect ratio found.
INVALID_CAPTURE_TIME Invalid capture time. Timestamps were from the future.
GPS_DATA_GAP GPS data contains a gap greater than 5 seconds in duration.
JUMPY_GPS GPS data is too erratic to be processed.
INVALID_IMU IMU (Accelerometer, Gyroscope, etc.) data are not valid. They may be missing required fields (x, y, z or time), may not be formatted correctly, or any other issue that prevents our systems from parsing it.
INSUFFICIENT_IMU Too few IMU points.
INSUFFICIENT_OVERLAP_TIME_SERIES Insufficient overlap in the time frame between GPS, IMU, and other time series data.
IMU_DATA_GAP IMU (Accelerometer, Gyroscope, etc.) data contain gaps greater than 0.1 seconds in duration.
UNSUPPORTED_CAMERA The camera is not supported.
NOT_OUTDOORS Some frames were indoors, which is unsupported.
INSUFFICIENT_VIDEO_FRAMES Not enough video frames.
INSUFFICIENT_MOVEMENT Not enough moving data.

ProcessingState

The processing state of the sequence. The states move as follows:

     +-------------------------+
     |                         |
 +---v---+  +----------+  +----+----+
 |PENDING+-->PROCESSING+-->PROCESSED|
 +---+---+  +----+-----+  +----+----+
     |           |             |
     |        +--v---+         |
     +-------->FAILED<---------+
              +------+

The sequence may move to FAILED from any state. Additionally, a processed sequence may be re-processed at any time.

Enums
PROCESSING_STATE_UNSPECIFIED The state is unspecified, this is the default value.
PENDING The sequence has not yet started processing.
PROCESSING The sequence is currently in processing.
PROCESSED The sequence has finished processing including refining position.
FAILED The sequence failed processing. See FailureReason for more details.

UpdatePhotoRequest

Request to update the metadata of a Photo. Updating the pixels of a photo is not supported.

Fields
photo

Photo

Required. Photo object containing the new metadata.

update_mask

FieldMask

Required. Mask that identifies fields on the photo metadata to update. If not present, the old Photo metadata is entirely replaced with the new Photo metadata in this request. The update fails if invalid fields are specified. Multiple fields can be specified in a comma-delimited list.

The following fields are valid:

  • pose.heading
  • pose.lat_lng_pair
  • pose.pitch
  • pose.roll
  • pose.level
  • pose.altitude
  • connections
  • places

Note: When updateMask contains repeated fields, the entire set of repeated values get replaced with the new contents. For example, if updateMask contains connections and UpdatePhotoRequest.photo.connections is empty, all connections are removed.

UploadRef

Upload reference for media files.

Fields
Union field file_source. Required. file_source can be only one of the following:
upload_url

string

An upload reference should be unique for each user. It follows the form: "https://streetviewpublish.googleapis.com/media/user/{account_id}/photo/{upload_reference}"