Skip to content

External Connections

Document: docs/product/external-connections.md
Status: Canonical
Last updated: 2026-04-06
Authority: Tim Rignold, RTOpacks Pty Ltd


Purpose

Documents every external service RTOpacks connects to. A new team member reading this should understand exactly what RTOpacks talks to, why, how, and what happens if that service is unavailable.


Government Data Sources

Service Purpose Auth Sync Worker Database Notes
TGA (training.gov.au) NRT corpus — qualifications, units, RTOs, scope, contacts, addresses, regulatory decisions Public Manual Excel ingest (see adapters/tga/INGEST.md) rtopacks-db (334ac8fb) Source of truth for all NRT data. No API automation — TGA SOAP API credentials parked.
ASQA Regulatory decisions, audit outcomes Public Via TGA ingest (regulatory decisions table) rtopacks-db Decisions captured as tga_org_regulatory_decisions
NCVER / VOCSTATS VET statistical data — enrolments, completions, apprenticeships Public stats-cache Worker ops-db Aggregated stats served via /api/stats
ABS Labour force statistics, employment by occupation Public stats-cache Worker abs-db (66389f3f) StatBar on homepage
Jobs and Skills Australia Occupation shortage (OSL), Internet Vacancy Index (IVI), employment projections, training enrolments Public jsa-ingest, osl-ingest, ivi-ingest Workers rtopacks-db JSA proxy at jsa-proxy.ucca.online (FEDERATION-HOOK-01 — UCCA-hosted external service)
yourcareer.gov.au Career pathways, VNDA graduate outcomes Public vnda-atlas-ingest Worker rtopacks-db recon_vnda reconciliation table
CRICOS International provider and course registrations Public cricos-sync Worker rtopacks-db cricos_registered flag on rtos
TEQSA / TQNR Higher education provider data, qualification recognition Public teqsa-sync Worker licensing-db (6c2abf4d) NSW occupational licensing cross-reference
NSW Fair Trading Occupational licensing records Public Manual licensing-db Supplementary to TEQSA data

Commercial Services

Service Purpose Auth Config Notes
Cloudflare Infrastructure — Workers, D1, R2, KV, DNS, CF Access Account e5a9830215a8d88961dc6c80a8c7442a wrangler.jsonc per Worker All compute, storage, and edge services
Resend Transactional email API key (RESEND_API_KEY) Worker secret on workspace + internal-api noreply@rtopacks.com.au — magic links, subscriber notifications, SEC-02 alerts
Google Maps Geocoding + map display on admin addresses tab API key (GOOGLE_GEOCODING_KEY, GOOGLE_MAPS_API_KEY) Worker secrets on admin KV-cached geocode results (30-day TTL)
Stripe Payment processing API key (Worker secret) On site Worker Checkout, customer portal

Platform Services

Service Purpose Auth Config Notes
UCCA auth backplane Authentication architecture — tier model, session schema Specification compliance (no live API call currently) FEDERATION-HOOK-01 in lib/tier-resolution.ts See identity.md and boundary-agreement.md. Future: OAuth 2.1 at auth.ucca.online (B-AUTH-OAUTH-01).
UCCA JSA proxy Proxy for Jobs and Skills Australia API Direct HTTP jsa-proxy.ucca.online in workers/jsa-ingest UCCA-hosted proxy to handle JSA's response format. Marked FEDERATION-HOOK-01.

Availability Impact

Service down Impact on RTOpacks Mitigation
TGA No new ingest. Existing data unaffected. rtopacks-db is the source of truth, not TGA live.
Cloudflare Complete outage. No mitigation — Cloudflare is the compute platform.
Resend Magic links cannot be sent. Existing sessions unaffected. Users already authenticated continue to work.
Google Maps Geocoding and map display fail on admin. KV cache serves previously geocoded addresses.
UCCA auth No impact (specification compliance only, no live dependency). Future B-AUTH-OAUTH-01: fallback to cached session validation.
Stripe Payments cannot be processed. Existing subscriptions unaffected.
JSA/NCVER/ABS Stale data on market intelligence features. Data is batch-ingested. Freshness measured in weeks, not minutes.

Amendment Log

Date Change Authority
2026-04-06 Initial document — Session 44 Tim Rignold