Skip to content

Add Social Fetch to the catalog - #507

Open
socialfetch wants to merge 1 commit into
superdesigndev:mainfrom
socialfetch:add-socialfetch-catalog
Open

socialfetch wants to merge 1 commit into
superdesigndev:mainfrom
socialfetch:add-socialfetch-catalog

Conversation

@socialfetch

Copy link
Copy Markdown

Summary

  • List Social Fetch (socialfetch) as a Social media API-key provider: x-api-key header, https://api.socialfetch.dev, probe GET /v1/whoami.
  • Curate 14 endpoints that overlap existing capabilities (TikTok / Instagram / YouTube / X profiles, posts, search) plus the two free account probes.
  • Wire the tier-4 platform-key slot (platform_key_socialfetch) and a Growth-pack FX rate ($47 / 25,000 credits = $0.00188). Enabling TREG_PLATFORM_PROVIDERS plus the env key is an ops decision.

Contact: support@socialfetch.dev

Probe (live 2026-09-15)

  • Bogus key GET /v1/whoami: HTTP 401 {"error":{"code":"unauthorized","message":"Invalid API key."}}
  • Valid key: HTTP 200, meta.creditsCharged=0

Self-verification ledger (2026-09-15)

Meter: meta.creditsCharged on each response. No verified: stamps or example files in this PR.

endpoint http test target credits observed catalog price matches? evidence
socialfetch.account.identity 200 (none) 0 free yes meta.creditsCharged=0
socialfetch.account.usage 200 (none) 0 free yes meta.creditsCharged=0
socialfetch.tiktok.user.profile 200 handle=tiktok 1 1 credit yes lookupStatus=found, meta.creditsCharged=1
socialfetch.tiktok.user.videos 200 handle=tiktok 1 1 credit yes meta.creditsCharged=1
socialfetch.tiktok.video.detail 200 official @tiktok video URL 1 1 credit yes lookupStatus=found, meta.creditsCharged=1
socialfetch.tiktok.video.comments 200 same video URL 1 1 credit yes lookupStatus=found, meta.creditsCharged=1
socialfetch.tiktok.search.videos 200 query=coffee 1 1 credit yes meta.creditsCharged=1
socialfetch.instagram.user.profile 200 handle=instagram 1 1 credit yes lookupStatus=found, meta.creditsCharged=1
socialfetch.instagram.user.posts 200 handle=instagram 1 1 credit yes lookupStatus=found, meta.creditsCharged=1
socialfetch.youtube.channel.profile 200 handle=@youtube 1 1 credit yes lookupStatus=found, meta.creditsCharged=1 (bare YouTube 502'd; @YouTube works)
socialfetch.youtube.video.detail 200 first YouTube video URL 1 1 credit yes lookupStatus=found, meta.creditsCharged=1
socialfetch.youtube.search.videos 200 query=coffee 1 1 credit yes meta.creditsCharged=1
socialfetch.x.user.profile 200 NASA?by=handle 1 1 credit yes lookupStatus=found, meta.creditsCharged=1
socialfetch.x.user.posts 200 NASA tweets limit=5 1 1 credit yes lookupStatus=found, meta.creditsCharged=1

Billing model: prepaid credits (PAYG packs never expire; optional subscriptions). Pricing: https://www.socialfetch.dev/pricing. Rate card: OpenAPI x-socialfetch-pricing at https://api.socialfetch.dev/openapi.json. Docs: https://www.socialfetch.dev/docs.

Full-surface map (220 OpenAPI paths)

Catalogued (14): /v1/whoami, /v1/balance, /v1/tiktok/profiles/{handle}, /v1/tiktok/profiles/{handle}/videos, /v1/tiktok/videos, /v1/tiktok/videos/comments, /v1/tiktok/search, /v1/instagram/profiles/{handle}, /v1/instagram/profiles/{handle}/posts, /v1/youtube/channel, /v1/youtube/videos, /v1/youtube/search, /v1/twitter/profiles/{handle}, /v1/twitter/profiles/{handle}/tweets.

Excluded (reason):

  • Remaining TikTok / Instagram / YouTube / X list, comment, transcript, download, shop, ad-library, follower, and search variants — overlap already covered by the cheapest 1-credit profile/post/search jobs; heavier hostMedia / downloadMedia riders left off the curated set.
  • Facebook, LinkedIn, Reddit, Threads, Telegram, Pinterest, Twitch, Rumble, Bluesky, Truth Social, GitHub, Hacker News, Linktree, Spotify, Apple Music, SoundCloud, Amazon, Google Ads Library, web extract/crawl/search — either no shared capability shelf yet or a second-wave extended ingest from the published OpenAPI.
  • /v1/monitors*, /v1/webhook-*, /v1/ask — product/account management, not public social lookups.
  • /health — infra.

Happy to add an ingest_socialfetch() extended tier next; OpenAPI is stable at https://api.socialfetch.dev/openapi.json.

Test plan

  • uv run --frozen python scripts/catalog_validate.py → OK, 0 errors
  • Targeted pytest: registry, key-provider offerable, logo, platform_eligible
  • Maintainer live bogus-key POST /connections/token + catalog_verify.py with an independent key (email support@socialfetch.dev for a grant)

A test credential can be arranged over that contact email. No credentials are in this PR.

@github-actions github-actions Bot added the area:dashboard The web dashboard / landing / tutorials label Sep 15, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area:dashboard The web dashboard / landing / tutorials

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants