Built for developers
An API-first platform with 113+ REST endpoints. Integrate time tracking, project management, and invoicing into any application or workflow.
API overview
The Voltasis API follows REST conventions with predictable resource-oriented URLs, JSON request and response bodies, standard HTTP methods, and conventional error codes.
Protocol
REST over HTTPS
Format
JSON request & response
Authentication
JWT via AWS Cognito
Endpoints
113+ and growing
Key capabilities
Everything you need to build integrations, automate workflows, or extend the platform.
Time Entries
Create, read, update, and delete time entries. Start and stop timers. Submit, approve, and reject entries through approval workflows.
Projects & Tasks
Full CRUD for projects and tasks with budget tracking, team assignments, deadline management, and status updates.
Clients
Manage client profiles with billing addresses, default hourly rates, preferred currencies, and contact information.
Invoices
Generate invoices from tracked time, send to clients, and record payments. Support for recurring schedules and multi-currency.
Users & Organizations
Multi-tenant user management with role-based access control, team invitations, and organization-scoped data isolation.
Webhooks Beta
Subscribe to events and receive real-time notifications when time entries, invoices, or projects change.
Authentication
All API requests require a valid JWT access token issued by AWS Cognito. Include the token
in the Authorization header as a Bearer token.
Example request
GET /time-entries HTTP/1.1
Host: api.voltasis.com
Authorization: Bearer eyJhbGciOiJSUzI1NiIs...
Content-Type: application/json Rate limits
API requests are rate-limited per organization to ensure fair usage and platform stability. Limits are generous for typical usage patterns. If you need higher throughput, contact us about enterprise plans.
- Standard rate limits per organization
- 429 status code when exceeded
- Enterprise limits available on request
Response format
All responses are returned as JSON. Successful responses include the requested data directly. Errors return a structured object with a code and human-readable message.
Error response
{
"error": {
"code": "VALIDATION_ERROR",
"message": "Start time is required"
}
} Endpoints overview
The API is organized by resource. All endpoints require a Bearer token except auth flows.
Authentication
POST /auth/forgot-password,
POST /auth/refresh-token
Users
GET /users,
GET /users/me,
PUT /users/:id
Time Entries
POST /time-entries,
GET /time-entries,
POST /time-entries/timer/start,
POST /time-entries/timer/stop,
POST /time-entries/submit
Projects & Clients
GET/POST /projects,
PUT /projects/:id,
GET/POST /clients
Invoices
POST /invoices,
GET /invoices,
POST /invoices/:id/send
Organizations & Integrations
GET/PUT /organizations/:id,
GET /integrations/xero/status,
POST /integrations/xero/connect
Platform Billing
GET /platform/billing/subscription,
POST /platform/billing/checkout-session
SDKs
Official SDKs for JavaScript/TypeScript and Python are planned. In the meantime, use any HTTP client with the REST API.
Get started
Full OpenAPI 3.0 spec available on request during beta. Contact us for developer access and API keys.