{"openapi":"3.1.0","info":{"title":"Imgur (BYOK) API","version":"0.1.0","description":"Imgur (BYOK) lets an AI assistant read your own Imgur data through the Imgur API with a key you supply (Imgur API client ID). Read-only: 10 tools (get_gallery, search_gallery, list_tags, get_tag_info, get_image, get_album, list_album_images, list_gallery_comments, get_account, list_account_albums). The BYOK key travels with each request, is used for that one call only and is never stored, logged...\n\nEvery operation is read-only or compute-only. The same tools are available over MCP (streamable HTTP) at https://byok-imgur.connectorbay.com/mcp.","contact":{"name":"Unify Dynamics LLC","email":"agent@connectorbay.com","url":"https://connectorbay.com/byok-imgur/docs"},"termsOfService":"https://connectorbay.com/byok-imgur/terms"},"servers":[{"url":"https://byok-imgur.connectorbay.com"}],"externalDocs":{"url":"https://connectorbay.com/byok-imgur/docs"},"security":[{"upstreamKey":[]}],"components":{"securitySchemes":{"bearer":{"type":"http","scheme":"bearer","description":"Optional. A Pro API key raises rate limits; no credentials are required."},"upstreamKey":{"type":"apiKey","in":"header","name":"X-Upstream-Key","description":"Your own key for the service this connector wraps (bring your own key). Used for that one call only; never stored, logged or cached."}},"schemas":{"Error":{"type":"object","properties":{"ok":{"const":false},"error":{"type":"object"}}}}},"paths":{"/v1/tools/get_gallery":{"post":{"operationId":"get_gallery","summary":"List posts of the Imgur gallery by section (hot, top, user), order, date range and page; returns title, link, views, sco","description":"List posts of the Imgur gallery by section (hot, top, user), order, date range and page; returns title, link, views, score and comment count. Use for \"What is hot on the Imgur gallery today\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"section":{"description":"Gallery section: hot, top or user.","enum":["hot","top","user"],"title":"Section","type":"string"},"sort":{"description":"Order: viral, top, time or rising (rising only with the user section).","enum":["viral","top","time","rising"],"title":"Sort","type":"string"},"window":{"description":"Date range, used when the order is top: day, week, month, year or all.","enum":["day","week","month","year","all"],"title":"Window","type":"string"},"page":{"description":"Page number, starting at 0.","maximum":10000,"minimum":0,"title":"Page","type":"integer"}},"required":["section","sort","window","page"],"title":"get_galleryArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/search_gallery":{"post":{"operationId":"search_gallery","summary":"Search the Imgur gallery by text; returns matching posts with title, link, views and score. Use for \"Search Imgur for ca","description":"Search the Imgur gallery by text; returns matching posts with title, link, views and score. Use for \"Search Imgur for cat pictures\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"sort":{"description":"Order: time, viral or top.","enum":["time","viral","top"],"title":"Sort","type":"string"},"window":{"description":"Date range, used when the order is top: day, week, month, year or all.","enum":["day","week","month","year","all"],"title":"Window","type":"string"},"page":{"description":"Page number, starting at 0.","maximum":10000,"minimum":0,"title":"Page","type":"integer"},"q":{"description":"Search text; supports AND, OR, NOT and prefixes such as tag:, user:, title:, ext:, subreddit:.","maxLength":200,"title":"Q","type":"string"}},"required":["sort","window","page","q"],"title":"search_galleryArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_tags":{"post":{"operationId":"list_tags","summary":"List the default Imgur tags (name, display name, follower count, post count) and the featured tag. Use for \"Which tags d","description":"List the default Imgur tags (name, display name, follower count, post count) and the featured tag. Use for \"Which tags does Imgur promote\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{},"title":"list_tagsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_tag_info":{"post":{"operationId":"get_tag_info","summary":"Get metadata of one Imgur tag: display name, description, follower count and number of posts. Use for \"How many posts do","description":"Get metadata of one Imgur tag: display name, description, follower count and number of posts. Use for \"How many posts does the Imgur tag cats have\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"tag_name":{"description":"Tag name, such as cats.","maxLength":200,"title":"Tag Name","type":"string"}},"required":["tag_name"],"title":"get_tag_infoArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_image":{"post":{"operationId":"get_image","summary":"Get one Imgur image by hash: title, description, type, size in bytes, dimensions, views and direct link. Metadata only, ","description":"Get one Imgur image by hash: title, description, type, size in bytes, dimensions, views and direct link. Metadata only, no file content. Use for \"How big is Imgur image NZb5YPT\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"image_hash":{"description":"Image ID (the code in the imgur.com URL).","maxLength":200,"title":"Image Hash","type":"string"}},"required":["image_hash"],"title":"get_imageArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_album":{"post":{"operationId":"get_album","summary":"Get one Imgur album by hash: title, description, image count, views, privacy and cover. Output is size capped. Use for \"","description":"Get one Imgur album by hash: title, description, image count, views, privacy and cover. Output is size capped. Use for \"What is in Imgur album sTYe4\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"album_hash":{"description":"Album ID (the code in the imgur.com/a/ URL).","maxLength":200,"title":"Album Hash","type":"string"}},"required":["album_hash"],"title":"get_albumArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_album_images":{"post":{"operationId":"list_album_images","summary":"List the images of one Imgur album with title, type, size, dimensions and direct link. Use for \"List the images of Imgur","description":"List the images of one Imgur album with title, type, size, dimensions and direct link. Use for \"List the images of Imgur album sTYe4\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"album_hash":{"description":"Album ID (the code in the imgur.com/a/ URL).","maxLength":200,"title":"Album Hash","type":"string"}},"required":["album_hash"],"title":"list_album_imagesArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_gallery_comments":{"post":{"operationId":"list_gallery_comments","summary":"List the comments on one gallery post (image or album), sorted best, top or new. Use for \"What are people saying on this","description":"List the comments on one gallery post (image or album), sorted best, top or new. Use for \"What are people saying on this Imgur gallery post\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"gallery_hash":{"description":"Gallery post ID.","maxLength":200,"title":"Gallery Hash","type":"string"},"comment_sort":{"description":"Order: best, top or new.","enum":["best","top","new"],"title":"Comment Sort","type":"string"}},"required":["gallery_hash","comment_sort"],"title":"list_gallery_commentsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/get_account":{"post":{"operationId":"get_account","summary":"Get the public profile of an Imgur user: id, URL name, bio, reputation and join time. Use for \"What is the Imgur reputat","description":"Get the public profile of an Imgur user: id, URL name, bio, reputation and join time. Use for \"What is the Imgur reputation of user imgur\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"username":{"description":"Imgur user name.","maxLength":200,"title":"Username","type":"string"}},"required":["username"],"title":"get_accountArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}},"/v1/tools/list_account_albums":{"post":{"operationId":"list_account_albums","summary":"List the public albums of an Imgur user, paged. Secret and hidden albums are not shown. Use for \"Which public albums doe","description":"List the public albums of an Imgur user, paged. Secret and hidden albums are not shown. Use for \"Which public albums does Imgur user imgur have\".","tags":["tools"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"username":{"description":"Imgur user name.","maxLength":200,"title":"Username","type":"string"},"page":{"description":"Page number, starting at 0.","maximum":10000,"minimum":0,"title":"Page","type":"integer"}},"required":["username","page"],"title":"list_account_albumsArguments","type":"object"}}}},"responses":{"200":{"description":"Tool result. `ok: true` on success; `ok: false` with a structured `error` (provider_unavailable, upstream_error, bad_input) when the tool could not answer.","content":{"application/json":{"schema":{"type":"object","additionalProperties":true}}}},"422":{"description":"Arguments failed validation","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}},"429":{"description":"Rate limit exceeded (see Retry-After)","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Error"}}}}},"x-read-only":true}}}}