Domains and Subdomains
Cargo Domains
All cargo-related services live under dedicated travomate.com.pl subdomains, sharing one Let's Encrypt certificate (cargo-subdomains).
| Domain | Service | Backend |
|---|---|---|
cargo.travomate.com.pl |
Cargo app frontend | Static files, ~/cargo/browser |
cargoffice.travomate.com.pl |
Backoffice admin interface | Static files, ~/cargoffice/browser |
api.travomate.com.pl/cargo |
REST and GraphQL API | Proxies to localhost:8083 (cargo-api container) |
cargodocs.travomate.com.pl |
This documentation site | Static files, ~/cargo-docs |
swagger.travomate.com.pl |
Swagger UI and OpenAPI spec | Proxies to localhost:8082 (core-api) |
API Endpoints
- GraphQL:
https://api.travomate.com.pl/cargo/graphql - GraphiQL IDE:
https://api.travomate.com.pl/cargo/graphiql - REST API:
https://api.travomate.com.pl/cargo/api/v1/**
Swagger Endpoints
- Swagger UI:
https://swagger.travomate.com.pl/swagger-ui/index.html - OpenAPI spec:
https://swagger.travomate.com.pl/v3/api-docs
cargoffice.travo-mate.online, api.travo-mate.online, and the /cargo-docs and swagger paths that used to live on travo-mate.online are decommissioned. Nothing cargo-related is served from travo-mate.online anymore.
Others (Travomate)
| Domain | Service |
|---|---|
travomate.com.pl |
Main website with parcel sharing features |
travo-mate.online |
Main Travomate application with API, WebSocket, and dev environment |
www.travomate.com.pl |
Main website alias |
www.travo-mate.online |
Main application alias |
Available Resources & Endpoints on travo-mate.online
Development Environment:
/dev- Dev frontend application/dev/api/- Dev API endpoints
WebSocket:
/websocket- WebSocket connection for real-time features
API:
/api/- Main API endpoints (proxies tolocalhost:8082)/api/user-account/- User account endpoints (redirects to/api/user-accounts/)
Parcel Sharing & Preview Links
Share Endpoints:
/parcel/share/trips/[tripId]- Trip preview/parcel/share/parcels/[parcelId]- Parcel preview
Parcel Application:
/parcel/- Parcel application interface
Nginx and Certificates
Server blocks for every domain above live in the nginx submodule, one file per domain under sites-available/. The cargo-subdomains certificate covers cargo, cargoffice, api, cargodocs, and swagger on travomate.com.pl, and is managed with certbot on the server:
sudo certbot certificates
sudo certbot --nginx --cert-name cargo-subdomains --expand -d cargo.travomate.com.pl -d cargoffice.travomate.com.pl -d api.travomate.com.pl -d cargodocs.travomate.com.pl -d swagger.travomate.com.pl
travomate.com.pl and travo-mate.online (the apex domains) use a separate, manually issued certificate stored at /etc/nginx/certificates/aws/, deployed through the nginx submodule's GitHub Actions workflow from repo secrets.
Deploy Workflows
Each piece deploys independently, triggered by pushes to the parent cargo repo or the nginx and cargo-docs submodules:
| Path | Workflow | Deploys to |
|---|---|---|
app/** |
app-deploy.yml |
~/cargo on the server |
backoffice/** |
backoffice-deploy.yml |
~/cargoffice on the server |
api/** |
api-deploy.yml |
Docker image, run via ~/cargo.compose.yml |
cargo-docs (this submodule) |
deploy.yml |
~/cargo-docs on the server |
nginx (submodule) |
deploy.yml |
/etc/nginx on the server |