Method: photos.batchUpdate
קל לארגן דפים בעזרת אוספים
אפשר לשמור ולסווג תוכן על סמך ההעדפות שלך.
עדכון המטא-נתונים של Photos
, כמו מיקום, שיוך למקום, חיבורים וכו'. אין תמיכה בשינוי הפיקסלים של תמונות.
חשוב לשים לב שאם photos.batchUpdate
נכשל, חסרים שדות קריטיים או שיש שגיאת אימות. גם אם הפעולה של photos.batchUpdate
מצליחה, יכול להיות שחלק מהתמונות שבקבוצה לא יכובדו. הכשלים האלה מפורטים בכל PhotoResponse.status
ב-BatchUpdatePhotosResponse.results
. ב-photo.update
ניתן למצוא מידע על כשלים ספציפיים שעשויים להתרחש בכל תמונה.
המערכת תשתמש רק בשדות שצוינו בשדה updateMask
. אם השדה updateMask
לא מופיע, העדכון יחול על כל השדות.
מספר UpdatePhotoRequest
ההודעות ב-BatchUpdatePhotosRequest
לא יכול לחרוג מ-20.
הערה: כדי לעדכן את Pose.altitude
, צריך למלא גם את השדה Pose.latLngPair
. אחרת, הבקשה תיכשל.
בקשת HTTP
POST https://streetviewpublish.googleapis.com/v1/photos:batchUpdate
בכתובת ה-URL נעשה שימוש בתחביר המרת קידוד של gRPC.
גוף הבקשה
גוף הבקשה מכיל נתונים במבנה הבא:
ייצוג JSON |
{
"updatePhotoRequests": [
{
"photo": {
object (Photo )
},
"updateMask": string
}
]
} |
שדות |
updatePhotoRequests[] |
object
חובה. רשימה של UpdatePhotoRequests .
|
updatePhotoRequests[].photo |
object (Photo )
חובה. אובייקט Photo שמכיל את המטא-נתונים החדשים.
|
updatePhotoRequests[].updateMask |
string (FieldMask format)
חובה. מסכה שמזהה שדות במטא-נתונים של התמונה לצורך עדכון. אם אין, המטא-נתונים הישנים של Photo מוחלפים לחלוטין במטא-נתונים החדשים של Photo בבקשה הזו. העדכון ייכשל אם יצוינו שדות לא חוקיים. ברשימה שמופרדת בפסיקים, אפשר לציין כמה שדות. השדות הבאים חוקיים:
pose.heading
pose.lat_lng_pair
pose.pitch
pose.roll
pose.level
pose.altitude
connections
places
הערה: אם השדה updateMask מכיל שדות חוזרים, כל הערכים של הערכים החוזרים מוחלפים בתוכן החדש. לדוגמה, אם updateMask מכיל את connections ו-UpdatePhotoRequest.photo.connections ריק, כל החיבורים יוסרו.
|
גוף התשובה
תגובה לעדכון בכמות גדולה של מטא-נתונים מסוג Photos
או יותר.
אם הפעולה בוצעה ללא שגיאות, גוף התגובה יכיל נתונים במבנה הבא:
שדות |
results[] |
object (PhotoResponse )
רשימת תוצאות לכל Photo בנפרד, לפי סדר הבקשה.
|
היקפי ההרשאות
נדרש היקף ההרשאות הבא של OAuth:
https://www.googleapis.com/auth/streetviewpublish
למידע נוסף, קראו את המאמר סקירה כללית של OAuth 2.0.
אלא אם צוין אחרת, התוכן של דף זה הוא ברישיון Creative Commons Attribution 4.0 ודוגמאות הקוד הן ברישיון Apache 2.0. לפרטים, ניתן לעיין במדיניות האתר Google Developers. Java הוא סימן מסחרי רשום של חברת Oracle ו/או של השותפים העצמאיים שלה.
עדכון אחרון: 2025-07-25 (שעון UTC).
[null,null,["עדכון אחרון: 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)."]]