Update the media item with the specified id. Only the id and description fields of the media item are read. The media item must have been created by the developer via the API and must be owned by the user.

Scopes

You will need authorization for the https://www.googleapis.com/auth/photoslibrary.edit.appcreateddata scope to make a valid call.

If unset, the scope for this method defaults to https://www.googleapis.com/auth/photoslibrary.edit.appcreateddata. You can set the scope for this method like this: photoslibrary1 --scope <scope> media-items patch ...

Required Scalar Argument

  • <id> (string)
    • Identifier for the media item. This is a persistent identifier that can be used between sessions to identify this media item.

Required Request Value

The request value is a data-structure with various fields. Each field may be a simple scalar or another data-structure. In the latter case it is advised to set the field-cursor to the data-structure's field to specify values more concisely.

For example, a structure like this:

MediaItem:
  base-url: string
  contributor-info:
    display-name: string
    profile-picture-base-url: string
  description: string
  filename: string
  id: string
  media-metadata:
    creation-time: string
    height: string
    photo:
      aperture-f-number: number
      camera-make: string
      camera-model: string
      exposure-time: string
      focal-length: number
      iso-equivalent: integer
    video:
      camera-make: string
      camera-model: string
      fps: number
      status: string
    width: string
  mime-type: string
  product-url: string

can be set completely with the following arguments which are assumed to be executed in the given order. Note how the cursor position is adjusted to the respective structures, allowing simple field names to be used most of the time.

  • -r . base-url=stet
    • A URL to the media item's bytes. This shouldn't be used as is. Parameters should be appended to this URL before use. See the developer documentation for a complete list of supported parameters. For example, &#39;=w2048-h1024&#39; will set the dimensions of a media item of type photo to have a width of 2048 px and height of 1024 px.
  • contributor-info display-name=vero
    • Display name of the contributor.
  • profile-picture-base-url=elitr

    • URL to the profile picture of the contributor.
  • .. description=lorem

    • Description of the media item. This is shown to the user in the item's info section in the Google Photos app. Must be shorter than 1000 characters. Only include text written by users. Descriptions should add context and help users understand media. Do not include any auto-generated strings such as filenames, tags, and other metadata.
  • filename=diam
    • Filename of the media item. This is shown to the user in the item's info section in the Google Photos app.
  • id=no
    • Identifier for the media item. This is a persistent identifier that can be used between sessions to identify this media item.
  • media-metadata creation-time=ipsum
    • Time when the media item was first created (not when it was uploaded to Google Photos).
  • height=accusam
    • Original height (in pixels) of the media item.
  • photo aperture-f-number=0.333591971041029
    • Aperture f number of the camera lens with which the photo was taken.
  • camera-make=voluptua.
    • Brand of the camera with which the photo was taken.
  • camera-model=et
    • Model of the camera with which the photo was taken.
  • exposure-time=erat
    • Exposure time of the camera aperture when the photo was taken.
  • focal-length=0.04583256524798884
    • Focal length of the camera lens with which the photo was taken.
  • iso-equivalent=71

    • ISO of the camera with which the photo was taken.
  • ..video camera-make=takimata

    • Brand of the camera with which the video was taken.
  • camera-model=dolores
    • Model of the camera with which the video was taken.
  • fps=0.3072987560065821
    • Frame rate of the video.
  • status=et

    • Processing status of the video.
  • .. width=accusam

    • Original width (in pixels) of the media item.
  • .. mime-type=voluptua.

    • MIME type of the media item. For example, image/jpeg.
  • product-url=dolore
    • Google Photos URL for the media item. This link is available to the user only if they're signed in. When retrieved from an album search, the URL points to the item inside the album.

About Cursors

The cursor position is key to comfortably set complex nested structures. The following rules apply:

  • The cursor position is always set relative to the current one, unless the field name starts with the . character. Fields can be nested such as in -r f.s.o .
  • The cursor position is set relative to the top-level structure if it starts with ., e.g. -r .s.s
  • You can also set nested fields without setting the cursor explicitly. For example, to set a value relative to the current cursor position, you would specify -r struct.sub_struct=bar.
  • You can move the cursor one level up by using ... Each additional . moves it up one additional level. E.g. ... would go three levels up.

Optional Output Flags

The method's return value a JSON encoded structure, which will be written to standard output by default.

  • -o out
    • out specifies the destination to which to write the server's result to. It will be a JSON-encoded structure. The destination may be - to indicate standard output, or a filepath that is to contain the received bytes. If unset, it defaults to standard output.

Optional Method Properties

You may set the following properties to further configure the call. Please note that -p is followed by one or more key-value-pairs, and is called like this -p k1=v1 k2=v2 even though the listing below repeats the -p for completeness.

  • -p update-mask=string
    • Required. Indicate what fields in the provided media item to update. The only valid value is description.

Optional General Properties

The following properties can configure any call, and are not specific to this method.

  • -p $-xgafv=string

    • V1 error format.
  • -p access-token=string

    • OAuth access token.
  • -p alt=string

    • Data format for response.
  • -p callback=string

    • JSONP
  • -p fields=string

    • Selector specifying which fields to include in a partial response.
  • -p key=string

    • API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.
  • -p oauth-token=string

    • OAuth 2.0 token for the current user.
  • -p pretty-print=boolean

    • Returns response with indentations and line breaks.
  • -p quota-user=string

    • Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.
  • -p upload-type=string

    • Legacy upload protocol for media (e.g. "media", "multipart").
  • -p upload-protocol=string

    • Upload protocol for media (e.g. "raw", "multipart").