# Flickr Photos API
> Live public photo streams from Flickr, the original photo-sharing community, served from Flickr's open public feeds — no key, nothing cached. Flickr has hosted billions of photos from photographers, museums and agencies for two decades. The recent endpoint returns the newest public photos uploaded across all of Flickr right now, each with its title, photographer, capture and publish dates, tags and ready-to-use image URLs at several sizes. The tag endpoint returns the newest public photos for one or more tags — sunset, wildlife, street — the hashtag feed of Flickr, with a match-any or match-all mode. The user endpoint returns a photographer's most recent public photostream by their Flickr ID; institutions like NASA on The Commons publish here. Every photo comes back cleaned up: the photographer name pulled out of the raw author field, machine tags filtered away from human tags, and the static image URL expanded into square, small, medium and large variants plus a link to the photo page. Everything is live from Flickr's public feeds, nothing stored. This is the Flickr photo-discovery layer for any gallery, wallpaper, photography, moodboard or social app. Distinct from Pixelfed and mainstream social-network APIs — this is Flickr's public photo stream by recency, tag and user. Feeds return the 20 most recent public photos per query. 3 endpoints, no key on our side.

## Authentication
All requests require your oanor API key in the `x-oanor-key` header. Get one at https://www.oanor.com/developer/keys.

```bash
curl -H "x-oanor-key: oanor_live_…" "https://api.oanor.com/flickr-api/..."
```

## Pricing
- **Free** (Free) — 3,000 calls/Mo, 3 req/s
- **Starter** ($6/Mo) — 55,000 calls/Mo, 8 req/s
- **Pro** ($15/Mo) — 280,000 calls/Mo, 20 req/s
- **Mega** ($36/Mo) — 1,400,000 calls/Mo, 50 req/s

## Endpoints

### Flickr

#### `GET /v1/recent` — Newest public photos across Flickr

