CROP
ProjectsDelivery Services

UPS Credentials Reference

Current Production Configuration

UPS Credentials Reference

Current Production Configuration

VariableSourceLast Updated
UPS_CLIENT_IDGitHub Secret / Cloud Run2025-12-04
UPS_CLIENT_SECRETGitHub Secret / Cloud Run2025-12-04
UPS_ACCOUNT_NUMBERGitHub Secret / Cloud Run2026-01-21
UPS_PRODUCTIONGitHub Secret / Cloud Run2025-12-09

Where to Find/Update Credentials

GitHub Secrets

Repository: CT-CROP/CROP-delivery-services Path: Settings → Secrets and variables → Actions

# List secrets
gh secret list -R CT-CROP/CROP-delivery-services

# Update a secret
gh secret set UPS_ACCOUNT_NUMBER -R CT-CROP/CROP-delivery-services

Cloud Run Environment Variables

# View current values
gcloud run services describe delivery-service \
  --region=us-east1 \
  --format="yaml(spec.template.spec.containers[0].env)"

# Update a variable
gcloud run services update delivery-service \
  --region=us-east1 \
  --update-env-vars="UPS_ACCOUNT_NUMBER=NEW_VALUE"

UPS Developer Portal

URL: https://developer.ups.com/

App Details (as of 2026-01-21):

  • App Name: CROP Delivery Services
  • Client ID: fg3k6cFt4waWzf7kEDatG5FrGuPCHIr2wBSGiGz8lGaVkK9
  • Billing Account Number: E13463
  • Environment: Production (UPS_PRODUCTION=true)
  • Created: 2025-12-04

Webhook Callback URL:

  • Current: https://delivery-api-atife5uvka-ue.a.run.app/webhooks/ups ⚠️ OUTDATED
  • Should be: https://delivery-service-222426967009.us-east1.run.app/webhooks/ups

Note: Update the Callback URL in UPS Developer Portal → My Apps → Edit App

API Endpoints

EnvironmentBase URL
Productionhttps://onlinetools.ups.com
CIE (Test)https://wwwcie.ups.com

Current deployment uses Production API.

Troubleshooting

"Missing or invalid shipper number"

  • Account number not linked to OAuth app in UPS Developer Portal
  • Solution: Verify account number in UPS Portal → My Apps → Edit App

"The request is well formed but the request is not valid"

  • Usually indicates account permissions issue
  • Check if specific API (Rating, Shipping, etc.) is enabled for the account

OAuth Token Errors

  • Tokens auto-refresh every ~4 hours
  • If persistent issues, regenerate Client Secret in UPS Developer Portal
  • .env.deploy.example - Template for local deployment
  • src/providers/ups.py - UPS provider implementation
  • src/auth.py - OAuth manager
  • terraform/main.tf - Infrastructure configuration

On this page