recoup-platform-api-access
Original:🇺🇸 English
Translated
Call the Recoup API and external connectors directly — fetch any platform resource (artists, socials, organizations, research, documents) and run connector actions (Google Docs/Sheets/Drive edits, Gmail, TikTok, Instagram). Use whenever you need raw Recoup data, a platform resource, to write curl against api.recoupable.dev, or to read/write something outside Recoup like a Google Doc URL or a spreadsheet. The plumbing every other skill rides on. To onboard or operate on an artist use the recoup-roster-* skills; for first-run connection use recoup-platform-connect-account.
23installs
Sourcerecoupable/skills
Added on
NPX Install
npx skill4agent add recoupable/skills recoup-platform-api-accessTags
Translated version includes tags in frontmatterSKILL.md Content
View Translation Comparison →Recoup — API Access
The platform access layer: authenticate, talk to the Recoup REST API, and
invoke external connectors. Base ; docs
(, , OpenAPI JSONs).
https://api.recoupable.dev/apihttps://docs.recoupable.dev/llms.txt/llms-full.txtAuth — one Bearer header, inline
Every call uses the same header, dropped straight into the (no setup step):
the sandbox sets one of the two vars, and the API accepts a key or a
Privy JWT over .
curlrecoup_sk_Bearerbash
curl -sS -H "Authorization: Bearer ${RECOUP_API_KEY:-$RECOUP_ACCESS_TOKEN}" \
"https://api.recoupable.dev/api/artists/{id}/socials"If neither var is set, ask the user to authenticate — don't retry blindly.
Pick the artist mode first (guessing here fabricates artists)
- A — any-artist research (a name; no roster lookup) → Research endpoints.
- B — browse my roster → Roster discovery (below).
- C — a specific roster artist → Roster discovery, match the name, capture
+ row
account_id.id - D — add an artist → use recoup-roster-add-artist.
Roster discovery: → →
(each artist row has , , and a row
— capture both ids).
GET /accounts/idGET /organizationsGET /artists?org_id=…nameaccount_ididStop rule — never invent a roster: if resolves to an
email, or and both return ,
it's a throwaway key — say so and ask for a real-account key (or
recoup-platform-connect-account). Don't fabricate an artist/roster to keep moving.
GET /accounts/idagent+…@recoupable.comorganizationsartists[]Docs map (pull the section you need; don't guess paths)
Account & Identity · Artists & Content · Research (Songstats + Web) · Social
Integrations · Chat & Agents · Developer/Infra. Find the exact path/params by
grepping or pulling the OpenAPI JSON for the area, e.g.:
llms-full.txtbash
curl -s https://docs.recoupable.dev/llms-full.txt | grep -A 30 -i "similar artists"
curl -s https://docs.recoupable.dev/api-reference/openapi/research.json | jq '.paths | keys'Geography comes from ; discovery from + .
audiencesimilarwebConnector actions (Google Docs/Sheets/Drive, Gmail, TikTok, Instagram)
For reads/writes outside Recoup:
- — catalog (each action's
GET /connectors/actions,slugschema,parameters,connectorSlug).isConnected POST /connectors/actions— execute one.{actionSlug, parameters}
Slugs are (e.g. ,
). Always pull the parameters schema from the catalog before
executing — shapes vary per action. Trigger heuristic: a pasted
// URL, or "edit this doc",
"send an email", "post on TikTok".
UPPERCASE_SNAKE_CASEGOOGLEDOCS_UPDATE_DOCUMENT_MARKDOWNGMAIL_FETCH_EMAILSdocs.google.comdrive.google.comsheets.google.comSend an email (from Recoup)
POST /api/emailsAgent by Recoup <agent@recoupable.com>Run it with (not — that hides the response and you can't confirm
the recipient):
bashweb_fetchbash
curl -sS -X POST -H "Authorization: Bearer ${RECOUP_API_KEY:-$RECOUP_ACCESS_TOKEN}" \
-H "Content-Type: application/json" \
-d '{"to":["someone@example.com"],"subject":"Weekly report","text":"# Summary\n…"}' \
"https://api.recoupable.dev/api/emails"
# → {"success":true,"message":"Email sent successfully … to someone@example.com.","id":"<resend-id>"}to["a@b.com"][{"email":…}]toccsubjecttexthtmlchat_idaccount_idrecipientstosubjectmessagetoccGMAIL_SEND_EMAILTroubleshooting
401 = token missing/expired (check the credential). 403 = no access to the
org/artist. 404 = re-check the Docs map (endpoint moved/renamed). 5xx = retry once,
then surface the status.
When NOT to use
- Files inside the sandbox → filesystem tools.
- Onboarding/operating an artist's workspace → the recoup-roster-* skills.
- A domain task (research/content/release/deal/song) → that domain skill, which makes its own calls.