Skip to content

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 to localhost:8082)
  • /api/user-account/ - User account endpoints (redirects to /api/user-accounts/)

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