FAQ

Answers to the most common questions about SALLY — what it does, how authentication works, what integrations are supported, and how to get started.


General

What is SALLY?

SALLY is a fleet operations assistant for US trucking carriers. It generates optimized multi-stop routes that comply with federal Hours of Service (HOS) regulations, automatically inserts rest and fuel stops where needed, monitors active routes in real time, and alerts dispatchers before problems occur.

SALLY is not just a route planner. It is an end-to-end operations platform that covers route planning, HOS compliance, real-time monitoring, alert management, and dispatcher-driver coordination.

What makes SALLY different from Google Maps or an existing TMS?

Google Maps and consumer navigation tools do not understand HOS regulations. They will route a driver on a 14-hour drive without considering that the driver is legally required to stop after 11 hours of driving or 14 hours on duty.

Traditional TMS platforms manage load lifecycle (booking, dispatch, settlement) but typically lack real-time HOS-aware route planning. Dispatchers manually estimate where drivers need to rest, which leads to compliance risks.

SALLY closes this gap by:

  • Simulating HOS clocks segment by segment to guarantee that every route is legally compliant before the driver starts.
  • Automatically inserting rest stops at optimal locations when the driver cannot legally complete the next segment.
  • Automatically inserting fuel stops based on vehicle range and fuel prices along the route.
  • Monitoring active routes 24/7 and generating alerts when conditions change (dock delays, weather, HOS approaching limits).
  • Dynamically re-planning routes when a trigger makes the current plan infeasible.

What HOS rules does SALLY enforce?

SALLY enforces all FMCSA Hours of Service rules for property-carrying CMV drivers:

RuleLimit
Driving limit11 hours after 10 consecutive hours off duty
Duty window14 hours after coming on duty
Break requirement30-minute break after 8 cumulative hours of driving
Off-duty minimum10 consecutive hours off duty to reset clocks
Cycle limit60 hours in 7 days, or 70 hours in 8 days
34-hour restartResets the 60/70-hour cycle
Split sleeper7/3 or 8/2 hour splits using sleeper berth provision

Every route plan is validated for zero HOS violations before it is returned.


Integrations

What ELD and TMS systems does SALLY integrate with?

SALLY uses an adapter-based integration framework. Current integrations include:

SystemTypeData Exchanged
SamsaraELD / TelematicsHOS clocks, duty status, GPS location
Motive (KeepTruckin)ELD / TelematicsHOS clocks, duty status, GPS location
McLeodTMSLoads, stops, appointment windows
Project44TMS / VisibilityLoads, tracking, ETAs
GasBuddyFuel PricesDiesel prices by location
OpenWeatherWeatherForecasts and severe weather alerts

Additional integrations can be added through the adapter pattern without modifying the core platform.

Can I connect SALLY to a system that is not listed?

Yes. SALLY’s integration framework uses a standard adapter interface. A new integration requires implementing the adapter for data mapping, setting up the sync schedule, and configuring credentials. Contact the team for guidance on building a custom integration.


Architecture

Is SALLY multi-tenant?

Yes. SALLY is a SaaS platform with row-level tenant isolation. Every major database table includes a tenantId column. A TenantGuard middleware extracts the tenant from the authenticated JWT and filters all queries so that one carrier’s data is never visible to another.

What user roles are supported?

SALLY supports five roles with hierarchical permissions:

RoleDescription
SUPER_ADMINPlatform-wide access across all tenants (internal use)
ADMINFull access within a single tenant
OWNERTenant owner with billing and settings access
DISPATCHERPlans routes, manages alerts, coordinates drivers
DRIVERViews assigned routes, sends status updates

What database does SALLY use?

PostgreSQL 16, accessed through Prisma ORM. The schema contains 25+ tables across seven functional groups (tenant, user, fleet, operations, integrations, platform, system). JSONB columns store flexible data like HOS state snapshots. All queries are scoped by tenant.


Authentication

How does authentication work?

SALLY uses a two-step authentication flow:

  1. Identity verification — The frontend authenticates the user through Firebase Authentication (email/password, Google sign-in, or SSO). Firebase issues a token.
  2. API authorization — The backend exchanges the Firebase token for a SALLY-issued JWT that contains the user’s role, tenant, and permissions. This JWT is stored in an HTTP-only cookie and included in all subsequent API requests.

This approach delegates identity management (password hashing, email verification, OAuth) to Firebase while keeping authorization logic in SALLY’s backend.

Can I use API keys instead of JWT for server-to-server calls?

Yes. SALLY supports API key authentication for server-to-server integrations. API keys are issued from the dashboard and included in the Authorization header as a Bearer token.

  • Staging keys use the prefix sk_staging_ and are rate-limited to 1,000 requests per hour.
  • Production keys use the prefix sk_prod_ and are rate-limited to 10,000 requests per hour.

See the Authentication guide for details.


Development

How do I set up a local development environment?

SALLY uses Docker Compose for local development. The setup involves:

  1. Cloning the monorepo.
  2. Copying .env.example to .env and filling in credentials.
  3. Running docker compose up to start the backend, frontend, PostgreSQL, and Redis containers.
  4. Running Prisma migrations to set up the database schema.

For step-by-step instructions, see the Environment Setup guide.

Is there a staging environment?

Yes. The staging environment mirrors production but uses isolated data. Staging API keys use the sk_staging_ prefix. Use staging for development, testing, and integration work before deploying to production.

What browsers are supported?

SALLY’s web interface supports the latest versions of:

  • Google Chrome
  • Mozilla Firefox
  • Apple Safari
  • Microsoft Edge

The dispatcher dashboard is optimized for desktop browsers (1024px and above). The driver view is optimized for mobile browsers (375px and above). Both interfaces support light and dark themes.


Still have questions?

If your question is not answered here, visit the Support page to learn how to reach the team.