Method: photos.batchUpdate
Sử dụng bộ sưu tập để sắp xếp ngăn nắp các trang
Lưu và phân loại nội dung dựa trên lựa chọn ưu tiên của bạn.
Cập nhật siêu dữ liệu của Photos
, chẳng hạn như tư thế, liên kết địa điểm, kết nối, v.v. Không hỗ trợ thay đổi pixel của ảnh.
Xin lưu ý rằng nếu photos.batchUpdate
không thành công thì có nghĩa là sẽ thiếu các trường quan trọng hoặc đã xảy ra lỗi xác thực. Ngay cả khi photos.batchUpdate
thành công, các ảnh riêng lẻ trong lô vẫn có thể gặp lỗi. Những lỗi này được chỉ định trong từng PhotoResponse.status
trong BatchUpdatePhotosResponse.results
. Hãy xem photo.update
để biết những lỗi cụ thể có thể xảy ra với mỗi ảnh.
Chỉ sử dụng các trường được chỉ định trong trường updateMask
. Nếu không có updateMask
, nội dung cập nhật sẽ áp dụng cho tất cả các trường.
Số lượng thông báo UpdatePhotoRequest
trong BatchUpdatePhotosRequest
không được vượt quá 20.
Lưu ý: Để cập nhật Pose.altitude
, bạn cũng phải điền Pose.latLngPair
. Nếu không, yêu cầu sẽ không thành công.
Yêu cầu HTTP
POST https://streetviewpublish.googleapis.com/v1/photos:batchUpdate
URL sử dụng cú pháp Chuyển mã gRPC.
Nội dung yêu cầu
Nội dung yêu cầu chứa dữ liệu có cấu trúc sau:
Biểu diễn dưới dạng JSON |
{
"updatePhotoRequests": [
{
"photo": {
object (Photo )
},
"updateMask": string
}
]
} |
Trường |
updatePhotoRequests[] |
object
Bắt buộc. Danh sách UpdatePhotoRequests .
|
updatePhotoRequests[].photo |
object (Photo )
Bắt buộc. Đối tượng Photo chứa siêu dữ liệu mới.
|
updatePhotoRequests[].updateMask |
string (FieldMask format)
Bắt buộc. Mặt nạ xác định các trường trong siêu dữ liệu ảnh cần cập nhật. Nếu không có, siêu dữ liệu Photo cũ sẽ được thay thế hoàn toàn bằng siêu dữ liệu Photo mới trong yêu cầu này. Không cập nhật được nếu bạn chỉ định các trường không hợp lệ. Bạn có thể chỉ định nhiều trường trong danh sách được phân tách bằng dấu phẩy. Sau đây là các trường hợp lệ:
pose.heading
pose.lat_lng_pair
pose.pitch
pose.roll
pose.level
pose.altitude
connections
places
Lưu ý: Khi updateMask chứa các trường lặp lại, toàn bộ tập hợp giá trị lặp lại sẽ được thay thế bằng nội dung mới. Ví dụ: nếu updateMask chứa connections và UpdatePhotoRequest.photo.connections là trống thì mọi kết nối đều bị xoá.
|
Nội dung phản hồi
Phản hồi cho yêu cầu cập nhật hàng loạt siêu dữ liệu của một hoặc nhiều Photos
.
Nếu thành công, phần nội dung phản hồi sẽ chứa dữ liệu có cấu trúc sau:
Biểu diễn dưới dạng JSON |
{
"results": [
{
object (PhotoResponse )
}
]
} |
Trường |
results[] |
object (PhotoResponse )
Danh sách kết quả cho từng Photo được cập nhật, theo cùng thứ tự như yêu cầu.
|
Phạm vi uỷ quyền
Yêu cầu phạm vi OAuth sau:
https://www.googleapis.com/auth/streetviewpublish
Để biết thêm thông tin, hãy xem bài viết Tổng quan về OAuth 2.0.
Trừ phi có lưu ý khác, nội dung của trang này được cấp phép theo Giấy phép ghi nhận tác giả 4.0 của Creative Commons và các mẫu mã lập trình được cấp phép theo Giấy phép Apache 2.0. Để biết thông tin chi tiết, vui lòng tham khảo Chính sách trang web của Google Developers. Java là nhãn hiệu đã đăng ký của Oracle và/hoặc các đơn vị liên kết với Oracle.
Cập nhật lần gần đây nhất: 2025-07-25 UTC.
[null,null,["Cập nhật lần gần đây nhất: 2025-07-25 UTC."],[[["\u003cp\u003eThe API updates metadata of photos, such as pose, connections, and place association, but does not change pixel data.\u003c/p\u003e\n"],["\u003cp\u003eRequests are submitted as a batch of up to 20 \u003ccode\u003eUpdatePhotoRequest\u003c/code\u003e messages specifying the photo and fields to update.\u003c/p\u003e\n"],["\u003cp\u003eIf the \u003ccode\u003eupdateMask\u003c/code\u003e is not provided, all fields of the Photo resource will be updated with the values provided in the request.\u003c/p\u003e\n"],["\u003cp\u003eWhen updating \u003ccode\u003ePose.altitude\u003c/code\u003e, \u003ccode\u003ePose.latLngPair\u003c/code\u003e must also be specified, or the request will fail.\u003c/p\u003e\n"],["\u003cp\u003eThis API requires the \u003ccode\u003ehttps://www.googleapis.com/auth/streetviewpublish\u003c/code\u003e OAuth scope for authorization.\u003c/p\u003e\n"]]],["This document details the process of updating photo metadata via the `photos:batchUpdate` method. It outlines that you can update fields like pose, place association, and connections, but not photo pixels. The request involves sending `UpdatePhotoRequests` within a `BatchUpdatePhotosRequest` to `POST https://streetviewpublish.googleapis.com/v1/photos:batchUpdate`. An `updateMask` specifies which fields to modify. The response contains a list of `PhotoResponse` objects, indicating the success or failure of each photo update. A maximum of 20 `UpdatePhotoRequest` messages are allowed.\n"],null,["# Method: photos.batchUpdate\n\n- [HTTP request](#body.HTTP_TEMPLATE)\n- [Request body](#body.request_body)\n - [JSON representation](#body.request_body.SCHEMA_REPRESENTATION)\n- [Response body](#body.response_body)\n - [JSON representation](#body.BatchUpdatePhotosResponse.SCHEMA_REPRESENTATION)\n- [Authorization scopes](#body.aspect)\n- [Try it!](#try-it)\n\nUpdates the metadata of [Photos](/streetview/publish/reference/rest/v1/photo#Photo), such as pose, place association, connections, etc. Changing the pixels of photos is not supported.\n\nNote that if [photos.batchUpdate](/streetview/publish/reference/rest/v1/photos/batchUpdate#google.streetview.publish.v1.StreetViewPublishService.BatchUpdatePhotos) fails, either critical fields are missing or there is an authentication error. Even if [photos.batchUpdate](/streetview/publish/reference/rest/v1/photos/batchUpdate#google.streetview.publish.v1.StreetViewPublishService.BatchUpdatePhotos) succeeds, individual photos in the batch may have failures. These failures are specified in each [PhotoResponse.status](/streetview/publish/reference/rest/v1/PhotoResponse#FIELDS.status) in [BatchUpdatePhotosResponse.results](/streetview/publish/reference/rest/v1/photos/batchUpdate#body.BatchUpdatePhotosResponse.FIELDS.results). See [photo.update](/streetview/publish/reference/rest/v1/photo/update#google.streetview.publish.v1.StreetViewPublishService.UpdatePhoto) for specific failures that can occur per photo.\n\nOnly the fields specified in `updateMask` field are used. If `updateMask` is not present, the update applies to all fields.\n\nThe number of `UpdatePhotoRequest` messages in a `BatchUpdatePhotosRequest` must not exceed 20.\n\u003e Note: To update [Pose.altitude](/streetview/publish/reference/rest/v1/photo#Pose.FIELDS.altitude), [Pose.latLngPair](/streetview/publish/reference/rest/v1/photo#Pose.FIELDS.lat_lng_pair) has to be filled as well. Otherwise, the request will fail.\n\n### HTTP request\n\n`POST https://streetviewpublish.googleapis.com/v1/photos:batchUpdate`\n\nThe URL uses [gRPC Transcoding](https://google.aip.dev/127) syntax.\n\n### Request body\n\nThe request body contains data with the following structure:\n\n| JSON representation |\n|------------------------------------------------------------------------------------------------------------------------------------------|\n| ``` { \"updatePhotoRequests\": [ { \"photo\": { object (/streetview/publish/reference/rest/v1/photo#Photo) }, \"updateMask\": string } ] } ``` |\n\n| Fields ||\n|------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `updatePhotoRequests[]` | `object` Required. List of `UpdatePhotoRequests`. |\n| `updatePhotoRequests[].photo` | `object (`[Photo](/streetview/publish/reference/rest/v1/photo#Photo)`)` Required. [Photo](/streetview/publish/reference/rest/v1/photo#Photo) object containing the new metadata. |\n| `updatePhotoRequests[].updateMask` | `string (`[FieldMask](https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#google.protobuf.FieldMask)` format)` Required. Mask that identifies fields on the photo metadata to update. If not present, the old [Photo](/streetview/publish/reference/rest/v1/photo#Photo) metadata is entirely replaced with the new [Photo](/streetview/publish/reference/rest/v1/photo#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` \u003e 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. |\n\n### Response body\n\nResponse to batch update of metadata of one or more [Photos](/streetview/publish/reference/rest/v1/photo#Photo).\n\nIf successful, the response body contains data with the following structure:\n\n| JSON representation |\n|---------------------------------------------------------------------------------------------|\n| ``` { \"results\": [ { object (/streetview/publish/reference/rest/v1/PhotoResponse) } ] } ``` |\n\n| Fields ||\n|-------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `results[]` | `object (`[PhotoResponse](/streetview/publish/reference/rest/v1/PhotoResponse)`)` List of results for each individual [Photo](/streetview/publish/reference/rest/v1/photo#Photo) updated, in the same order as the request. |\n\n### Authorization scopes\n\nRequires the following OAuth scope:\n\n- `https://www.googleapis.com/auth/streetviewpublish`\n\nFor more information, see the [OAuth 2.0 Overview](https://developers.google.com/identity/protocols/OAuth2)."]]