diff --git a/references/account-resolver.md b/references/account-resolver.md index 623b123..c432067 100644 --- a/references/account-resolver.md +++ b/references/account-resolver.md @@ -10,7 +10,7 @@ Pick whichever credential the environment provides; prefer the API key when both | Credential | Header | Where it comes from | | --- | --- | --- | -| `RECOUP_API_KEY` (`recoup_sk_…`) | `-H "x-api-key: $RECOUP_API_KEY"` | agent signup; see developers.recoupable.com/agents | +| `RECOUP_API_KEY` (`recoup_sk_…`) | `-H "x-api-key: $RECOUP_API_KEY"` | agent signup; see docs.recoupable.dev/agents | | `RECOUP_ACCESS_TOKEN` | `-H "Authorization: Bearer $RECOUP_ACCESS_TOKEN"` | short-lived sandbox token | ```bash @@ -22,7 +22,7 @@ else echo "No Recoup credential set — ask the user to authenticate; do not retry blindly." >&2 return 1 2>/dev/null || exit 1 # stop — never call the API unauthenticated fi -# Use as: curl -sS "${AUTH[@]}" "https://api.recoupable.com/api/..." +# Use as: curl -sS "${AUTH[@]}" "https://api.recoupable.dev/api/..." ``` If neither is set, the user is not authenticated — tell them to sign in rather than @@ -63,11 +63,11 @@ spans every org the account belongs to. Org rows expose `organization_id` (pass ```bash ORG_ID="${RECOUP_ORG_ID:-$(curl -sS "${AUTH[@]}" \ - "https://api.recoupable.com/api/organizations" | jq -r '.organizations[0].organization_id')}" + "https://api.recoupable.dev/api/organizations" | jq -r '.organizations[0].organization_id')}" # Capture BOTH ids for the matched artist. ARTISTS_JSON=$(curl -sS "${AUTH[@]}" \ - "https://api.recoupable.com/api/artists?org_id=$ORG_ID") + "https://api.recoupable.dev/api/artists?org_id=$ORG_ID") ARTIST_ACCOUNT_ID=$(echo "$ARTISTS_JSON" \ | jq -r --arg n "$ARTIST_NAME" '.artists[] | select(.name==$n) | .account_id') diff --git a/references/analyze-gate.md b/references/analyze-gate.md index 67010cd..0ef04c8 100644 --- a/references/analyze-gate.md +++ b/references/analyze-gate.md @@ -14,7 +14,7 @@ at the very end; catch a bad clip before you spend more on it. (For still images ## How ```bash -curl -sS -X POST "https://api.recoupable.com/api/content/analyze" "${AUTH[@]}" \ +curl -sS -X POST "https://api.recoupable.dev/api/content/analyze" "${AUTH[@]}" \ -H "Content-Type: application/json" \ -d "$(jq -n --arg v "$VIDEO_URL" --arg p "$RUBRIC" '{video_url:$v, prompt:$p}')" | jq -r '.text' ``` diff --git a/references/content-api.md b/references/content-api.md index df2b4bf..0742f08 100644 --- a/references/content-api.md +++ b/references/content-api.md @@ -6,7 +6,7 @@ estimation. For auth + artist-ID resolution, use the account-resolver reference skill bundles one; otherwise set the auth header inline (`x-api-key: $RECOUP_API_KEY`, or `Authorization: Bearer $RECOUP_ACCESS_TOKEN`). -`BASE="https://api.recoupable.com/api"`. Pass the auth header from `account-resolver.md` +`BASE="https://api.recoupable.dev/api"`. Pass the auth header from `account-resolver.md` as `"${AUTH[@]}"` on every call. ## Endpoints @@ -30,7 +30,7 @@ as `"${AUTH[@]}"` on every call. > /content/create` are **async** → `runId`, polled via `/tasks/runs`. Don't assume everything > is async — image/caption come straight back. -Full docs: `https://developers.recoupable.com/content-agent`. +Full docs: `https://docs.recoupable.dev/content-agent`. ## The six video modes @@ -88,7 +88,7 @@ curl -sS "${AUTH[@]}" "$BASE/tasks/runs?runId=$RUN_ID" | jq '.runs[0].output' ``` On a non-`COMPLETED` terminal status, surface `.runs[0].error` and stop — never claim -success. See `https://developers.recoupable.com/api-reference/tasks/runs`. +success. See `https://docs.recoupable.dev/api-reference/tasks/runs`. ## Edit operations (`PATCH $BASE/content`) diff --git a/references/endpoints.md b/references/endpoints.md index ff23c8e..34c9421 100644 --- a/references/endpoints.md +++ b/references/endpoints.md @@ -4,7 +4,7 @@ Full curl examples for every production `/api/research/*` endpoint, plus parameter rules, response shapes, latency budgets, and platform source enums. These are the **current production endpoints** documented at - (see the `/api-reference/research/*` pages). + (see the `/api-reference/research/*` pages). The research API is backed by **Songstats**, so entity IDs are short alphanumeric strings like `wjcgfd9i` (artists) or `1ik97vot` (tracks). @@ -12,13 +12,13 @@ All examples assume: ```bash export RECOUP_API_KEY="recoup_sk_..." -export RECOUP_API="https://api.recoupable.com/api" +export RECOUP_API="https://api.recoupable.dev/api" ``` No key? Get one instantly (no dashboard, no email verification): ```bash -export RECOUP_API_KEY=$(curl -s -X POST "https://api.recoupable.com/api/agents/signup" \ +export RECOUP_API_KEY=$(curl -s -X POST "https://api.recoupable.dev/api/agents/signup" \ -H "Content-Type: application/json" \ -d '{"email":"agent+'$(date +%s)-$RANDOM'@recoupable.com"}' | jq -r .api_key) ``` diff --git a/references/flamingo-api.md b/references/flamingo-api.md index d8cf330..2b93f8d 100644 --- a/references/flamingo-api.md +++ b/references/flamingo-api.md @@ -40,9 +40,9 @@ context from auth and ignores account overrides. The API answers on two hosts; examples below resolve the base from env so a skill works in either environment: -- `RECOUP_API` — full base including `/api` (e.g. `https://api.recoupable.com/api`) -- `RECOUP_API_URL` — host only (e.g. `https://api.recoupable.com`) -- Default when neither is set: `https://api.recoupable.com` +- `RECOUP_API` — full base including `/api` (e.g. `https://api.recoupable.dev/api`) +- `RECOUP_API_URL` — host only (e.g. `https://api.recoupable.dev`) +- Default when neither is set: `https://api.recoupable.dev` (The public docs are inconsistent about the canonical host; honoring the env vars avoids hard-coding the wrong one.) @@ -136,7 +136,7 @@ curl -sS "$API_BASE/songs/analyze/presets" "${AUTH[@]}" | jq '.presets[] | {name if [ -n "$RECOUP_API" ]; then API_BASE="${RECOUP_API%/}" else - RAW_API_URL="${RECOUP_API_URL:-https://api.recoupable.com}" + RAW_API_URL="${RECOUP_API_URL:-https://api.recoupable.dev}" API_BASE="${RAW_API_URL%/api}/api" fi diff --git a/references/research-context.md b/references/research-context.md index 0e62d88..130ffa7 100644 --- a/references/research-context.md +++ b/references/research-context.md @@ -25,7 +25,7 @@ research. ## Auth + the provider ID chain -Research endpoints live under `https://api.recoupable.com/api/research/…` and accept the +Research endpoints live under `https://api.recoupable.dev/api/research/…` and accept the same auth as everything else — reuse the `AUTH` array from the account-resolver reference (`x-api-key: $RECOUP_API_KEY` preferred, or `Authorization: Bearer $RECOUP_ACCESS_TOKEN`). @@ -34,7 +34,7 @@ slug like `wjcgfd9i`, *not* the Recoup `account_id`/`id` and *not* the Spotify i once from the Spotify id in `RECOUP.md`, then reuse: ```bash -BASE="https://api.recoupable.com/api" +BASE="https://api.recoupable.dev/api" SPOTIFY_ID=$(sed -n 's/^spotifyArtistId:[[:space:]]*//p' "$ARTIST_DIR/RECOUP.md") PROVIDER_ID=$(curl -sSL --max-time 90 "${AUTH[@]}" \ diff --git a/references/workflows.md b/references/workflows.md index 32325fc..b403082 100644 --- a/references/workflows.md +++ b/references/workflows.md @@ -11,7 +11,7 @@ All examples assume: ```bash export RECOUP_API_KEY="recoup_sk_..." -export RECOUP_API="https://api.recoupable.com/api" +export RECOUP_API="https://api.recoupable.dev/api" AUTH="x-api-key: $RECOUP_API_KEY" ``` diff --git a/references/workspace-context.md b/references/workspace-context.md index 2b84168..f6cbce0 100644 --- a/references/workspace-context.md +++ b/references/workspace-context.md @@ -77,9 +77,9 @@ and for resolving the artist's `id`. ```bash # Real captions across platforms — the best available voice signal when there's no artist.md -curl -sS "$AUTH_HEADER" "https://api.recoupable.com/api/artists/$ARTIST_ID/posts" | jq +curl -sS "$AUTH_HEADER" "https://api.recoupable.dev/api/artists/$ARTIST_ID/posts" | jq # Profile / socials for tone + handles -curl -sS "$AUTH_HEADER" "https://api.recoupable.com/api/artists/$ARTIST_ID/socials" | jq +curl -sS "$AUTH_HEADER" "https://api.recoupable.dev/api/artists/$ARTIST_ID/socials" | jq ``` If neither workspace context nor API posts are available, **say so and ask the user for diff --git a/skills/recoup-catalog-estimate-value/references/recoup-api.md b/skills/recoup-catalog-estimate-value/references/recoup-api.md index 1d7375c..1671bbe 100644 --- a/skills/recoup-catalog-estimate-value/references/recoup-api.md +++ b/skills/recoup-catalog-estimate-value/references/recoup-api.md @@ -2,16 +2,16 @@ All streaming data is pulled from the Recoup Research API. Spotify play counts come from Recoup's own measurement store (Apify-first, provenance-labeled); -other sources are Songstats-backed. Base URL: `https://api.recoupable.com/api`. +other sources are Songstats-backed. Base URL: `https://api.recoupable.dev/api`. ## Authentication Send one of: -- `x-api-key: $RECOUP_API_KEY` — a key from `https://chat.recoupable.com/keys`, +- `x-api-key: $RECOUP_API_KEY` — a key from `https://chat.recoupable.dev/keys`, or in one unauthenticated call: ```bash - export RECOUP_API_KEY=$(curl -s -X POST "https://api.recoupable.com/api/agents/signup" \ + export RECOUP_API_KEY=$(curl -s -X POST "https://api.recoupable.dev/api/agents/signup" \ -H "Content-Type: application/json" \ -d '{"email":"agent+'$(date +%s)'@recoupable.com"}' | jq -r .api_key) ``` @@ -38,7 +38,7 @@ includes the absolute play count: ```bash curl -sS -H "x-api-key: $RECOUP_API_KEY" \ - "https://api.recoupable.com/api/research/track/stats?isrc=USQY51771120&source=all" + "https://api.recoupable.dev/api/research/track/stats?isrc=USQY51771120&source=all" ``` Note: `streams_total` may be returned as a numeric string (e.g. `"296422273.0"`) — parse as float. @@ -54,7 +54,7 @@ auto-enqueued for backfill — re-query later, or use playcount-deltas below. ```bash curl -sS -H "x-api-key: $RECOUP_API_KEY" \ - "https://api.recoupable.com/api/research/track/historic-stats?spotify_track_id=6RmGzvvqPlVwPqiI11vqT3&source=spotify&start_date=2025-06-09&end_date=2026-06-09" + "https://api.recoupable.dev/api/research/track/historic-stats?spotify_track_id=6RmGzvvqPlVwPqiI11vqT3&source=spotify&start_date=2025-06-09&end_date=2026-06-09" ``` ### `GET /spotify/album` — enumerate an album's tracks @@ -86,7 +86,7 @@ of its tracks. Counts land in the measurement store within minutes. ```bash curl -sS -X POST -H "x-api-key: $RECOUP_API_KEY" -H "Content-Type: application/json" \ -d '{"album_ids":["70Zkfb99ladZ3q0JVg97co"]}' \ - "https://api.recoupable.com/api/research/snapshots" + "https://api.recoupable.dev/api/research/snapshots" ``` ### `GET /research/playcounts` — latest per-track counts for an album diff --git a/skills/recoup-catalog-estimate-value/scripts/estimate.py b/skills/recoup-catalog-estimate-value/scripts/estimate.py index 9648db3..d612b45 100755 --- a/skills/recoup-catalog-estimate-value/scripts/estimate.py +++ b/skills/recoup-catalog-estimate-value/scripts/estimate.py @@ -24,7 +24,7 @@ from collections import Counter from concurrent.futures import ThreadPoolExecutor -BASE = os.environ.get("RECOUP_API_BASE", "https://api.recoupable.com/api") +BASE = os.environ.get("RECOUP_API_BASE", "https://api.recoupable.dev/api") DEFAULTS = { "rates": {"spotify": 0.0035, "youtube": 0.00069, "soundcloud": 0.0030}, diff --git a/skills/recoup-catalog-estimate-value/scripts/fetch_album_tracks.py b/skills/recoup-catalog-estimate-value/scripts/fetch_album_tracks.py index be76e65..f295664 100755 --- a/skills/recoup-catalog-estimate-value/scripts/fetch_album_tracks.py +++ b/skills/recoup-catalog-estimate-value/scripts/fetch_album_tracks.py @@ -3,7 +3,7 @@ Usage: python3 fetch_album_tracks.py --album Prints a comma-separated list of track IDs; ownership (label / P-line) to stderr.""" import argparse, json, os, re, subprocess, sys -BASE = os.environ.get("RECOUP_API_BASE", "https://api.recoupable.com/api") +BASE = os.environ.get("RECOUP_API_BASE", "https://api.recoupable.dev/api") def auth(): k = os.environ.get("RECOUP_API_KEY") diff --git a/skills/recoup-catalog-review-deal/references/recoup-api.md b/skills/recoup-catalog-review-deal/references/recoup-api.md index 1d7375c..1671bbe 100644 --- a/skills/recoup-catalog-review-deal/references/recoup-api.md +++ b/skills/recoup-catalog-review-deal/references/recoup-api.md @@ -2,16 +2,16 @@ All streaming data is pulled from the Recoup Research API. Spotify play counts come from Recoup's own measurement store (Apify-first, provenance-labeled); -other sources are Songstats-backed. Base URL: `https://api.recoupable.com/api`. +other sources are Songstats-backed. Base URL: `https://api.recoupable.dev/api`. ## Authentication Send one of: -- `x-api-key: $RECOUP_API_KEY` — a key from `https://chat.recoupable.com/keys`, +- `x-api-key: $RECOUP_API_KEY` — a key from `https://chat.recoupable.dev/keys`, or in one unauthenticated call: ```bash - export RECOUP_API_KEY=$(curl -s -X POST "https://api.recoupable.com/api/agents/signup" \ + export RECOUP_API_KEY=$(curl -s -X POST "https://api.recoupable.dev/api/agents/signup" \ -H "Content-Type: application/json" \ -d '{"email":"agent+'$(date +%s)'@recoupable.com"}' | jq -r .api_key) ``` @@ -38,7 +38,7 @@ includes the absolute play count: ```bash curl -sS -H "x-api-key: $RECOUP_API_KEY" \ - "https://api.recoupable.com/api/research/track/stats?isrc=USQY51771120&source=all" + "https://api.recoupable.dev/api/research/track/stats?isrc=USQY51771120&source=all" ``` Note: `streams_total` may be returned as a numeric string (e.g. `"296422273.0"`) — parse as float. @@ -54,7 +54,7 @@ auto-enqueued for backfill — re-query later, or use playcount-deltas below. ```bash curl -sS -H "x-api-key: $RECOUP_API_KEY" \ - "https://api.recoupable.com/api/research/track/historic-stats?spotify_track_id=6RmGzvvqPlVwPqiI11vqT3&source=spotify&start_date=2025-06-09&end_date=2026-06-09" + "https://api.recoupable.dev/api/research/track/historic-stats?spotify_track_id=6RmGzvvqPlVwPqiI11vqT3&source=spotify&start_date=2025-06-09&end_date=2026-06-09" ``` ### `GET /spotify/album` — enumerate an album's tracks @@ -86,7 +86,7 @@ of its tracks. Counts land in the measurement store within minutes. ```bash curl -sS -X POST -H "x-api-key: $RECOUP_API_KEY" -H "Content-Type: application/json" \ -d '{"album_ids":["70Zkfb99ladZ3q0JVg97co"]}' \ - "https://api.recoupable.com/api/research/snapshots" + "https://api.recoupable.dev/api/research/snapshots" ``` ### `GET /research/playcounts` — latest per-track counts for an album diff --git a/skills/recoup-content-asset-pack/references/account-resolver.md b/skills/recoup-content-asset-pack/references/account-resolver.md index 623b123..c432067 100644 --- a/skills/recoup-content-asset-pack/references/account-resolver.md +++ b/skills/recoup-content-asset-pack/references/account-resolver.md @@ -10,7 +10,7 @@ Pick whichever credential the environment provides; prefer the API key when both | Credential | Header | Where it comes from | | --- | --- | --- | -| `RECOUP_API_KEY` (`recoup_sk_…`) | `-H "x-api-key: $RECOUP_API_KEY"` | agent signup; see developers.recoupable.com/agents | +| `RECOUP_API_KEY` (`recoup_sk_…`) | `-H "x-api-key: $RECOUP_API_KEY"` | agent signup; see docs.recoupable.dev/agents | | `RECOUP_ACCESS_TOKEN` | `-H "Authorization: Bearer $RECOUP_ACCESS_TOKEN"` | short-lived sandbox token | ```bash @@ -22,7 +22,7 @@ else echo "No Recoup credential set — ask the user to authenticate; do not retry blindly." >&2 return 1 2>/dev/null || exit 1 # stop — never call the API unauthenticated fi -# Use as: curl -sS "${AUTH[@]}" "https://api.recoupable.com/api/..." +# Use as: curl -sS "${AUTH[@]}" "https://api.recoupable.dev/api/..." ``` If neither is set, the user is not authenticated — tell them to sign in rather than @@ -63,11 +63,11 @@ spans every org the account belongs to. Org rows expose `organization_id` (pass ```bash ORG_ID="${RECOUP_ORG_ID:-$(curl -sS "${AUTH[@]}" \ - "https://api.recoupable.com/api/organizations" | jq -r '.organizations[0].organization_id')}" + "https://api.recoupable.dev/api/organizations" | jq -r '.organizations[0].organization_id')}" # Capture BOTH ids for the matched artist. ARTISTS_JSON=$(curl -sS "${AUTH[@]}" \ - "https://api.recoupable.com/api/artists?org_id=$ORG_ID") + "https://api.recoupable.dev/api/artists?org_id=$ORG_ID") ARTIST_ACCOUNT_ID=$(echo "$ARTISTS_JSON" \ | jq -r --arg n "$ARTIST_NAME" '.artists[] | select(.name==$n) | .account_id') diff --git a/skills/recoup-content-asset-pack/references/analyze-gate.md b/skills/recoup-content-asset-pack/references/analyze-gate.md index 67010cd..0ef04c8 100644 --- a/skills/recoup-content-asset-pack/references/analyze-gate.md +++ b/skills/recoup-content-asset-pack/references/analyze-gate.md @@ -14,7 +14,7 @@ at the very end; catch a bad clip before you spend more on it. (For still images ## How ```bash -curl -sS -X POST "https://api.recoupable.com/api/content/analyze" "${AUTH[@]}" \ +curl -sS -X POST "https://api.recoupable.dev/api/content/analyze" "${AUTH[@]}" \ -H "Content-Type: application/json" \ -d "$(jq -n --arg v "$VIDEO_URL" --arg p "$RUBRIC" '{video_url:$v, prompt:$p}')" | jq -r '.text' ``` diff --git a/skills/recoup-content-asset-pack/references/content-api.md b/skills/recoup-content-asset-pack/references/content-api.md index df2b4bf..0742f08 100644 --- a/skills/recoup-content-asset-pack/references/content-api.md +++ b/skills/recoup-content-asset-pack/references/content-api.md @@ -6,7 +6,7 @@ estimation. For auth + artist-ID resolution, use the account-resolver reference skill bundles one; otherwise set the auth header inline (`x-api-key: $RECOUP_API_KEY`, or `Authorization: Bearer $RECOUP_ACCESS_TOKEN`). -`BASE="https://api.recoupable.com/api"`. Pass the auth header from `account-resolver.md` +`BASE="https://api.recoupable.dev/api"`. Pass the auth header from `account-resolver.md` as `"${AUTH[@]}"` on every call. ## Endpoints @@ -30,7 +30,7 @@ as `"${AUTH[@]}"` on every call. > /content/create` are **async** → `runId`, polled via `/tasks/runs`. Don't assume everything > is async — image/caption come straight back. -Full docs: `https://developers.recoupable.com/content-agent`. +Full docs: `https://docs.recoupable.dev/content-agent`. ## The six video modes @@ -88,7 +88,7 @@ curl -sS "${AUTH[@]}" "$BASE/tasks/runs?runId=$RUN_ID" | jq '.runs[0].output' ``` On a non-`COMPLETED` terminal status, surface `.runs[0].error` and stop — never claim -success. See `https://developers.recoupable.com/api-reference/tasks/runs`. +success. See `https://docs.recoupable.dev/api-reference/tasks/runs`. ## Edit operations (`PATCH $BASE/content`) diff --git a/skills/recoup-content-asset-pack/references/research-context.md b/skills/recoup-content-asset-pack/references/research-context.md index 0e62d88..130ffa7 100644 --- a/skills/recoup-content-asset-pack/references/research-context.md +++ b/skills/recoup-content-asset-pack/references/research-context.md @@ -25,7 +25,7 @@ research. ## Auth + the provider ID chain -Research endpoints live under `https://api.recoupable.com/api/research/…` and accept the +Research endpoints live under `https://api.recoupable.dev/api/research/…` and accept the same auth as everything else — reuse the `AUTH` array from the account-resolver reference (`x-api-key: $RECOUP_API_KEY` preferred, or `Authorization: Bearer $RECOUP_ACCESS_TOKEN`). @@ -34,7 +34,7 @@ slug like `wjcgfd9i`, *not* the Recoup `account_id`/`id` and *not* the Spotify i once from the Spotify id in `RECOUP.md`, then reuse: ```bash -BASE="https://api.recoupable.com/api" +BASE="https://api.recoupable.dev/api" SPOTIFY_ID=$(sed -n 's/^spotifyArtistId:[[:space:]]*//p' "$ARTIST_DIR/RECOUP.md") PROVIDER_ID=$(curl -sSL --max-time 90 "${AUTH[@]}" \ diff --git a/skills/recoup-content-asset-pack/references/workspace-context.md b/skills/recoup-content-asset-pack/references/workspace-context.md index 2b84168..f6cbce0 100644 --- a/skills/recoup-content-asset-pack/references/workspace-context.md +++ b/skills/recoup-content-asset-pack/references/workspace-context.md @@ -77,9 +77,9 @@ and for resolving the artist's `id`. ```bash # Real captions across platforms — the best available voice signal when there's no artist.md -curl -sS "$AUTH_HEADER" "https://api.recoupable.com/api/artists/$ARTIST_ID/posts" | jq +curl -sS "$AUTH_HEADER" "https://api.recoupable.dev/api/artists/$ARTIST_ID/posts" | jq # Profile / socials for tone + handles -curl -sS "$AUTH_HEADER" "https://api.recoupable.com/api/artists/$ARTIST_ID/socials" | jq +curl -sS "$AUTH_HEADER" "https://api.recoupable.dev/api/artists/$ARTIST_ID/socials" | jq ``` If neither workspace context nor API posts are available, **say so and ask the user for diff --git a/skills/recoup-content-make-graphics/references/account-resolver.md b/skills/recoup-content-make-graphics/references/account-resolver.md index 623b123..c432067 100644 --- a/skills/recoup-content-make-graphics/references/account-resolver.md +++ b/skills/recoup-content-make-graphics/references/account-resolver.md @@ -10,7 +10,7 @@ Pick whichever credential the environment provides; prefer the API key when both | Credential | Header | Where it comes from | | --- | --- | --- | -| `RECOUP_API_KEY` (`recoup_sk_…`) | `-H "x-api-key: $RECOUP_API_KEY"` | agent signup; see developers.recoupable.com/agents | +| `RECOUP_API_KEY` (`recoup_sk_…`) | `-H "x-api-key: $RECOUP_API_KEY"` | agent signup; see docs.recoupable.dev/agents | | `RECOUP_ACCESS_TOKEN` | `-H "Authorization: Bearer $RECOUP_ACCESS_TOKEN"` | short-lived sandbox token | ```bash @@ -22,7 +22,7 @@ else echo "No Recoup credential set — ask the user to authenticate; do not retry blindly." >&2 return 1 2>/dev/null || exit 1 # stop — never call the API unauthenticated fi -# Use as: curl -sS "${AUTH[@]}" "https://api.recoupable.com/api/..." +# Use as: curl -sS "${AUTH[@]}" "https://api.recoupable.dev/api/..." ``` If neither is set, the user is not authenticated — tell them to sign in rather than @@ -63,11 +63,11 @@ spans every org the account belongs to. Org rows expose `organization_id` (pass ```bash ORG_ID="${RECOUP_ORG_ID:-$(curl -sS "${AUTH[@]}" \ - "https://api.recoupable.com/api/organizations" | jq -r '.organizations[0].organization_id')}" + "https://api.recoupable.dev/api/organizations" | jq -r '.organizations[0].organization_id')}" # Capture BOTH ids for the matched artist. ARTISTS_JSON=$(curl -sS "${AUTH[@]}" \ - "https://api.recoupable.com/api/artists?org_id=$ORG_ID") + "https://api.recoupable.dev/api/artists?org_id=$ORG_ID") ARTIST_ACCOUNT_ID=$(echo "$ARTISTS_JSON" \ | jq -r --arg n "$ARTIST_NAME" '.artists[] | select(.name==$n) | .account_id') diff --git a/skills/recoup-content-make-graphics/references/analyze-gate.md b/skills/recoup-content-make-graphics/references/analyze-gate.md index 67010cd..0ef04c8 100644 --- a/skills/recoup-content-make-graphics/references/analyze-gate.md +++ b/skills/recoup-content-make-graphics/references/analyze-gate.md @@ -14,7 +14,7 @@ at the very end; catch a bad clip before you spend more on it. (For still images ## How ```bash -curl -sS -X POST "https://api.recoupable.com/api/content/analyze" "${AUTH[@]}" \ +curl -sS -X POST "https://api.recoupable.dev/api/content/analyze" "${AUTH[@]}" \ -H "Content-Type: application/json" \ -d "$(jq -n --arg v "$VIDEO_URL" --arg p "$RUBRIC" '{video_url:$v, prompt:$p}')" | jq -r '.text' ``` diff --git a/skills/recoup-content-make-graphics/references/content-api.md b/skills/recoup-content-make-graphics/references/content-api.md index df2b4bf..0742f08 100644 --- a/skills/recoup-content-make-graphics/references/content-api.md +++ b/skills/recoup-content-make-graphics/references/content-api.md @@ -6,7 +6,7 @@ estimation. For auth + artist-ID resolution, use the account-resolver reference skill bundles one; otherwise set the auth header inline (`x-api-key: $RECOUP_API_KEY`, or `Authorization: Bearer $RECOUP_ACCESS_TOKEN`). -`BASE="https://api.recoupable.com/api"`. Pass the auth header from `account-resolver.md` +`BASE="https://api.recoupable.dev/api"`. Pass the auth header from `account-resolver.md` as `"${AUTH[@]}"` on every call. ## Endpoints @@ -30,7 +30,7 @@ as `"${AUTH[@]}"` on every call. > /content/create` are **async** → `runId`, polled via `/tasks/runs`. Don't assume everything > is async — image/caption come straight back. -Full docs: `https://developers.recoupable.com/content-agent`. +Full docs: `https://docs.recoupable.dev/content-agent`. ## The six video modes @@ -88,7 +88,7 @@ curl -sS "${AUTH[@]}" "$BASE/tasks/runs?runId=$RUN_ID" | jq '.runs[0].output' ``` On a non-`COMPLETED` terminal status, surface `.runs[0].error` and stop — never claim -success. See `https://developers.recoupable.com/api-reference/tasks/runs`. +success. See `https://docs.recoupable.dev/api-reference/tasks/runs`. ## Edit operations (`PATCH $BASE/content`) diff --git a/skills/recoup-content-make-graphics/references/research-context.md b/skills/recoup-content-make-graphics/references/research-context.md index 0e62d88..130ffa7 100644 --- a/skills/recoup-content-make-graphics/references/research-context.md +++ b/skills/recoup-content-make-graphics/references/research-context.md @@ -25,7 +25,7 @@ research. ## Auth + the provider ID chain -Research endpoints live under `https://api.recoupable.com/api/research/…` and accept the +Research endpoints live under `https://api.recoupable.dev/api/research/…` and accept the same auth as everything else — reuse the `AUTH` array from the account-resolver reference (`x-api-key: $RECOUP_API_KEY` preferred, or `Authorization: Bearer $RECOUP_ACCESS_TOKEN`). @@ -34,7 +34,7 @@ slug like `wjcgfd9i`, *not* the Recoup `account_id`/`id` and *not* the Spotify i once from the Spotify id in `RECOUP.md`, then reuse: ```bash -BASE="https://api.recoupable.com/api" +BASE="https://api.recoupable.dev/api" SPOTIFY_ID=$(sed -n 's/^spotifyArtistId:[[:space:]]*//p' "$ARTIST_DIR/RECOUP.md") PROVIDER_ID=$(curl -sSL --max-time 90 "${AUTH[@]}" \ diff --git a/skills/recoup-content-make-graphics/references/workspace-context.md b/skills/recoup-content-make-graphics/references/workspace-context.md index 2b84168..f6cbce0 100644 --- a/skills/recoup-content-make-graphics/references/workspace-context.md +++ b/skills/recoup-content-make-graphics/references/workspace-context.md @@ -77,9 +77,9 @@ and for resolving the artist's `id`. ```bash # Real captions across platforms — the best available voice signal when there's no artist.md -curl -sS "$AUTH_HEADER" "https://api.recoupable.com/api/artists/$ARTIST_ID/posts" | jq +curl -sS "$AUTH_HEADER" "https://api.recoupable.dev/api/artists/$ARTIST_ID/posts" | jq # Profile / socials for tone + handles -curl -sS "$AUTH_HEADER" "https://api.recoupable.com/api/artists/$ARTIST_ID/socials" | jq +curl -sS "$AUTH_HEADER" "https://api.recoupable.dev/api/artists/$ARTIST_ID/socials" | jq ``` If neither workspace context nor API posts are available, **say so and ask the user for diff --git a/skills/recoup-content-make-video/references/account-resolver.md b/skills/recoup-content-make-video/references/account-resolver.md index 623b123..c432067 100644 --- a/skills/recoup-content-make-video/references/account-resolver.md +++ b/skills/recoup-content-make-video/references/account-resolver.md @@ -10,7 +10,7 @@ Pick whichever credential the environment provides; prefer the API key when both | Credential | Header | Where it comes from | | --- | --- | --- | -| `RECOUP_API_KEY` (`recoup_sk_…`) | `-H "x-api-key: $RECOUP_API_KEY"` | agent signup; see developers.recoupable.com/agents | +| `RECOUP_API_KEY` (`recoup_sk_…`) | `-H "x-api-key: $RECOUP_API_KEY"` | agent signup; see docs.recoupable.dev/agents | | `RECOUP_ACCESS_TOKEN` | `-H "Authorization: Bearer $RECOUP_ACCESS_TOKEN"` | short-lived sandbox token | ```bash @@ -22,7 +22,7 @@ else echo "No Recoup credential set — ask the user to authenticate; do not retry blindly." >&2 return 1 2>/dev/null || exit 1 # stop — never call the API unauthenticated fi -# Use as: curl -sS "${AUTH[@]}" "https://api.recoupable.com/api/..." +# Use as: curl -sS "${AUTH[@]}" "https://api.recoupable.dev/api/..." ``` If neither is set, the user is not authenticated — tell them to sign in rather than @@ -63,11 +63,11 @@ spans every org the account belongs to. Org rows expose `organization_id` (pass ```bash ORG_ID="${RECOUP_ORG_ID:-$(curl -sS "${AUTH[@]}" \ - "https://api.recoupable.com/api/organizations" | jq -r '.organizations[0].organization_id')}" + "https://api.recoupable.dev/api/organizations" | jq -r '.organizations[0].organization_id')}" # Capture BOTH ids for the matched artist. ARTISTS_JSON=$(curl -sS "${AUTH[@]}" \ - "https://api.recoupable.com/api/artists?org_id=$ORG_ID") + "https://api.recoupable.dev/api/artists?org_id=$ORG_ID") ARTIST_ACCOUNT_ID=$(echo "$ARTISTS_JSON" \ | jq -r --arg n "$ARTIST_NAME" '.artists[] | select(.name==$n) | .account_id') diff --git a/skills/recoup-content-make-video/references/analyze-gate.md b/skills/recoup-content-make-video/references/analyze-gate.md index 67010cd..0ef04c8 100644 --- a/skills/recoup-content-make-video/references/analyze-gate.md +++ b/skills/recoup-content-make-video/references/analyze-gate.md @@ -14,7 +14,7 @@ at the very end; catch a bad clip before you spend more on it. (For still images ## How ```bash -curl -sS -X POST "https://api.recoupable.com/api/content/analyze" "${AUTH[@]}" \ +curl -sS -X POST "https://api.recoupable.dev/api/content/analyze" "${AUTH[@]}" \ -H "Content-Type: application/json" \ -d "$(jq -n --arg v "$VIDEO_URL" --arg p "$RUBRIC" '{video_url:$v, prompt:$p}')" | jq -r '.text' ``` diff --git a/skills/recoup-content-make-video/references/content-api.md b/skills/recoup-content-make-video/references/content-api.md index df2b4bf..0742f08 100644 --- a/skills/recoup-content-make-video/references/content-api.md +++ b/skills/recoup-content-make-video/references/content-api.md @@ -6,7 +6,7 @@ estimation. For auth + artist-ID resolution, use the account-resolver reference skill bundles one; otherwise set the auth header inline (`x-api-key: $RECOUP_API_KEY`, or `Authorization: Bearer $RECOUP_ACCESS_TOKEN`). -`BASE="https://api.recoupable.com/api"`. Pass the auth header from `account-resolver.md` +`BASE="https://api.recoupable.dev/api"`. Pass the auth header from `account-resolver.md` as `"${AUTH[@]}"` on every call. ## Endpoints @@ -30,7 +30,7 @@ as `"${AUTH[@]}"` on every call. > /content/create` are **async** → `runId`, polled via `/tasks/runs`. Don't assume everything > is async — image/caption come straight back. -Full docs: `https://developers.recoupable.com/content-agent`. +Full docs: `https://docs.recoupable.dev/content-agent`. ## The six video modes @@ -88,7 +88,7 @@ curl -sS "${AUTH[@]}" "$BASE/tasks/runs?runId=$RUN_ID" | jq '.runs[0].output' ``` On a non-`COMPLETED` terminal status, surface `.runs[0].error` and stop — never claim -success. See `https://developers.recoupable.com/api-reference/tasks/runs`. +success. See `https://docs.recoupable.dev/api-reference/tasks/runs`. ## Edit operations (`PATCH $BASE/content`) diff --git a/skills/recoup-content-make-video/references/research-context.md b/skills/recoup-content-make-video/references/research-context.md index 0e62d88..130ffa7 100644 --- a/skills/recoup-content-make-video/references/research-context.md +++ b/skills/recoup-content-make-video/references/research-context.md @@ -25,7 +25,7 @@ research. ## Auth + the provider ID chain -Research endpoints live under `https://api.recoupable.com/api/research/…` and accept the +Research endpoints live under `https://api.recoupable.dev/api/research/…` and accept the same auth as everything else — reuse the `AUTH` array from the account-resolver reference (`x-api-key: $RECOUP_API_KEY` preferred, or `Authorization: Bearer $RECOUP_ACCESS_TOKEN`). @@ -34,7 +34,7 @@ slug like `wjcgfd9i`, *not* the Recoup `account_id`/`id` and *not* the Spotify i once from the Spotify id in `RECOUP.md`, then reuse: ```bash -BASE="https://api.recoupable.com/api" +BASE="https://api.recoupable.dev/api" SPOTIFY_ID=$(sed -n 's/^spotifyArtistId:[[:space:]]*//p' "$ARTIST_DIR/RECOUP.md") PROVIDER_ID=$(curl -sSL --max-time 90 "${AUTH[@]}" \ diff --git a/skills/recoup-content-make-video/references/workspace-context.md b/skills/recoup-content-make-video/references/workspace-context.md index 2b84168..f6cbce0 100644 --- a/skills/recoup-content-make-video/references/workspace-context.md +++ b/skills/recoup-content-make-video/references/workspace-context.md @@ -77,9 +77,9 @@ and for resolving the artist's `id`. ```bash # Real captions across platforms — the best available voice signal when there's no artist.md -curl -sS "$AUTH_HEADER" "https://api.recoupable.com/api/artists/$ARTIST_ID/posts" | jq +curl -sS "$AUTH_HEADER" "https://api.recoupable.dev/api/artists/$ARTIST_ID/posts" | jq # Profile / socials for tone + handles -curl -sS "$AUTH_HEADER" "https://api.recoupable.com/api/artists/$ARTIST_ID/socials" | jq +curl -sS "$AUTH_HEADER" "https://api.recoupable.dev/api/artists/$ARTIST_ID/socials" | jq ``` If neither workspace context nor API posts are available, **say so and ask the user for diff --git a/skills/recoup-content-reactive-post/references/account-resolver.md b/skills/recoup-content-reactive-post/references/account-resolver.md index 623b123..c432067 100644 --- a/skills/recoup-content-reactive-post/references/account-resolver.md +++ b/skills/recoup-content-reactive-post/references/account-resolver.md @@ -10,7 +10,7 @@ Pick whichever credential the environment provides; prefer the API key when both | Credential | Header | Where it comes from | | --- | --- | --- | -| `RECOUP_API_KEY` (`recoup_sk_…`) | `-H "x-api-key: $RECOUP_API_KEY"` | agent signup; see developers.recoupable.com/agents | +| `RECOUP_API_KEY` (`recoup_sk_…`) | `-H "x-api-key: $RECOUP_API_KEY"` | agent signup; see docs.recoupable.dev/agents | | `RECOUP_ACCESS_TOKEN` | `-H "Authorization: Bearer $RECOUP_ACCESS_TOKEN"` | short-lived sandbox token | ```bash @@ -22,7 +22,7 @@ else echo "No Recoup credential set — ask the user to authenticate; do not retry blindly." >&2 return 1 2>/dev/null || exit 1 # stop — never call the API unauthenticated fi -# Use as: curl -sS "${AUTH[@]}" "https://api.recoupable.com/api/..." +# Use as: curl -sS "${AUTH[@]}" "https://api.recoupable.dev/api/..." ``` If neither is set, the user is not authenticated — tell them to sign in rather than @@ -63,11 +63,11 @@ spans every org the account belongs to. Org rows expose `organization_id` (pass ```bash ORG_ID="${RECOUP_ORG_ID:-$(curl -sS "${AUTH[@]}" \ - "https://api.recoupable.com/api/organizations" | jq -r '.organizations[0].organization_id')}" + "https://api.recoupable.dev/api/organizations" | jq -r '.organizations[0].organization_id')}" # Capture BOTH ids for the matched artist. ARTISTS_JSON=$(curl -sS "${AUTH[@]}" \ - "https://api.recoupable.com/api/artists?org_id=$ORG_ID") + "https://api.recoupable.dev/api/artists?org_id=$ORG_ID") ARTIST_ACCOUNT_ID=$(echo "$ARTISTS_JSON" \ | jq -r --arg n "$ARTIST_NAME" '.artists[] | select(.name==$n) | .account_id') diff --git a/skills/recoup-content-reactive-post/references/analyze-gate.md b/skills/recoup-content-reactive-post/references/analyze-gate.md index 67010cd..0ef04c8 100644 --- a/skills/recoup-content-reactive-post/references/analyze-gate.md +++ b/skills/recoup-content-reactive-post/references/analyze-gate.md @@ -14,7 +14,7 @@ at the very end; catch a bad clip before you spend more on it. (For still images ## How ```bash -curl -sS -X POST "https://api.recoupable.com/api/content/analyze" "${AUTH[@]}" \ +curl -sS -X POST "https://api.recoupable.dev/api/content/analyze" "${AUTH[@]}" \ -H "Content-Type: application/json" \ -d "$(jq -n --arg v "$VIDEO_URL" --arg p "$RUBRIC" '{video_url:$v, prompt:$p}')" | jq -r '.text' ``` diff --git a/skills/recoup-content-reactive-post/references/content-api.md b/skills/recoup-content-reactive-post/references/content-api.md index df2b4bf..0742f08 100644 --- a/skills/recoup-content-reactive-post/references/content-api.md +++ b/skills/recoup-content-reactive-post/references/content-api.md @@ -6,7 +6,7 @@ estimation. For auth + artist-ID resolution, use the account-resolver reference skill bundles one; otherwise set the auth header inline (`x-api-key: $RECOUP_API_KEY`, or `Authorization: Bearer $RECOUP_ACCESS_TOKEN`). -`BASE="https://api.recoupable.com/api"`. Pass the auth header from `account-resolver.md` +`BASE="https://api.recoupable.dev/api"`. Pass the auth header from `account-resolver.md` as `"${AUTH[@]}"` on every call. ## Endpoints @@ -30,7 +30,7 @@ as `"${AUTH[@]}"` on every call. > /content/create` are **async** → `runId`, polled via `/tasks/runs`. Don't assume everything > is async — image/caption come straight back. -Full docs: `https://developers.recoupable.com/content-agent`. +Full docs: `https://docs.recoupable.dev/content-agent`. ## The six video modes @@ -88,7 +88,7 @@ curl -sS "${AUTH[@]}" "$BASE/tasks/runs?runId=$RUN_ID" | jq '.runs[0].output' ``` On a non-`COMPLETED` terminal status, surface `.runs[0].error` and stop — never claim -success. See `https://developers.recoupable.com/api-reference/tasks/runs`. +success. See `https://docs.recoupable.dev/api-reference/tasks/runs`. ## Edit operations (`PATCH $BASE/content`) diff --git a/skills/recoup-content-reactive-post/references/research-context.md b/skills/recoup-content-reactive-post/references/research-context.md index 0e62d88..130ffa7 100644 --- a/skills/recoup-content-reactive-post/references/research-context.md +++ b/skills/recoup-content-reactive-post/references/research-context.md @@ -25,7 +25,7 @@ research. ## Auth + the provider ID chain -Research endpoints live under `https://api.recoupable.com/api/research/…` and accept the +Research endpoints live under `https://api.recoupable.dev/api/research/…` and accept the same auth as everything else — reuse the `AUTH` array from the account-resolver reference (`x-api-key: $RECOUP_API_KEY` preferred, or `Authorization: Bearer $RECOUP_ACCESS_TOKEN`). @@ -34,7 +34,7 @@ slug like `wjcgfd9i`, *not* the Recoup `account_id`/`id` and *not* the Spotify i once from the Spotify id in `RECOUP.md`, then reuse: ```bash -BASE="https://api.recoupable.com/api" +BASE="https://api.recoupable.dev/api" SPOTIFY_ID=$(sed -n 's/^spotifyArtistId:[[:space:]]*//p' "$ARTIST_DIR/RECOUP.md") PROVIDER_ID=$(curl -sSL --max-time 90 "${AUTH[@]}" \ diff --git a/skills/recoup-content-reactive-post/references/workspace-context.md b/skills/recoup-content-reactive-post/references/workspace-context.md index 2b84168..f6cbce0 100644 --- a/skills/recoup-content-reactive-post/references/workspace-context.md +++ b/skills/recoup-content-reactive-post/references/workspace-context.md @@ -77,9 +77,9 @@ and for resolving the artist's `id`. ```bash # Real captions across platforms — the best available voice signal when there's no artist.md -curl -sS "$AUTH_HEADER" "https://api.recoupable.com/api/artists/$ARTIST_ID/posts" | jq +curl -sS "$AUTH_HEADER" "https://api.recoupable.dev/api/artists/$ARTIST_ID/posts" | jq # Profile / socials for tone + handles -curl -sS "$AUTH_HEADER" "https://api.recoupable.com/api/artists/$ARTIST_ID/socials" | jq +curl -sS "$AUTH_HEADER" "https://api.recoupable.dev/api/artists/$ARTIST_ID/socials" | jq ``` If neither workspace context nor API posts are available, **say so and ask the user for diff --git a/skills/recoup-content-write-caption/references/account-resolver.md b/skills/recoup-content-write-caption/references/account-resolver.md index 623b123..c432067 100644 --- a/skills/recoup-content-write-caption/references/account-resolver.md +++ b/skills/recoup-content-write-caption/references/account-resolver.md @@ -10,7 +10,7 @@ Pick whichever credential the environment provides; prefer the API key when both | Credential | Header | Where it comes from | | --- | --- | --- | -| `RECOUP_API_KEY` (`recoup_sk_…`) | `-H "x-api-key: $RECOUP_API_KEY"` | agent signup; see developers.recoupable.com/agents | +| `RECOUP_API_KEY` (`recoup_sk_…`) | `-H "x-api-key: $RECOUP_API_KEY"` | agent signup; see docs.recoupable.dev/agents | | `RECOUP_ACCESS_TOKEN` | `-H "Authorization: Bearer $RECOUP_ACCESS_TOKEN"` | short-lived sandbox token | ```bash @@ -22,7 +22,7 @@ else echo "No Recoup credential set — ask the user to authenticate; do not retry blindly." >&2 return 1 2>/dev/null || exit 1 # stop — never call the API unauthenticated fi -# Use as: curl -sS "${AUTH[@]}" "https://api.recoupable.com/api/..." +# Use as: curl -sS "${AUTH[@]}" "https://api.recoupable.dev/api/..." ``` If neither is set, the user is not authenticated — tell them to sign in rather than @@ -63,11 +63,11 @@ spans every org the account belongs to. Org rows expose `organization_id` (pass ```bash ORG_ID="${RECOUP_ORG_ID:-$(curl -sS "${AUTH[@]}" \ - "https://api.recoupable.com/api/organizations" | jq -r '.organizations[0].organization_id')}" + "https://api.recoupable.dev/api/organizations" | jq -r '.organizations[0].organization_id')}" # Capture BOTH ids for the matched artist. ARTISTS_JSON=$(curl -sS "${AUTH[@]}" \ - "https://api.recoupable.com/api/artists?org_id=$ORG_ID") + "https://api.recoupable.dev/api/artists?org_id=$ORG_ID") ARTIST_ACCOUNT_ID=$(echo "$ARTISTS_JSON" \ | jq -r --arg n "$ARTIST_NAME" '.artists[] | select(.name==$n) | .account_id') diff --git a/skills/recoup-content-write-caption/references/analyze-gate.md b/skills/recoup-content-write-caption/references/analyze-gate.md index 67010cd..0ef04c8 100644 --- a/skills/recoup-content-write-caption/references/analyze-gate.md +++ b/skills/recoup-content-write-caption/references/analyze-gate.md @@ -14,7 +14,7 @@ at the very end; catch a bad clip before you spend more on it. (For still images ## How ```bash -curl -sS -X POST "https://api.recoupable.com/api/content/analyze" "${AUTH[@]}" \ +curl -sS -X POST "https://api.recoupable.dev/api/content/analyze" "${AUTH[@]}" \ -H "Content-Type: application/json" \ -d "$(jq -n --arg v "$VIDEO_URL" --arg p "$RUBRIC" '{video_url:$v, prompt:$p}')" | jq -r '.text' ``` diff --git a/skills/recoup-content-write-caption/references/content-api.md b/skills/recoup-content-write-caption/references/content-api.md index df2b4bf..0742f08 100644 --- a/skills/recoup-content-write-caption/references/content-api.md +++ b/skills/recoup-content-write-caption/references/content-api.md @@ -6,7 +6,7 @@ estimation. For auth + artist-ID resolution, use the account-resolver reference skill bundles one; otherwise set the auth header inline (`x-api-key: $RECOUP_API_KEY`, or `Authorization: Bearer $RECOUP_ACCESS_TOKEN`). -`BASE="https://api.recoupable.com/api"`. Pass the auth header from `account-resolver.md` +`BASE="https://api.recoupable.dev/api"`. Pass the auth header from `account-resolver.md` as `"${AUTH[@]}"` on every call. ## Endpoints @@ -30,7 +30,7 @@ as `"${AUTH[@]}"` on every call. > /content/create` are **async** → `runId`, polled via `/tasks/runs`. Don't assume everything > is async — image/caption come straight back. -Full docs: `https://developers.recoupable.com/content-agent`. +Full docs: `https://docs.recoupable.dev/content-agent`. ## The six video modes @@ -88,7 +88,7 @@ curl -sS "${AUTH[@]}" "$BASE/tasks/runs?runId=$RUN_ID" | jq '.runs[0].output' ``` On a non-`COMPLETED` terminal status, surface `.runs[0].error` and stop — never claim -success. See `https://developers.recoupable.com/api-reference/tasks/runs`. +success. See `https://docs.recoupable.dev/api-reference/tasks/runs`. ## Edit operations (`PATCH $BASE/content`) diff --git a/skills/recoup-content-write-caption/references/research-context.md b/skills/recoup-content-write-caption/references/research-context.md index 0e62d88..130ffa7 100644 --- a/skills/recoup-content-write-caption/references/research-context.md +++ b/skills/recoup-content-write-caption/references/research-context.md @@ -25,7 +25,7 @@ research. ## Auth + the provider ID chain -Research endpoints live under `https://api.recoupable.com/api/research/…` and accept the +Research endpoints live under `https://api.recoupable.dev/api/research/…` and accept the same auth as everything else — reuse the `AUTH` array from the account-resolver reference (`x-api-key: $RECOUP_API_KEY` preferred, or `Authorization: Bearer $RECOUP_ACCESS_TOKEN`). @@ -34,7 +34,7 @@ slug like `wjcgfd9i`, *not* the Recoup `account_id`/`id` and *not* the Spotify i once from the Spotify id in `RECOUP.md`, then reuse: ```bash -BASE="https://api.recoupable.com/api" +BASE="https://api.recoupable.dev/api" SPOTIFY_ID=$(sed -n 's/^spotifyArtistId:[[:space:]]*//p' "$ARTIST_DIR/RECOUP.md") PROVIDER_ID=$(curl -sSL --max-time 90 "${AUTH[@]}" \ diff --git a/skills/recoup-content-write-caption/references/workspace-context.md b/skills/recoup-content-write-caption/references/workspace-context.md index 2b84168..f6cbce0 100644 --- a/skills/recoup-content-write-caption/references/workspace-context.md +++ b/skills/recoup-content-write-caption/references/workspace-context.md @@ -77,9 +77,9 @@ and for resolving the artist's `id`. ```bash # Real captions across platforms — the best available voice signal when there's no artist.md -curl -sS "$AUTH_HEADER" "https://api.recoupable.com/api/artists/$ARTIST_ID/posts" | jq +curl -sS "$AUTH_HEADER" "https://api.recoupable.dev/api/artists/$ARTIST_ID/posts" | jq # Profile / socials for tone + handles -curl -sS "$AUTH_HEADER" "https://api.recoupable.com/api/artists/$ARTIST_ID/socials" | jq +curl -sS "$AUTH_HEADER" "https://api.recoupable.dev/api/artists/$ARTIST_ID/socials" | jq ``` If neither workspace context nor API posts are available, **say so and ask the user for diff --git a/skills/recoup-internal-account-health-report/SKILL.md b/skills/recoup-internal-account-health-report/SKILL.md index a5b9f61..57f8e42 100644 --- a/skills/recoup-internal-account-health-report/SKILL.md +++ b/skills/recoup-internal-account-health-report/SKILL.md @@ -36,7 +36,7 @@ account status report. list endpoints. Confirm admin with `GET /api/admins` → `{"isAdmin": true}`. - An **owner** token only sees its own account. - `reportlab` for the PDF: `pip install reportlab --break-system-packages`. -- Base URL: `https://api.recoupable.com/api` (override with `RECOUP_API_BASE`). +- Base URL: `https://api.recoupable.dev/api` (override with `RECOUP_API_BASE`). Load the `recoup-platform-api-access` skill for endpoint details. ## Quick run diff --git a/skills/recoup-internal-account-health-report/scripts/generate_account_status.py b/skills/recoup-internal-account-health-report/scripts/generate_account_status.py index e6deabe..06d1155 100644 --- a/skills/recoup-internal-account-health-report/scripts/generate_account_status.py +++ b/skills/recoup-internal-account-health-report/scripts/generate_account_status.py @@ -18,7 +18,7 @@ """ import argparse, datetime, json, os, re, sys, urllib.request, urllib.parse -BASE = os.environ.get("RECOUP_API_BASE", "https://api.recoupable.com") # endpoint paths already include the /api prefix +BASE = os.environ.get("RECOUP_API_BASE", "https://api.recoupable.dev") # endpoint paths already include the /api prefix def api(method, path, token, body=None): diff --git a/skills/recoup-internal-funnel-valuation-pipeline/SKILL.md b/skills/recoup-internal-funnel-valuation-pipeline/SKILL.md index 3ec5995..9842d87 100644 --- a/skills/recoup-internal-funnel-valuation-pipeline/SKILL.md +++ b/skills/recoup-internal-funnel-valuation-pipeline/SKILL.md @@ -40,7 +40,7 @@ to prove that quickly enough that the lead converts. - `ATTIO_API_KEY` — an Attio access token (read-write on records + list entries). - `RECOUP_API_KEY` (`recoup_sk_…`) — for catalog sizing via the Research API; mint one - with `POST https://api.recoupable.com/api/agents/signup`. Load the + with `POST https://api.recoupable.dev/api/agents/signup`. Load the `recoup-research-artist-overview` and `recoup-catalog-estimate-value` skills for endpoint detail. - `reportlab` for the PDF: `pip install reportlab --break-system-packages`. - Scripts ship in this skill's `scripts/`; run them from the skill directory as diff --git a/skills/recoup-internal-funnel-valuation-pipeline/references/recoup-valuation-api.md b/skills/recoup-internal-funnel-valuation-pipeline/references/recoup-valuation-api.md index b6490f0..7a4f8c4 100644 --- a/skills/recoup-internal-funnel-valuation-pipeline/references/recoup-valuation-api.md +++ b/skills/recoup-internal-funnel-valuation-pipeline/references/recoup-valuation-api.md @@ -2,7 +2,7 @@ The marketing valuation tool (`recoupable.com/valuation`) is just a thin client over **public Recoup APIs**. Call them directly — `scripts/fetch_catalog.py` does exactly this — instead of -scraping the UI. Base: `https://recoup-api.vercel.app` (or `https://api.recoupable.com`). +scraping the UI. Base: `https://recoup-api.vercel.app` (or `https://api.recoupable.dev`). Auth: `x-api-key: $RECOUP_API_KEY` (or `Authorization: Bearer $RECOUP_ACCESS_TOKEN`). > **Auth gotcha — the key and the token cover different routes.** A hex `x-api-key` authorizes diff --git a/skills/recoup-platform-connect-account/SKILL.md b/skills/recoup-platform-connect-account/SKILL.md index de6f38a..d84e311 100644 --- a/skills/recoup-platform-connect-account/SKILL.md +++ b/skills/recoup-platform-connect-account/SKILL.md @@ -13,7 +13,7 @@ Recoup. Idempotent and safe to re-run. 1. **Idempotency:** if `~/.claude/recoup.env` exists, source it and `curl -s -o /dev/null -w "%{http_code}" -H "x-api-key: $RECOUP_API_KEY" - https://api.recoupable.com/api/accounts/id` → if `200`, skip to org lookup + https://api.recoupable.dev/api/accounts/id` → if `200`, skip to org lookup ("already set up — refreshing memory only"). 2. **Confirm email** (from session context or ask) — must be one the customer controls; the key inherits that account's orgs/artists. Never use an diff --git a/skills/recoup-release-plan-rollout/references/endpoints.md b/skills/recoup-release-plan-rollout/references/endpoints.md index 38aa5f8..fe0d055 100644 --- a/skills/recoup-release-plan-rollout/references/endpoints.md +++ b/skills/recoup-release-plan-rollout/references/endpoints.md @@ -1,13 +1,13 @@ -# Endpoints reference (matches production `api.recoupable.com`) +# Endpoints reference (matches production `api.recoupable.dev`) The live `/api/research/*` surface, verified against the OpenAPI spec at -`developers.recoupable.com/api-reference/openapi/research.json` and live calls. +`docs.recoupable.dev/api-reference/openapi/research.json` and live calls. **The research backend is songstats-based** — responses wrap data in an `artist_info` envelope and use `songstats_artist_id` / `id`. ```bash export RECOUP_API_KEY="recoup_sk_..." -export RECOUP_API="https://api.recoupable.com/api" +export RECOUP_API="https://api.recoupable.dev/api" ``` ## The two-step pattern: resolve, then look up diff --git a/skills/recoup-release-plan-rollout/references/response-shapes.md b/skills/recoup-release-plan-rollout/references/response-shapes.md index 1a6629b..a7b89ae 100644 --- a/skills/recoup-release-plan-rollout/references/response-shapes.md +++ b/skills/recoup-release-plan-rollout/references/response-shapes.md @@ -1,4 +1,4 @@ -# Response shapes (production `api.recoupable.com`, songstats-based) +# Response shapes (production `api.recoupable.dev`, songstats-based) The research backend is **songstats-based**. When you need a field not verified below, **dump it first** rather than guessing: diff --git a/skills/recoup-release-track-drop/references/response-shapes.md b/skills/recoup-release-track-drop/references/response-shapes.md index 1a6629b..a7b89ae 100644 --- a/skills/recoup-release-track-drop/references/response-shapes.md +++ b/skills/recoup-release-track-drop/references/response-shapes.md @@ -1,4 +1,4 @@ -# Response shapes (production `api.recoupable.com`, songstats-based) +# Response shapes (production `api.recoupable.dev`, songstats-based) The research backend is **songstats-based**. When you need a field not verified below, **dump it first** rather than guessing: diff --git a/skills/recoup-research-artist-overview/SKILL.md b/skills/recoup-research-artist-overview/SKILL.md index be348f0..e9f3ee1 100644 --- a/skills/recoup-research-artist-overview/SKILL.md +++ b/skills/recoup-research-artist-overview/SKILL.md @@ -11,7 +11,7 @@ never a fabricated number. ```bash export RECOUP_API_KEY="recoup_sk_..." # already set in Recoup sandboxes -export RECOUP_API="https://api.recoupable.com/api" +export RECOUP_API="https://api.recoupable.dev/api" ``` All GET endpoints live under `$RECOUP_API/research` and auth with `x-api-key`. diff --git a/skills/recoup-research-artist-overview/references/endpoints.md b/skills/recoup-research-artist-overview/references/endpoints.md index ff23c8e..34c9421 100644 --- a/skills/recoup-research-artist-overview/references/endpoints.md +++ b/skills/recoup-research-artist-overview/references/endpoints.md @@ -4,7 +4,7 @@ Full curl examples for every production `/api/research/*` endpoint, plus parameter rules, response shapes, latency budgets, and platform source enums. These are the **current production endpoints** documented at - (see the `/api-reference/research/*` pages). + (see the `/api-reference/research/*` pages). The research API is backed by **Songstats**, so entity IDs are short alphanumeric strings like `wjcgfd9i` (artists) or `1ik97vot` (tracks). @@ -12,13 +12,13 @@ All examples assume: ```bash export RECOUP_API_KEY="recoup_sk_..." -export RECOUP_API="https://api.recoupable.com/api" +export RECOUP_API="https://api.recoupable.dev/api" ``` No key? Get one instantly (no dashboard, no email verification): ```bash -export RECOUP_API_KEY=$(curl -s -X POST "https://api.recoupable.com/api/agents/signup" \ +export RECOUP_API_KEY=$(curl -s -X POST "https://api.recoupable.dev/api/agents/signup" \ -H "Content-Type: application/json" \ -d '{"email":"agent+'$(date +%s)-$RANDOM'@recoupable.com"}' | jq -r .api_key) ``` diff --git a/skills/recoup-research-artist-overview/references/workflows.md b/skills/recoup-research-artist-overview/references/workflows.md index 32325fc..b403082 100644 --- a/skills/recoup-research-artist-overview/references/workflows.md +++ b/skills/recoup-research-artist-overview/references/workflows.md @@ -11,7 +11,7 @@ All examples assume: ```bash export RECOUP_API_KEY="recoup_sk_..." -export RECOUP_API="https://api.recoupable.com/api" +export RECOUP_API="https://api.recoupable.dev/api" AUTH="x-api-key: $RECOUP_API_KEY" ``` diff --git a/skills/recoup-research-find-contacts/SKILL.md b/skills/recoup-research-find-contacts/SKILL.md index 6931ef4..61ed99d 100644 --- a/skills/recoup-research-find-contacts/SKILL.md +++ b/skills/recoup-research-find-contacts/SKILL.md @@ -8,7 +8,7 @@ description: Find music-industry people — managers, A&R, press, label and book Find industry people (managers, A&R, press) and draft outreach. ```bash -export RECOUP_API="https://api.recoupable.com/api" # auth header: x-api-key: $RECOUP_API_KEY +export RECOUP_API="https://api.recoupable.dev/api" # auth header: x-api-key: $RECOUP_API_KEY ``` ## Procedure diff --git a/skills/recoup-research-find-contacts/references/workflows.md b/skills/recoup-research-find-contacts/references/workflows.md index 32325fc..b403082 100644 --- a/skills/recoup-research-find-contacts/references/workflows.md +++ b/skills/recoup-research-find-contacts/references/workflows.md @@ -11,7 +11,7 @@ All examples assume: ```bash export RECOUP_API_KEY="recoup_sk_..." -export RECOUP_API="https://api.recoupable.com/api" +export RECOUP_API="https://api.recoupable.dev/api" AUTH="x-api-key: $RECOUP_API_KEY" ``` diff --git a/skills/recoup-research-find-talent/SKILL.md b/skills/recoup-research-find-talent/SKILL.md index a53d365..2a50b62 100644 --- a/skills/recoup-research-find-talent/SKILL.md +++ b/skills/recoup-research-find-talent/SKILL.md @@ -8,7 +8,7 @@ description: Find emerging or unsigned artists you don't already track — A&R s A&R discovery of artists you *don't* already track. ```bash -export RECOUP_API="https://api.recoupable.com/api" # auth header: x-api-key: $RECOUP_API_KEY +export RECOUP_API="https://api.recoupable.dev/api" # auth header: x-api-key: $RECOUP_API_KEY ``` Discovery starts from a known **anchor** artist and fans out through `/similar`, diff --git a/skills/recoup-research-find-talent/references/workflows.md b/skills/recoup-research-find-talent/references/workflows.md index 32325fc..b403082 100644 --- a/skills/recoup-research-find-talent/references/workflows.md +++ b/skills/recoup-research-find-talent/references/workflows.md @@ -11,7 +11,7 @@ All examples assume: ```bash export RECOUP_API_KEY="recoup_sk_..." -export RECOUP_API="https://api.recoupable.com/api" +export RECOUP_API="https://api.recoupable.dev/api" AUTH="x-api-key: $RECOUP_API_KEY" ``` diff --git a/skills/recoup-research-playlist-targets/SKILL.md b/skills/recoup-research-playlist-targets/SKILL.md index c3869d8..2515b17 100644 --- a/skills/recoup-research-playlist-targets/SKILL.md +++ b/skills/recoup-research-playlist-targets/SKILL.md @@ -8,7 +8,7 @@ description: Find which playlists an artist or whole catalog should target and w Catalog-wide playlist strategy from research data (not one audio file). ```bash -export RECOUP_API="https://api.recoupable.com/api" # auth header: x-api-key: $RECOUP_API_KEY +export RECOUP_API="https://api.recoupable.dev/api" # auth header: x-api-key: $RECOUP_API_KEY ``` ## Procedure diff --git a/skills/recoup-research-playlist-targets/references/workflows.md b/skills/recoup-research-playlist-targets/references/workflows.md index 32325fc..b403082 100644 --- a/skills/recoup-research-playlist-targets/references/workflows.md +++ b/skills/recoup-research-playlist-targets/references/workflows.md @@ -11,7 +11,7 @@ All examples assume: ```bash export RECOUP_API_KEY="recoup_sk_..." -export RECOUP_API="https://api.recoupable.com/api" +export RECOUP_API="https://api.recoupable.dev/api" AUTH="x-api-key: $RECOUP_API_KEY" ``` diff --git a/skills/recoup-research-the-web/SKILL.md b/skills/recoup-research-the-web/SKILL.md index e47b083..6e5a71e 100644 --- a/skills/recoup-research-the-web/SKILL.md +++ b/skills/recoup-research-the-web/SKILL.md @@ -9,7 +9,7 @@ General open-web research and the graceful-degradation fallback for the other research skills. Researches any entity, not just artists. ```bash -export RECOUP_API="https://api.recoupable.com/api" # auth header: x-api-key: $RECOUP_API_KEY +export RECOUP_API="https://api.recoupable.dev/api" # auth header: x-api-key: $RECOUP_API_KEY ``` ## Tools diff --git a/skills/recoup-research-the-web/references/workflows.md b/skills/recoup-research-the-web/references/workflows.md index 32325fc..b403082 100644 --- a/skills/recoup-research-the-web/references/workflows.md +++ b/skills/recoup-research-the-web/references/workflows.md @@ -11,7 +11,7 @@ All examples assume: ```bash export RECOUP_API_KEY="recoup_sk_..." -export RECOUP_API="https://api.recoupable.com/api" +export RECOUP_API="https://api.recoupable.dev/api" AUTH="x-api-key: $RECOUP_API_KEY" ``` diff --git a/skills/recoup-research-weekly-brief/SKILL.md b/skills/recoup-research-weekly-brief/SKILL.md index cf79132..df503d5 100644 --- a/skills/recoup-research-weekly-brief/SKILL.md +++ b/skills/recoup-research-weekly-brief/SKILL.md @@ -9,7 +9,7 @@ The recurring artifact a customer opens. Snapshots, not time series — the delt vs your last file. ```bash -export RECOUP_API="https://api.recoupable.com/api" # auth header: x-api-key: $RECOUP_API_KEY +export RECOUP_API="https://api.recoupable.dev/api" # auth header: x-api-key: $RECOUP_API_KEY ``` ## Procedure (idempotent, dated, diffed) diff --git a/skills/recoup-research-weekly-brief/references/workflows.md b/skills/recoup-research-weekly-brief/references/workflows.md index 32325fc..b403082 100644 --- a/skills/recoup-research-weekly-brief/references/workflows.md +++ b/skills/recoup-research-weekly-brief/references/workflows.md @@ -11,7 +11,7 @@ All examples assume: ```bash export RECOUP_API_KEY="recoup_sk_..." -export RECOUP_API="https://api.recoupable.com/api" +export RECOUP_API="https://api.recoupable.dev/api" AUTH="x-api-key: $RECOUP_API_KEY" ``` diff --git a/skills/recoup-song-analyze-audio/references/flamingo-api.md b/skills/recoup-song-analyze-audio/references/flamingo-api.md index d8cf330..2b93f8d 100644 --- a/skills/recoup-song-analyze-audio/references/flamingo-api.md +++ b/skills/recoup-song-analyze-audio/references/flamingo-api.md @@ -40,9 +40,9 @@ context from auth and ignores account overrides. The API answers on two hosts; examples below resolve the base from env so a skill works in either environment: -- `RECOUP_API` — full base including `/api` (e.g. `https://api.recoupable.com/api`) -- `RECOUP_API_URL` — host only (e.g. `https://api.recoupable.com`) -- Default when neither is set: `https://api.recoupable.com` +- `RECOUP_API` — full base including `/api` (e.g. `https://api.recoupable.dev/api`) +- `RECOUP_API_URL` — host only (e.g. `https://api.recoupable.dev`) +- Default when neither is set: `https://api.recoupable.dev` (The public docs are inconsistent about the canonical host; honoring the env vars avoids hard-coding the wrong one.) @@ -136,7 +136,7 @@ curl -sS "$API_BASE/songs/analyze/presets" "${AUTH[@]}" | jq '.presets[] | {name if [ -n "$RECOUP_API" ]; then API_BASE="${RECOUP_API%/}" else - RAW_API_URL="${RECOUP_API_URL:-https://api.recoupable.com}" + RAW_API_URL="${RECOUP_API_URL:-https://api.recoupable.dev}" API_BASE="${RAW_API_URL%/api}/api" fi diff --git a/skills/recoup-song-find-hook/references/flamingo-api.md b/skills/recoup-song-find-hook/references/flamingo-api.md index d8cf330..2b93f8d 100644 --- a/skills/recoup-song-find-hook/references/flamingo-api.md +++ b/skills/recoup-song-find-hook/references/flamingo-api.md @@ -40,9 +40,9 @@ context from auth and ignores account overrides. The API answers on two hosts; examples below resolve the base from env so a skill works in either environment: -- `RECOUP_API` — full base including `/api` (e.g. `https://api.recoupable.com/api`) -- `RECOUP_API_URL` — host only (e.g. `https://api.recoupable.com`) -- Default when neither is set: `https://api.recoupable.com` +- `RECOUP_API` — full base including `/api` (e.g. `https://api.recoupable.dev/api`) +- `RECOUP_API_URL` — host only (e.g. `https://api.recoupable.dev`) +- Default when neither is set: `https://api.recoupable.dev` (The public docs are inconsistent about the canonical host; honoring the env vars avoids hard-coding the wrong one.) @@ -136,7 +136,7 @@ curl -sS "$API_BASE/songs/analyze/presets" "${AUTH[@]}" | jq '.presets[] | {name if [ -n "$RECOUP_API" ]; then API_BASE="${RECOUP_API%/}" else - RAW_API_URL="${RECOUP_API_URL:-https://api.recoupable.com}" + RAW_API_URL="${RECOUP_API_URL:-https://api.recoupable.dev}" API_BASE="${RAW_API_URL%/api}/api" fi diff --git a/skills/recoup-song-placement-pitch/references/flamingo-api.md b/skills/recoup-song-placement-pitch/references/flamingo-api.md index d8cf330..2b93f8d 100644 --- a/skills/recoup-song-placement-pitch/references/flamingo-api.md +++ b/skills/recoup-song-placement-pitch/references/flamingo-api.md @@ -40,9 +40,9 @@ context from auth and ignores account overrides. The API answers on two hosts; examples below resolve the base from env so a skill works in either environment: -- `RECOUP_API` — full base including `/api` (e.g. `https://api.recoupable.com/api`) -- `RECOUP_API_URL` — host only (e.g. `https://api.recoupable.com`) -- Default when neither is set: `https://api.recoupable.com` +- `RECOUP_API` — full base including `/api` (e.g. `https://api.recoupable.dev/api`) +- `RECOUP_API_URL` — host only (e.g. `https://api.recoupable.dev`) +- Default when neither is set: `https://api.recoupable.dev` (The public docs are inconsistent about the canonical host; honoring the env vars avoids hard-coding the wrong one.) @@ -136,7 +136,7 @@ curl -sS "$API_BASE/songs/analyze/presets" "${AUTH[@]}" | jq '.presets[] | {name if [ -n "$RECOUP_API" ]; then API_BASE="${RECOUP_API%/}" else - RAW_API_URL="${RECOUP_API_URL:-https://api.recoupable.com}" + RAW_API_URL="${RECOUP_API_URL:-https://api.recoupable.dev}" API_BASE="${RAW_API_URL%/api}/api" fi