If you let AI write your content
You already paste a prompt into Claude or ChatGPT and get a draft back. Now your AI can also pull the right photo to illustrate it, no scrolling through Drive, no re-uploading, no "where did I save that shot?"
Tagrly has an open API. Plug it into Claude, ChatGPT, Cursor, or any AI agent, and just describe the photo you need. The right one comes back, with a ready-to-publish caption.
You don't have to be a developer. If you already use AI tools to write blog posts, social captions, or marketing copy, your AI can reach into your photo library too, same way it reaches into the web.
Once your AI assistant knows about your Tagrly catalog, you write prompts in plain English. Here's an example of the same Claude or ChatGPT you already use, but now reaching into your photo library:
That's the whole loop. You describe what you need; the AI calls Tagrly under the hood; it hands you a photo URL + a caption you can paste straight into WordPress, Notion, Buffer, or your deck.
You already paste a prompt into Claude or ChatGPT and get a draft back. Now your AI can also pull the right photo to illustrate it, no scrolling through Drive, no re-uploading, no "where did I save that shot?"
Wire Tagrly into any agent loop. Auto-illustrate generated blog posts, social captions, product page builds, or internal decks. Works as a regular REST API and as a tool any AI agent can call.
Give every team member an AI helper that knows your brand's photo library. Same login, same workspace, same brand voice. The right shot lands in the post in seconds, even for team members who never touch Drive directly.
You don't need to write a single line of code to start. The vast majority of Tagrly users get this working in under five minutes by pasting their key into the AI tool they already use.
Sign in to Tagrly. Go to Settings → API keys. Copy the key. It looks like a long random string, that's your password into your library, treat it like one.
Paste the key into Claude, ChatGPT, Cursor, or any AI agent that supports tools. We have ready-made setup snippets for each, copy, paste, done. (For Claude users: MCP-compatible.)
That's it. Now when you ask your AI for help with a post, an email, a deck, or a tweet, it can also reach into your photo library to grab the right image, with a caption and alt text ready to publish.
Tagrly's API is small on purpose, one endpoint for search, one for getting a single photo's tags, a few for collections. You can be hitting it from the command line in 30 seconds.
curl -H "Authorization: Bearer YOUR_API_KEY" \ "https://tagrly.com/api/search?q=fans+at+the+watch+party&limit=3"
import requests
photos = requests.get(
"https://tagrly.com/api/search",
headers={"Authorization": "Bearer YOUR_API_KEY"},
params={"q": "wedding hero golden hour", "limit": 3},
).json()
for p in photos["results"]:
print(p["hosted_url"], ",", p["alt_text"])
tools = [{
"name": "find_photo",
"description": "Search the user's Tagrly photo library.",
"input_schema": {
"type": "object",
"properties": {"query": {"type": "string"}},
"required": ["query"],
},
}]
# When Claude calls `find_photo`, hit /api/search with the query
# and return the top result's hosted_url + alt_text back to it.
That's the whole pattern. Search returns a list of matching photos with public URLs (served from our CDN), ready to embed anywhere. No SDK to install, no funky auth flow, just an API key in the header.
A small surface, on purpose. The top of the list is what most agents will reach for, tell Tagrly what page you're building, get back a ready-to-render set of images.
If you're integrating Tagrly into an AI assistant
(Claude Code, Cursor, ChatGPT, n8n, custom agents), read
the agent guide. It has
the complete slot DSL, multi-call recipes, gap-signal handling,
and copy-paste examples in curl / Python / JavaScript. A machine-
readable summary lives at /llms.txt.
| Endpoint | What it does |
|---|---|
POST /api/page |
Just describe the page you're building. Tagrly detects the kind of page (sports, food & drink, event, venue, or general), picks a sensible layout, and returns the right images for each spot, hero, grid, lifestyle, with alt text rewritten in the page's voice. The fastest path from "I'm writing about X" to "I have the images." No structure needed; just the topic. |
POST /api/brief |
Power-user version of /api/page. You define each
spot yourself, how many images, what must be visible,
what to prefer, and Tagrly curates the picks. Use this
when you want a layout the auto-detection wouldn't produce
(multi-section homepages, complex landing pages, anything
non-standard). |
POST /api/usage |
Tell Tagrly which images you actually used on which page. Pair
with exclude_recently_used_days in the next
page/brief and your AI never recycles the same hero across an
automation. The freshness loop that makes a 10-post campaign
feel hand-curated. |
GET /api/usage/recent |
List the images logged in your workspace recently (default past 14 days). Useful for dashboards, audit trails, and hand-picking the exclude list for the next batch. |
GET /api/search |
Plain keyword search. Filter by scene, mood, focal subject, folder, team, and more. Returns photo URLs + alt text + keywords. The low-level primitive when you want the raw list. |
GET /api/image/{id} |
Every tag and field Tagrly extracted for one photo. Useful when an agent needs the full caption for a specific match. |
GET /api/collections |
List the named collections in your workspace. Lets an agent scope search to a curated set. |
POST /api/add-to-collection |
Save photos an agent picked into a collection your human team can review later. Great for "AI pre-selects, human approves" workflows. |
GET /api/urls |
Convert a list of photo IDs into direct shareable URLs, for batching into a CMS, a slide deck, or an export. |
The shortest possible call, just a topic, no structure.
POST /api/page
{ "topic": "weekend brunch on our rooftop patio" }
Tagrly returns a hero, an action grid, and lifestyle context, 10 images, all on-topic, alt text rewritten for the page, with an honest "we don't have enough of X" note if your library is thin on the subject.
Auth is a single header: Authorization: Bearer YOUR_API_KEY.
Generate keys in Settings → API keys; revoke any
time with one click.
For a multi-section hub page, your AI assistant calls Tagrly once
per section, the topic for each call narrows what comes back.
Tagrly picks each section's images independently and a tiny
exclude_image_ids list keeps the same photo from showing up twice.
POST /api/page { "topic": "weekend brunch food at our bar" }
POST /api/page { "topic": "the rooftop lounge after sundown",
"exclude_image_ids": [ …the prior call's ids… ] }
Whatever business you run, a restaurant, a wedding venue, a real-estate listing, a brewery, the contract is the same: describe the page, get the right images back. Tagrly already knows what's in your library because it tagged every photo as it imported.
Sign in, grab an API key, paste it into your favorite AI tool. Free to start, first 100 photos are on us.