**Parameters:**
- `limit` (query, optional, string) — Max photos (1-20) Example: `10`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/flickr-api/v1/recent?limit=10"
```

**Response:**
```json
{
    "data": {
        "count": 10,
        "photos": [
            {
                "link": "https://www.flickr.com/photos/204511560@N02/55323237792/",
                "tags": [],
                "title": "ehMqSeM3uW",
                "author": "denisukmihajlo00",
                "images": {
                    "large": "https://live.staticflickr.com/65535/55323237792_538474afa3_b.jpg",
                    "small": "https://live.staticflickr.com/65535/55323237792_538474afa3_n.jpg",
                    "medium": "https://live.staticflickr.com/65535/55323237792_538474afa3_z.jpg",
                    "square": "https://live.staticflickr.com/65535/55323237792_538474afa3_q.jpg",
                    "thumbnail": "https://live.staticflickr.com/65535/55323237792_538474afa3_m.jpg"
                },
                "photo_id": "55323237792",
                "tags_raw": null,
                "author_id": "204511560@N02",
                "published": "2026-06-09T11:36:13Z",
                "date_taken": "2026-06-09T04:36:13-08:00"
            },
            {
                "link": "https://www.flickr.com/photos/yjsue/55323238702/",
                "tags": [],
                "title": null,
                "author": "yawjong.sue",
                "images": {
                    "large": "https://live.staticflickr.com/65535/55323238702_25ff8ac67b_b.jpg",
                    "small": "https://live.staticflickr.com/65535/55323238702_25ff8ac67b_n.jpg",
                    "medium": "htt
…(truncated, see openapi.json for full schema)
```

#### `GET /v1/tag` — Newest photos for tag(s)

**Parameters:**
- `tags` (query, required, string) — One or more tags, comma-separated Example: `sunset`
- `tagmode` (query, optional, string) — any (default) or all Example: `any`
- `limit` (query, optional, string) — Max photos (1-20) Example: `10`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/flickr-api/v1/tag?tags=sunset&tagmode=any&limit=10"
```

**Response:**
```json
{
    "data": {
        "tags": [
            "sunset"
        ],
        "count": 10,
        "photos": [
            {
                "link": "https://www.flickr.com/photos/200940948@N08/55323173847/",
                "tags": [
                    "sea",
                    "bw",
                    "cat",
                    "sky",
                    "pink",
                    "landscape",
                    "winter",
                    "park",
                    "water",
                    "trees",
                    "food",
                    "house",
                    "new",
                    "people",
                    "old",
                    "flowers",
                    "portrait",
                    "flower",
                    "beach",
                    "tree",
                    "street",
                    "white",
                    "clouds",
                    "city",
                    "art",
                    "dog",
                    "blue",
                    "car",
                    "light",
                    "blackandwhite",
                    "snow",
                    "music",
                    "sun",
                    "christmas",
                    "family",
                    "yellow",
                    "bridge",
                    "green",
                    "bird",
                    "river"
                ],
                "title": "IMG-2509257365__easyHDR-def-ost-nas",
                "author": "
…(truncated, see openapi.json for full schema)
```

#### `GET /v1/user` — A photographer's recent photostream

**Parameters:**
- `id` (query, required, string) — Flickr user ID (NSID) Example: `44494372@N05`
- `limit` (query, optional, string) — Max photos (1-20) Example: `10`

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/flickr-api/v1/user?id=44494372%40N05&limit=10"
```

**Response:**
```json
{
    "data": {
        "count": 10,
        "author": "NASA on The Commons",
        "photos": [
            {
                "link": "https://www.flickr.com/photos/nasacommons/55322024011/",
                "tags": [
                    "launchcomplex41",
                    "capecanaveral",
                    "launch",
                    "mars",
                    "viking1",
                    "titancentaurlaunch",
                    "titaniiiclaunchvehicle"
                ],
                "title": "Viking 1 Launch to Mars",
                "author": "NASA on The Commons",
                "images": {
                    "large": "https://live.staticflickr.com/65535/55322024011_f9f40a3c20_b.jpg",
                    "small": "https://live.staticflickr.com/65535/55322024011_f9f40a3c20_n.jpg",
                    "medium": "https://live.staticflickr.com/65535/55322024011_f9f40a3c20_z.jpg",
                    "square": "https://live.staticflickr.com/65535/55322024011_f9f40a3c20_q.jpg",
                    "thumbnail": "https://live.staticflickr.com/65535/55322024011_f9f40a3c20_m.jpg"
                },
                "photo_id": "55322024011",
                "tags_raw": "launchcomplex41 capecanaveral launch mars viking1 titancentaurlaunch titaniiiclaunchvehicle",
                "author_id": "44494372@N05",
                "published": "2026-06-08T13:30:00Z",
                "date_taken": "1975-08-20T00:00:00-08:00"
            },
            {
                "lin
…(truncated, see openapi.json for full schema)
```

### Meta

#### `GET /v1/meta` — Spec

**Example:**
```bash
curl -H "x-oanor-key: $KEY" \
  "https://api.oanor.com/flickr-api/v1/meta"
```

**Response:**
```json
{
    "data": {
        "note": "Feeds return the 20 most recent public photos per query.",
        "source": "Flickr public feeds (live)",
        "service": "flickr-api",
        "endpoints": {
            "GET /v1/tag": "Newest public photos for tag(s) (tags=sunset, tagmode=any|all).",
            "GET /v1/meta": "This document.",
            "GET /v1/user": "A photographer's recent public photostream (id=44494372@N05).",
            "GET /v1/recent": "Newest public photos across all of Flickr."
        },
        "description": "Live public photo streams from Flickr, the original photo-sharing community, from Flickr's open public feeds: the newest public photos across all of Flickr; the newest photos for one or more tags (match-any or match-all) — the hashtag feed of Flickr; and a photographer's most recent public photostream by Flickr ID. Each photo is cleaned up — photographer name extracted, human tags separated from machine tags, and the image URL expanded into square, small, medium and large variants plus a link to the photo page. Live, no key, nothing stored. Distinct from Pixelfed and mainstream social APIs — this is Flickr's public photo stream by recency, tag and user.",
        "upstream_status": "ok"
    },
    "meta": {
        "timestamp": "2026-06-09T11:38:23.889Z",
        "request_id": "29e6e04c-6af5-4521-8713-cb654ca4b92a"
    },
    "status": "ok",
    "message": "Meta",
    "success": true
}
```


---
Marketplace page: https://www.oanor.com/api/flickr-api
OpenAPI spec: https://www.oanor.com/api/flickr-api/openapi.json
