[object Object]

← back to Secrets Manager

routes: fan Browserbase creds to all-designerwallcoverings (local + Kamatera .env) for the live-scrape backend

53a3c70baac32f3fe9fd5f3f02f75afe3f7e2a26 · 2026-07-07 08:23:06 -0700 · Steve Abrams

Files touched

Diff

commit 53a3c70baac32f3fe9fd5f3f02f75afe3f7e2a26
Author: Steve Abrams <steve@designerwallcoverings.com>
Date:   Tue Jul 7 08:23:06 2026 -0700

    routes: fan Browserbase creds to all-designerwallcoverings (local + Kamatera .env) for the live-scrape backend
---
 routes.json | 145 ++++++++++++++++++++++++++++++++++++++++++++----------------
 1 file changed, 108 insertions(+), 37 deletions(-)

diff --git a/routes.json b/routes.json
index 70ba6ff..a22020a 100644
--- a/routes.json
+++ b/routes.json
@@ -23,7 +23,7 @@
       ]
     },
     "REPLICATE_API_TOKEN": {
-      "label": "Replicate API Token \u2014 wallco.ai SDXL gen fallback (WALLCO_COMFY_FALLBACK=replicate floor) + animate-museum-posts",
+      "label": "Replicate API Token — wallco.ai SDXL gen fallback (WALLCO_COMFY_FALLBACK=replicate floor) + animate-museum-posts",
       "verify": {
         "method": "GET",
         "url": "https://api.replicate.com/v1/account",
@@ -267,7 +267,7 @@
       ]
     },
     "STRIPE_VCL_WEBHOOK_SECRET": {
-      "label": "Stripe webhook signing secret \u2014 VCL endpoint we_1TUF1Y63uNmiRsMbNr1kLu52",
+      "label": "Stripe webhook signing secret — VCL endpoint we_1TUF1Y63uNmiRsMbNr1kLu52",
       "destinations": [
         {
           "type": "project",
@@ -282,7 +282,7 @@
       ]
     },
     "STRIPE_PRICE_VCL_STARTER_MONTH": {
-      "label": "Stripe Price ID \u2014 VCL Starter $49/mo",
+      "label": "Stripe Price ID — VCL Starter $49/mo",
       "destinations": [
         {
           "type": "project",
@@ -297,7 +297,7 @@
       ]
     },
     "STRIPE_PRICE_VCL_STANDARD_MONTH": {
-      "label": "Stripe Price ID \u2014 VCL Standard $99/mo",
+      "label": "Stripe Price ID — VCL Standard $99/mo",
       "destinations": [
         {
           "type": "project",
@@ -312,7 +312,7 @@
       ]
     },
     "STRIPE_PRICE_VCL_PREMIER_MONTH": {
-      "label": "Stripe Price ID \u2014 VCL Premier $199/mo",
+      "label": "Stripe Price ID — VCL Premier $199/mo",
       "destinations": [
         {
           "type": "project",
@@ -327,7 +327,7 @@
       ]
     },
     "HEYGEN_API_KEY": {
-      "label": "HeyGen API key \u2014 talking-head avatar video render (used by session-debrief skill)",
+      "label": "HeyGen API key — talking-head avatar video render (used by session-debrief skill)",
       "verify": {
         "method": "GET",
         "url": "https://api.heygen.com/v1/voice.list",
@@ -346,7 +346,7 @@
       ]
     },
     "INFO_VENTURACLAW_COM_PASSWORD": {
-      "label": "Purelymail mailbox password \u2014 info@venturaclaw.com (used by Ventura Claw Leads + the existing ventura-claw app)",
+      "label": "Purelymail mailbox password — info@venturaclaw.com (used by Ventura Claw Leads + the existing ventura-claw app)",
       "destinations": [
         {
           "type": "project",
@@ -371,7 +371,7 @@
       ]
     },
     "INFO_NATIONALPAPERHANGERS_COM_PASSWORD": {
-      "label": "Purelymail mailbox password \u2014 info@nationalpaperhangers.com",
+      "label": "Purelymail mailbox password — info@nationalpaperhangers.com",
       "destinations": [
         {
           "type": "project",
@@ -386,7 +386,7 @@
       ]
     },
     "STRIPE_NPH_WEBHOOK_SECRET": {
-      "label": "Stripe Webhook Signing Secret \u2014 NPH endpoint we_1TUDHV63uNmiRsMbRJea7EqU",
+      "label": "Stripe Webhook Signing Secret — NPH endpoint we_1TUDHV63uNmiRsMbRJea7EqU",
       "destinations": [
         {
           "type": "project",
@@ -401,7 +401,7 @@
       ]
     },
     "STRIPE_PRICE_PRO_MONTH": {
-      "label": "Stripe Price ID \u2014 NPH Pro $39/mo",
+      "label": "Stripe Price ID — NPH Pro $39/mo",
       "destinations": [
         {
           "type": "project",
@@ -416,7 +416,7 @@
       ]
     },
     "STRIPE_PRICE_PRO_YEAR": {
-      "label": "Stripe Price ID \u2014 NPH Pro $399/yr",
+      "label": "Stripe Price ID — NPH Pro $399/yr",
       "destinations": [
         {
           "type": "project",
@@ -431,7 +431,7 @@
       ]
     },
     "STRIPE_PRICE_SIGNATURE_MONTH": {
-      "label": "Stripe Price ID \u2014 NPH Signature $149/mo",
+      "label": "Stripe Price ID — NPH Signature $149/mo",
       "destinations": [
         {
           "type": "project",
@@ -446,7 +446,7 @@
       ]
     },
     "STRIPE_PRICE_SIGNATURE_YEAR": {
-      "label": "Stripe Price ID \u2014 NPH Signature $1500/yr",
+      "label": "Stripe Price ID — NPH Signature $1500/yr",
       "destinations": [
         {
           "type": "project",
@@ -461,7 +461,7 @@
       ]
     },
     "STRIPE_PRICE_ENTERPRISE_MONTH": {
-      "label": "Stripe Price ID \u2014 NPH Enterprise $399/mo",
+      "label": "Stripe Price ID — NPH Enterprise $399/mo",
       "destinations": [
         {
           "type": "project",
@@ -556,6 +556,16 @@
         {
           "type": "project",
           "path": "/Users/macstudio3/Projects/abrams-report/.env"
+        },
+        {
+          "type": "project",
+          "host": "45.61.58.125",
+          "user": "root",
+          "path": "/root/Projects/all-designerwallcoverings/.env"
+        },
+        {
+          "type": "project",
+          "path": "/Users/macstudio3/Projects/all-designerwallcoverings/.env"
         }
       ]
     },
@@ -575,6 +585,16 @@
         {
           "type": "project",
           "path": "/Users/macstudio3/Projects/abrams-report/.env"
+        },
+        {
+          "type": "project",
+          "host": "45.61.58.125",
+          "user": "root",
+          "path": "/root/Projects/all-designerwallcoverings/.env"
+        },
+        {
+          "type": "project",
+          "path": "/Users/macstudio3/Projects/all-designerwallcoverings/.env"
         }
       ]
     },
@@ -648,7 +668,7 @@
       ]
     },
     "GEMINI_API_KEY_DW_ENRICH": {
-      "label": "Google Gemini API Key \u2014 DEDICATED to DW image-enrichment / vendor-command-center. Created 2026-06-23 by vp-security as the rotation target for the leaked orphan keys (last-4 ejMo and S2ic, never registry-managed). Pre-staged EMPTY so that the moment Steve issues a fresh key at Google AI Studio, `add GEMINI_API_KEY_DW_ENRICH <new-key>` verifies it against Gemini and fans it (remapped to the bare var GEMINI_API_KEY) to the consumers below. Distinct from the master GEMINI_API_KEY (Letsbegin/Bertha/skills) and GEMINI_API_KEY_WALLCO (k720). If Steve prefers enrichment to ride the master key instead, he can skip this alias and update GEMINI_API_KEY directly \u2014 the env-ified consumers read GEMINI_API_KEY first.",
+      "label": "Google Gemini API Key — DEDICATED to DW image-enrichment / vendor-command-center. Created 2026-06-23 by vp-security as the rotation target for the leaked orphan keys (last-4 ejMo and S2ic, never registry-managed). Pre-staged EMPTY so that the moment Steve issues a fresh key at Google AI Studio, `add GEMINI_API_KEY_DW_ENRICH <new-key>` verifies it against Gemini and fans it (remapped to the bare var GEMINI_API_KEY) to the consumers below. Distinct from the master GEMINI_API_KEY (Letsbegin/Bertha/skills) and GEMINI_API_KEY_WALLCO (k720). If Steve prefers enrichment to ride the master key instead, he can skip this alias and update GEMINI_API_KEY directly — the env-ified consumers read GEMINI_API_KEY first.",
       "verify": {
         "method": "GET",
         "url": "https://generativelanguage.googleapis.com/v1beta/models?key={value}",
@@ -671,7 +691,7 @@
       ]
     },
     "GEMINI_API_KEY_WALLCO": {
-      "label": "Google Gemini API Key \u2014 DEDICATED to wallco.ai gen pipeline (nano-banana / gemini-2.5-flash-image fallback). Distinct from the master GEMINI_API_KEY (Letsbegin/Bertha/skills). Same dedicated-alias pattern as GEMINI_API_KEY_RALPH.",
+      "label": "Google Gemini API Key — DEDICATED to wallco.ai gen pipeline (nano-banana / gemini-2.5-flash-image fallback). Distinct from the master GEMINI_API_KEY (Letsbegin/Bertha/skills). Same dedicated-alias pattern as GEMINI_API_KEY_RALPH.",
       "verify": {
         "method": "GET",
         "url": "https://generativelanguage.googleapis.com/v1beta/models?key={value}",
@@ -875,8 +895,8 @@
       ]
     },
     "LINKEDIN_CLIENT_ID": {
-      "label": "LinkedIn OAuth Client ID \u2014 \"For Claude - 5-6-26\" app, bound to Designer Wallcoverings Page",
-      "_note": "No verify endpoint \u2014 LinkedIn requires the ID+SECRET pair to validate, and the CLI verifies one key at a time. Manual probe via POST /oauth/v2/accessToken with a fake code expects 'invalid_request: authorization code not found' = creds OK.",
+      "label": "LinkedIn OAuth Client ID — \"For Claude - 5-6-26\" app, bound to Designer Wallcoverings Page",
+      "_note": "No verify endpoint — LinkedIn requires the ID+SECRET pair to validate, and the CLI verifies one key at a time. Manual probe via POST /oauth/v2/accessToken with a fake code expects 'invalid_request: authorization code not found' = creds OK.",
       "destinations": [
         {
           "type": "project",
@@ -890,7 +910,7 @@
       ]
     },
     "LINKEDIN_CLIENT_SECRET": {
-      "label": "LinkedIn OAuth Client Secret \u2014 \"For Claude - 5-6-26\" app, bound to Designer Wallcoverings Page",
+      "label": "LinkedIn OAuth Client Secret — \"For Claude - 5-6-26\" app, bound to Designer Wallcoverings Page",
       "destinations": [
         {
           "type": "project",
@@ -904,7 +924,7 @@
       ]
     },
     "GOOGLE_OAUTH_CLIENT_ID": {
-      "label": "Google OAuth Client ID \u2014 DW Activation Calendar (shared DW Google Calendar, local :9765)",
+      "label": "Google OAuth Client ID — DW Activation Calendar (shared DW Google Calendar, local :9765)",
       "destinations": [
         {
           "type": "project",
@@ -913,7 +933,7 @@
       ]
     },
     "GOOGLE_OAUTH_CLIENT_SECRET": {
-      "label": "Google OAuth Client Secret \u2014 DW Activation Calendar (shared DW Google Calendar, local :9765)",
+      "label": "Google OAuth Client Secret — DW Activation Calendar (shared DW Google Calendar, local :9765)",
       "destinations": [
         {
           "type": "project",
@@ -922,7 +942,7 @@
       ]
     },
     "NPH_GOOGLE_OAUTH_CLIENT_ID": {
-      "label": "Google OAuth Client ID \u2014 buyer sign-in on National Paper Hangers",
+      "label": "Google OAuth Client ID — buyer sign-in on National Paper Hangers",
       "destinations": [
         {
           "type": "project",
@@ -936,7 +956,7 @@
       ]
     },
     "NPH_GOOGLE_OAUTH_CLIENT_SECRET": {
-      "label": "Google OAuth Client Secret \u2014 buyer sign-in on National Paper Hangers",
+      "label": "Google OAuth Client Secret — buyer sign-in on National Paper Hangers",
       "destinations": [
         {
           "type": "project",
@@ -1194,7 +1214,7 @@
       ]
     },
     "SLACK_APP_ID": {
-      "label": "Slack app \"Claude Access to Slack\" \u2014 App ID (A0BDER23QRK). Not secret but registered for completeness.",
+      "label": "Slack app \"Claude Access to Slack\" — App ID (A0BDER23QRK). Not secret but registered for completeness.",
       "destinations": [
         {
           "type": "env_file",
@@ -1203,7 +1223,7 @@
       ]
     },
     "SLACK_CLIENT_ID": {
-      "label": "Slack app Client ID \u2014 used with Client Secret in oauth.v2.access requests.",
+      "label": "Slack app Client ID — used with Client Secret in oauth.v2.access requests.",
       "destinations": [
         {
           "type": "env_file",
@@ -1212,7 +1232,7 @@
       ]
     },
     "SLACK_CLIENT_SECRET": {
-      "label": "Slack app Client Secret \u2014 OAuth token exchange (oauth.v2.access). NOT the bot token.",
+      "label": "Slack app Client Secret — OAuth token exchange (oauth.v2.access). NOT the bot token.",
       "destinations": [
         {
           "type": "env_file",
@@ -1221,7 +1241,7 @@
       ]
     },
     "SLACK_SIGNING_SECRET": {
-      "label": "Slack app Signing Secret \u2014 verifies inbound request signatures from Slack (events/interactivity).",
+      "label": "Slack app Signing Secret — verifies inbound request signatures from Slack (events/interactivity).",
       "destinations": [
         {
           "type": "env_file",
@@ -1230,7 +1250,7 @@
       ]
     },
     "SLACK_VERIFICATION_TOKEN": {
-      "label": "Slack DEPRECATED verification token \u2014 legacy request verification. Prefer SLACK_SIGNING_SECRET.",
+      "label": "Slack DEPRECATED verification token — legacy request verification. Prefer SLACK_SIGNING_SECRET.",
       "destinations": [
         {
           "type": "env_file",
@@ -1239,7 +1259,7 @@
       ]
     },
     "SLACK_APP_TOKEN": {
-      "label": "Slack app-level token (xapp-1-\u2026) for Socket Mode \u2014 connections:write. Routes events over WebSocket. NOT the bot token (xoxb-).",
+      "label": "Slack app-level token (xapp-1-…) for Socket Mode — connections:write. Routes events over WebSocket. NOT the bot token (xoxb-).",
       "destinations": [
         {
           "type": "env_file",
@@ -1248,7 +1268,7 @@
       ]
     },
     "CENSUS_API_KEY": {
-      "label": "US Census Bureau Data API key \u2014 demographics fetcher for commercialrealestate (ACS5 by ZCTA). NOTE: Census API returns 302-redirect on a valid data query so the secrets verifier cannot probe it; verify manually via an ACS5 curl.",
+      "label": "US Census Bureau Data API key — demographics fetcher for commercialrealestate (ACS5 by ZCTA). NOTE: Census API returns 302-redirect on a valid data query so the secrets verifier cannot probe it; verify manually via an ACS5 curl.",
       "destinations": [
         {
           "type": "env_file",
@@ -1257,7 +1277,7 @@
       ]
     },
     "POSTIZ_API_KEY": {
-      "label": "Postiz public API key (raw Authorization header) \u2014 DW marketing slideshow engine (post/integrations) + Postiz MCP",
+      "label": "Postiz public API key (raw Authorization header) — DW marketing slideshow engine (post/integrations) + Postiz MCP",
       "destinations": [
         {
           "type": "project",
@@ -1360,7 +1380,7 @@
     ]
   },
   "GOOGLE_DRIVE_CLIENT_ID": {
-    "description": "Google Drive OAuth Client ID \u2014 TSD photo-import-cli desktop app",
+    "description": "Google Drive OAuth Client ID — TSD photo-import-cli desktop app",
     "destinations": [
       {
         "type": "env-file",
@@ -1369,7 +1389,7 @@
     ]
   },
   "GOOGLE_DRIVE_CLIENT_SECRET": {
-    "description": "Google Drive OAuth Client Secret \u2014 TSD photo-import-cli",
+    "description": "Google Drive OAuth Client Secret — TSD photo-import-cli",
     "destinations": [
       {
         "type": "env-file",
@@ -1378,7 +1398,7 @@
     ]
   },
   "GOOGLE_DRIVE_REFRESH_TOKEN": {
-    "description": "Google Drive OAuth refresh token \u2014 read-only scope, owned by steveabramsdesigns@gmail.com",
+    "description": "Google Drive OAuth refresh token — read-only scope, owned by steveabramsdesigns@gmail.com",
     "destinations": [
       {
         "type": "env-file",
@@ -1417,7 +1437,7 @@
     ]
   },
   "TMDB_API_KEY": {
-    "label": "TMDB v3 API key \u2014 asseeninmovies Phase B drain (6.46M-stub queue)",
+    "label": "TMDB v3 API key — asseeninmovies Phase B drain (6.46M-stub queue)",
     "verify": {
       "method": "GET",
       "url": "https://api.themoviedb.org/3/authentication?api_key=__VALUE__",
@@ -1429,7 +1449,7 @@
     ]
   },
   "TMDB_READ_ACCESS_TOKEN": {
-    "label": "TMDB v4 read-access token (bearer) \u2014 alt to v3 api_key",
+    "label": "TMDB v4 read-access token (bearer) — alt to v3 api_key",
     "verify": {
       "method": "GET",
       "url": "https://api.themoviedb.org/3/authentication",
@@ -1491,7 +1511,7 @@
     ]
   },
   "SHOPIFY_DRAFT_TOKEN": {
-    "label": "Shopify Admin token (full access incl. write_draft_orders) \u2014 DW mural PDP custom-size checkout",
+    "label": "Shopify Admin token (full access incl. write_draft_orders) — DW mural PDP custom-size checkout",
     "destinations": [
       {
         "type": "project",
@@ -1543,5 +1563,56 @@
         "path": "/root/Projects/dw-vendor-microsites/.env"
       }
     ]
+  },
+  "TWOCAPTCHA_API_KEY": {
+    "destinations": [
+      {
+        "type": "skill",
+        "name": "2captcha"
+      },
+      {
+        "type": "skill",
+        "name": "browserbase"
+      }
+    ]
+  },
+  "DEDAR_LOGIN_URL": {
+    "label": "Dedar trade-portal login_url (pulled from Kamatera dw-price-stock 2026-07-06, supervised outbound-tier)",
+    "destinations": [
+      {
+        "type": "env_file",
+        "path": "~/Projects/Designer-Wallcoverings/DW-Programming/ImportNewSkufromURL/.env.local"
+      },
+      {
+        "type": "env_file",
+        "path": "~/Projects/secrets-manager/.env"
+      }
+    ]
+  },
+  "DEDAR_USERNAME": {
+    "label": "Dedar trade-portal username (pulled from Kamatera dw-price-stock 2026-07-06, supervised outbound-tier)",
+    "destinations": [
+      {
+        "type": "env_file",
+        "path": "~/Projects/Designer-Wallcoverings/DW-Programming/ImportNewSkufromURL/.env.local"
+      },
+      {
+        "type": "env_file",
+        "path": "~/Projects/secrets-manager/.env"
+      }
+    ]
+  },
+  "DEDAR_PASSWORD": {
+    "label": "Dedar trade-portal password (pulled from Kamatera dw-price-stock 2026-07-06, supervised outbound-tier)",
+    "destinations": [
+      {
+        "type": "env_file",
+        "path": "~/Projects/Designer-Wallcoverings/DW-Programming/ImportNewSkufromURL/.env.local"
+      },
+      {
+        "type": "env_file",
+        "path": "~/Projects/secrets-manager/.env"
+      }
+    ]
   }
 }
\ No newline at end of file

← b2ee568 chore: macstudio3 migration — reconcile from mac2 + repoint  ·  back to Secrets Manager  ·  browserbase: unhook Kamatera prod all-dw from shared key fan 627cc26 →