doc-site
Reference

Environment variables

Environment variable names used to build the storefront bundles and to run the related services and scripts. Values are not recorded here.

Values are held in local .env files, which git ignores, and in Cloud Run service configuration. Ask the project owner for them. Do not commit them or paste them into tickets.

Storefront build

Read by src/webpack.config.js from src/.env, and inlined into theme/assets/camp-booking.bundle.js. The build fails if either is missing.

VariableUsed forFormat
GOOGLE_PLACES_API_KEYSchool search in the booking formGoogle Maps browser key
ZOHO_INTEGRATION_API_ENDPOINTClub search in the booking formBase URL of shopify-zoho-integration, with no trailing /

Both values end up in public JavaScript. The Google key must be restricted by referrer in Google Cloud.

The same Maps key is also written as a literal in src/js/camp-booking.js.

The root .env.example lists the same two names. The root .env, where it exists, is used by scripts in misc/, not by the build.

asc-api-membership-pass

Set on the Cloud Run service. Names from that repository's configuration.

VariableUsed for
SHOPIFY_STORE_NAMEStore handle, australian-sports-camps
SHOPIFY_ACCESS_TOKENAdmin API token
SHOPIFY_STOREFRONT_ACCESS_TOKENStorefront API token, for cart changes
ONLINE_STORE_PUBLICATION, API_PUBLICATIONPublication ids the pass products are published to
PORTListening port, default 3000
LOG_LEVEL, LOG_PRETTY, LOG_NAMELogging
NODE_ENVgcloud writes JSON logs to a mounted Cloud Storage volume

shopify-zoho-integration

Set on the Cloud Run service. Documented in that repository's README.md and docs/configuration.md.

GroupVariables
ShopifySHOPIFY_STORE_NAME, SHOPIFY_GRAPHQL_API_VERSION, SHOPIFY_ZOHO_BRIDGE_ADMIN_ACCESS_TOKEN, SHOPIFY_ZAPIER_AUTO_ARCHIVE_ADMIN_ACCESS_TOKEN, SHOPIFY_ZAPIER_AUTO_ARCHIVE_STOREFRONT_ACCESS_TOKEN, SHOPIFY_GCLOUD_API_ADMIN_ACCESS_TOKEN, SHOPIFY_GCLOUD_API_STOREFRONT_ACCESS_TOKEN
ZohoZOHO_NEW_BOOKING_CLIENT_ID, ZOHO_NEW_BOOKING_CLIENT_SECRET, ZOHO_NEW_BOOKING_REFRESH_TOKEN, ZOHO_RUN_FUNCTION_API_KEY
EmailMAILGUN_API_KEY, DEV_EMAIL, CLIENT_EMAIL, EMAIL_HANDLER_URL
FormsHULKFORMS_API_KEY
EnvironmentORDER_HANDLE_ENVIRONMENTS, API_ENVIRONMENT
Admin app sign-inJWT_SECRET, JWT_PUB, JWT_PRIVATE_KEY_PASSPHRASE, JWT_ALG
FirestoreGOOGLE_APPLICATION_CREDENTIALS, FIREBASE_PROJECT_ID, FIREBASE_DATABASE_ID
ServerPORT

The Shopify tokens come from three custom apps in the store: "Zoho CRM Bridge", "Zapier - Auto-archive membership products" and "Google Cloud API".

Legacy google-cloud-api

VariableUsed for
SHOPIFY_STORE_NAME, SHOPIFY_ACCESS_TOKEN, SHOPIFY_STOREFRONT_ACCESS_TOKENShopify clients
ONLINE_STORE_PUBLICATION, API_PUBLICATIONPublishing pass products
PORTListening port

It reads google-cloud-api/.env. The names differ from those in the root .env, so it does not start with the root file.

misc scripts

ScriptVariables
misc/seo-redirects/*.cjsSHOPIFY_STORE_NAME, SHOPIFY_API_VERSION, SHOPIFY_GCLOUD_API_ADMIN_ACCESS_TOKEN, from the root .env
misc/filter-metafield-sync/main.mjsSHOPIFY_STORE_NAME, SHOPIFY_ADMIN_TOKEN
misc/zoho-find-broken-participants.mjs, misc/zoho-get-booking-participants.mjsZOHO_API_TOKEN
misc/zapier-scripts/*SHOPIFY_ZOHO_BRIDGE_ADMIN_ACCESS_TOKEN, SHOPIFY_ZAPIER_AUTO_ARCHIVE_ADMIN_ACCESS_TOKEN, ZOHO_NEW_BOOKING_CLIENT_ID, ZOHO_NEW_BOOKING_CLIENT_SECRET, ZOHO_NEW_BOOKING_REFRESH_TOKEN, ZOHO_CAMP_UPDATE_BOOKING_DETAILS_API_KEY

The Zapier script builds inline these values into their output files. Do not commit or share the dist/ output.

Values held in theme settings

These are not environment variables, but they change per environment in the same way.

SettingHolds
gcloud_api_rootasc-api-membership-pass base URL
download_brochure_webhook, download_brochure_landing_page_webhook, form_submission_webhookZapier catch hook URLs
hotjar_id, gtm_id, adwords_idAnalytics ids

On this page