Supergood | Sera API
Programmatically access Sera field service data, scheduling, memberships, and financials with a stable REST API. Supergood builds and operates production-grade, unofficial Sera integrations so your team can automate field and office workflows without heavy custom engineering.
Plain English: Sera is field service management software for home service businesses (HVAC, plumbing, electrical, and similar trades). An unofficial API lets you programmatically pull customer lists, service locations, work orders and appointments, memberships/service agreements, pricebook items, invoices, payments, and technician activity—and push new jobs, schedule updates, invoices, and membership changes back into Sera.
For a tech company integrating with Sera, this means you can ingest real-time customer and job data to power dispatch dashboards, sync invoices and payments to accounting, automate membership renewals and billing from your product, or enrich your platform with schedule, technician, and workflow events. You can also push newly booked jobs, assign technicians, update statuses from the field, generate invoices from estimates, and keep stakeholder systems (ERP, analytics, customer communications) in lockstep.
What is Sera?
Sera (https://sera.tech/) is a cloud platform for home service management that centralizes scheduling and dispatch, job lifecycle tracking, memberships/service agreements, pricebook and estimates, invoicing and payments, and technician mobility. Teams use Sera to book calls, build estimates from a pricebook, dispatch technicians, track job progress, manage recurring service plans and memberships, and capture payments.
Core product areas include:
- Scheduling & Dispatch (e.g., booking windows, technician assignment, capacity planning)
- Job Management (e.g., work orders, tasks, notes, photos, status transitions)
- Pricebook, Estimates & Invoices (e.g., line items, taxes, discounts, financing)
- Memberships/Service Agreements (e.g., plan terms, recurring billing, included visits)
- Payments & Financials (e.g., card-on-file, ACH, refunds, reconciliation)
- Technician Mobile (e.g., on-site workflows, time tracking, attachments)
Common data entities:
- Customers, Service Locations, and Contacts
- Work Orders/Jobs, Appointments, and Technician Assignments
- Pricebook Items, Estimates/Proposals, Invoices, and Payments
- Memberships/Service Agreements and Renewal Schedules
- Users/Technicians, Roles, and Permissions
The Sera Integration Challenge
Home service teams rely on Sera daily, but turning portal-based workflows into API-driven automation is non-trivial:
- Role-based access and sensitive financial data: Payment tokens, memberships, and invoice details require careful, permission-aware automation
- Scheduling complexity: Capacity planning, overlapping appointments, technician skills, and time windows must be respected programmatically
- Portal-first features: Many capabilities are optimized for the web app (pricebook editing, proposal workflows), and data is spread across multiple views and exports
- Operational rigor: Status transitions, audit trails, customer communications, and membership rules need consistent, resilient handling
How Supergood Creates Sera APIs
Supergood reverse-engineers authenticated browser flows and network interactions to deliver a resilient API endpoint layer for your Sera tenant.
- Handles username/password, SSO/OAuth, and MFA (SMS, email, TOTP) securely
- Maintains session continuity with automated refresh and change detection
- Normalizes responses so you can integrate once and rely on consistent objects across modules
- Aligns with customer entitlements and role-based permissions to ensure compliant access
Use Cases
Customer & Location Data Sync
- Mirror customers, contacts, and service locations into your internal systems
- Keep addresses, phone/email, and membership status current for analytics and outreach
- Normalize tags, balances, and lifecycle dates across multiple branches
Scheduling & Dispatch Automation
- Create work orders from web bookings, IVR, or CRM triggers
- Assign technicians and update appointment windows based on skills and capacity
- Track job status changes (scheduled, dispatched, in-progress, completed) with SLAs
Memberships & Recurring Service
- Enroll customers into memberships and set up autopay and billing cadence
- Generate included visit work orders and reminders automatically
- Monitor renewal dates and billing outcomes to reduce churn
Estimates, Invoices & Payments
- Convert approved estimates into invoices and push to accounting (e.g., QuickBooks, NetSuite)
- Capture payments (card/ACH), issue refunds, and reconcile daily
- Pull invoice and payment status for real-time revenue dashboards
Available Endpoints
Authentication
POST /sessions: Establish a session using credentials. Supergood manages MFA (SMS, email, TOTP) and SSO/OAuth when enabled. Returns a short-lived auth token maintained by the platform.
curl --request POST \
--url https://api.supergood.ai/integrations/<integration_id>/sessions \
--header 'Authorization: Basic <Base64 encoded token>' \
--header 'Content-Type: application/json' \
--data '{
"username": "[email protected]",
"password": "<password>",
"mfa": { "type": "totp", "code": "123456" }
}'
Example response
{
"authToken": "eyJhbGciOi...",
"expiresIn": 3600,
"user": {
"id": "u_8d2c41",
"name": "Dispatcher",
"entitlements": ["customers", "work_orders", "memberships", "invoices"]
}
}
POST /sessions/refresh: Refresh an existing token to keep sessions uninterrupted.
Customers
GET /customers: List customers with filters and summary details.
Query parameters
- status: active | inactive
- membershipStatus: active | lapsed | none
- updatedFrom, updatedTo: ISO 8601 timestamps
- page, pageSize: integers for pagination
Example response
{
"items": [
{
"customerId": "cus_21a9f0",
"name": "Jordan Lee",
"primaryContact": {
"email": "[email protected]",
"phone": "+1-555-0142"
},
"defaultServiceLocation": {
"locationId": "loc_9a0e3b",
"address": {
"line1": "742 Evergreen Terrace",
"city": "Springfield",
"region": "IL",
"postalCode": "62701",
"country": "US"
}
},
"membership": {
"status": "active",
"planName": "HVAC Comfort Plan",
"nextBillingDate": "2026-02-15"
},
"outstandingBalance": 89.00,
"tags": ["HVAC", "Annual Service"],
"createdAt": "2025-08-03T14:11:22Z",
"updatedAt": "2026-01-18T09:05:00Z"
}
],
"page": 1,
"pageSize": 50,
"total": 1
}
Work Orders
POST /work-orders: Create a new work order with scheduling and pricebook details.
curl --request POST \
--url https://api.supergood.ai/integrations/<integration_id>/work-orders \
--header 'Authorization: Bearer <authToken>' \
--header 'Content-Type: application/json' \
--data '{
"customerId": "cus_21a9f0",
"serviceLocationId": "loc_9a0e3b",
"jobType": "hvac_service",
"priority": "normal",
"requestedDate": "2026-02-01",
"timeWindow": { "start": "08:00", "end": "12:00", "timezone": "America/Chicago" },
"description": "No heat; furnace short cycling.",
"pricebookItems": [
{ "itemId": "pb_thermostat_diag", "quantity": 1, "unitPrice": 79.00 },
{ "itemId": "pb_furnace_tuneup", "quantity": 1, "unitPrice": 189.00 }
],
"assignedTechnicianId": "tech_57aa12",
"source": "web_booking",
"notes": "Gate code 1234. Pets on site."
}'
Example response
{
"workOrderId": "wo_6f8c9d",
"status": "scheduled",
"appointment": {
"date": "2026-02-01",
"windowStart": "08:00",
"windowEnd": "12:00",
"timezone": "America/Chicago",
"technicianId": "tech_57aa12"
},
"createdAt": "2026-01-21T12:42:10Z"
}
Work Order Status
PATCH /work-orders/{workOrderId}/status: Update a work order's lifecycle status and technician assignment timestamps.
curl --request PATCH \
--url https://api.supergood.ai/integrations/<integration_id>/work-orders/wo_6f8c9d/status \
--header 'Authorization: Bearer <authToken>' \
--header 'Content-Type: application/json' \
--data '{
"status": "in_progress",
"assignedTechnicianId": "tech_57aa12",
"startedAt": "2026-02-01T09:07:00-06:00",
"arrivalNotes": "Diagnosing thermostat and furnace control board.",
"attachments": [
{"fileName": "furnace_panel.jpg", "uploadToken": "upl_f2c310"}
]
}'
Example response
{
"workOrderId": "wo_6f8c9d",
"status": "in_progress",
"startedAt": "2026-02-01T15:07:00Z",
"updatedAt": "2026-02-01T15:08:12Z"
}
Memberships
POST /customers/{customerId}/memberships: Create or renew a customer membership with billing configuration.
curl --request POST \
--url https://api.supergood.ai/integrations/<integration_id>/customers/cus_21a9f0/memberships \
--header 'Authorization: Bearer <authToken>' \
--header 'Content-Type: application/json' \
--data '{
"planId": "plan_hvac_comfort_monthly",
"startDate": "2026-02-15",
"billingCadence": "monthly",
"autopay": true,
"paymentMethodToken": "pm_tok_8f9ca1",
"includedVisits": 2,
"introPrice": 19.00
}'
Example response
{
"membershipId": "mbr_78b29e",
"status": "active",
"planId": "plan_hvac_comfort_monthly",
"nextBillingDate": "2026-03-15",
"createdAt": "2026-01-21T13:20:44Z"
}
Technical Specifications
- Authentication: Username/password with MFA (SMS, email, TOTP) and SSO/OAuth where enabled; supports service accounts or customer-managed credentials
- Response format: JSON with consistent resource schemas and pagination across modules
- Rate limits: Tuned for enterprise throughput while honoring customer entitlements and usage controls
- Session management: Automatic reauth and cookie/session rotation with health checks
- Data freshness: Near real-time retrieval of customers, work orders, memberships, and financial objects
- Security: Encrypted transport, scoped tokens, and audit logging; respects Sera role-based permissions
- Webhooks: Optional asynchronous delivery for long-running workflows (e.g., membership billing, job completion reviews)
Performance Characteristics
- Latency: Sub-second responses for list/detail queries under normal load
- Throughput: Designed for high-volume job creation, scheduling updates, and membership billing events
- Reliability: Retry logic, backoff, and idempotency keys minimize duplicate actions
- Adaptation: Continuous monitoring for UI/API changes with rapid adapter updates
Getting Started
- Schedule Integration Assessment
Book a 30-minute session to confirm your modules, licensing, and authentication model.
- Supergood Builds and Validates Your API
We deliver a hardened Sera adapter tailored to your workflows and entitlements.
- Deploy with Monitoring
Go live with continuous monitoring and automatic adjustments as Sera evolves.
Frequently Asked Questions
Q: Which Sera modules can this integration cover?
Supergood supports workflows across commonly used modules such as Scheduling & Dispatch, Job Management, Pricebook/Estimates, Invoicing & Payments, and Memberships/Service Agreements, subject to your licensing and entitlements. We scope coverage during integration assessment.
Q: How are MFA and SSO handled for automation?
We support username/password + MFA (SMS, email, TOTP) and can operate behind SSO/OAuth when enabled. Sessions are refreshed automatically with secure challenge handling.
Q: Can you sync invoices and payments to our ERP?
Yes. We can normalize invoices, payments, and line items to match your ERP schema (e.g., tax codes, discounts) and deliver updates via webhooks or polling while complying with rate and permission constraints.
Q: Are attachments supported for work orders and memberships?
Yes. We support downloading artifacts and uploading attachments via signed uploads, with checksum validation and time-limited URLs.
Related Integrations
Intralinks API - Programmatically access the Intralinks VDR with Supergood
Ready to automate your Sera workflows?
Supergood can have your Sera integration live in days with no ongoing engineering maintenance.