Skip to main content
Per-app Google setup is deprecated. All Google apps now share one Google OAuth client and one Redirect URI. To use your own client, follow the Google setup guide. Credentials saved for one Google app apply to all of them.

Overview

OneCLI connects AI agents to Google Photos through Google’s OAuth flow. Agents can search for photos and videos, read media metadata, and manage albums. The gateway injects OAuth credentials into requests to the Google Photos Library API automatically. This is useful for agents that need to find images for content creation, organize photo libraries, or extract metadata from media files.

Connect Google Photos

This applies on OneCLI Cloud and self-hosted alike. One Google client serves every Google app in OneCLI, so you set it up once. If you already did it for another Google app, skip to step 2.

1. Set up your Google client

Follow the Google setup guide. It enables the Google APIs, sets up the consent screen, creates the OAuth client, and adds the Redirect URI.
Open Connections > Google Photos, select Connect Google Photos, pick your Google account, and click Allow.
OneCLI connect window for Google Photos showing Configuration required, the setup guide link, and the Configure credentials button.

The Google Photos connect window before a Google client is set up.

What agents can do

  • Search for photos and videos by date, category, or content type
  • List all media items in the library with pagination
  • Read media item metadata (creation time, dimensions, camera info, location)
  • Download media item content via base URLs
  • Create new albums
  • Add media items to albums
  • List albums and shared albums
  • Read album details (title, cover photo, item count)
  • Upload new media items to the library

Controlling access

Access is per agent: grant the connection to each agent that needs it, choosing per tool what runs freely, what needs human approval, and what stays blocked — a read-only agent is a single grant. Organization rules add guardrails on top, like rate limits and blanket blocks. Everything is checked before credential injection, so a blocked request never reaches Google Photos.