KB1 Music Productions & Design connects to the tools that power your creative workflow — design, media storage, payments, scheduling, and client communications. Most services are already linked on the builder side and shared across the app.
Urgent questions or site issues: 303-885-5083 · ada@kb1-music-productions-and-design-menu.online
Design portfolio sync & auto design-to-order matching
Portfolio & finished-asset storage
Sound kit & media file storage
Client onboarding, confirmations & design notifications (ada@kb1-music-productions-and-design-menu.online)
Consultation scheduling & reminders
Video consultation links
Menu catalog sync
Issue tracking from the Admin Panel
Product template workflow
Your media library — music tracks, sound kits, and finished designs — pulls from these connected storage locations. Cloud drives sync automatically; local drives need to be synced to OneDrive or Google Drive first (the app runs in the cloud and can't read C:/D:/F:/E: drives directly).
OneDrive
Sound kits & media — auto-imports every 2 hours
Google Drive
Portfolio & finished-asset storage
C: / D: / F: / E: Drives
Local drives — sync to OneDrive or Google Drive to auto-import, or upload files manually
An authenticated admin can reconnect using the server-configured Canva callback. Each attempt expires after ten minutes and can be used only once; tokens remain on the server.
A map of every secret used by the app and which integration it powers. Use this to verify the correct keys are set in Settings → Environment Variables — especially the Canva pairs, which have similar names and can get mixed up.
| Secret | Purpose | Used by |
|---|---|---|
| CANVA_CLIENT_ID + CANVA_CLIENT_SECRET | Canva OAuth client credentials (primary pair) | canvaOauthHelper, refreshCanvaToken |
| Google_Canva_Api_2_ID + Google_Canva_Client_Secret_Key | Canva OAuth client credentials (alternate pair) | Active only if CANVA_ACTIVE_CRED_PAIR=google_canva |
| CANVA_ACTIVE_CRED_PAIR | Selects which Canva credential pair to use | canvaAuth (set to "primary" or "google_canva") |
| CANVA_REDIRECT_URI | Stable published function URL used as the OAuth redirect URI (prevents preview-sandbox mismatch) | canvaOauthHelper (getPopupAuthUrl, exchangeCode) |
| CANVA_API_TOKEN | Live Canva access token (fallback) | canvaBridge, monitorCanvaDesigns |
| CANVA_REFRESH_TOKEN | Enables automatic token refresh | refreshCanvaToken (fallback if no stored record) |
| google_oauth_client_id + google_oauth_client_secret | Google OAuth (login) | Auth provider |
| STRIPE_SECRET_KEY + STRIPE_PUBLISHABLE_KEY | Stripe live payments | createCheckout, stripeWebhook |
| STRIPE_WEBHOOK_SECRET | Stripe webhook signature verification | stripeWebhook |
| STRIPE_TEST_* | Stripe test-mode keys (legacy) | Not used in live mode |
| CONTENTFUL_SPACE_ID + CONTENTFUL_ENVIRONMENT_ID | Contentful CMS | syncContentfulTemplates, contentfulProductWorkflow |
| ZAPIER_WEBHOOK_URL | Forward new orders to Zapier | forwardToZapier |