Supergood | Trimble API

Supergood | Trimble API

Programmatically access Trimble Construction One project data, financials, and BIM collaboration with a stable REST API. Supergood builds and operates production-grade, unofficial Trimble integrations so your team can automate field and office workflows without heavy custom engineering.

Plain English: Trimble Construction One is a connected construction management suite that brings together Viewpoint (ERP/accounting and job cost), ProjectSight (project management), Tekla (structural modeling), SketchUp (3D design), and Trimble Connect (model/document collaboration). An unofficial API lets you pull projects, budgets and cost codes, commitments (subcontracts and POs), change orders, pay applications, RFIs/submittals, drawings/documents, and model issues—and push new records or updates back into the suite.

For a tech company integrating with Trimble, this means you can ingest real-time job cost and project metadata to power dashboards, sync pay apps to ERP, automate RFI/submittal workflows from your product, and enrich your platform with BIM model issues and document context. You can also push new commitments from procurement, create RFIs from defect detections, attach photos and documents, and keep stakeholder systems (ERP, analytics, scheduling) in lockstep.

What is Trimble?

Trimble Construction One (https://www.trimble.com/en/solutions/trimble-construction-one) is a cloud platform that connects construction planning, execution, and collaboration across office and field. It centralizes project and financial data while linking BIM/VDC artifacts and stakeholder workflows.

Core product areas include:

  • Financials (e.g., Viewpoint Vista/Spectrum: companies, vendors, job cost, budgets, commitments, AP/AR)
  • Project Management (e.g., ProjectSight: RFIs, Submittals, Drawings, Issues, Field Reports)
  • BIM & Collaboration (e.g., Tekla, SketchUp, Trimble Connect: models, versioned files, to-dos/issues)
  • Field Operations (e.g., daily reports, photos, quantities, observations)

Common data entities:

  • Companies, Users, and Role-Based Permissions (Trimble ID)
  • Projects (metadata, addresses, phases, status)
  • Job Cost Ledgers, Budgets, Cost Codes
  • Commitments (Subcontracts & POs) and Change Orders
  • Pay Applications (progress billing), AP Invoices
  • RFIs, Submittals, Reviews, Attachments
  • Documents, Drawings, BIM Models, Issues/To-Dos
  • Timecards and Field Logs (where licensed)

The Trimble Integration Challenge

Construction teams rely on the Trimble suite daily, but turning portal-based workflows across multiple products into API-driven automation is non-trivial:

  • Suite sprawl: Viewpoint, ProjectSight, Tekla/SketchUp, and Trimble Connect each have unique UX, schemas, and entitlements
  • Enterprise security: Trimble ID, SSO, MFA, and granular role-based controls complicate headless automation
  • Financial rigor: Approval chains, retainage, tax logic, and auditability must be respected programmatically
  • Model-first workflows: Large BIM files, viewpoints, and issue threads require careful normalization and pagination
  • Data fragmentation: Key objects (e.g., cost codes vs. model issues) live in different modules and need cross-referencing

How Supergood Creates Trimble APIs

Supergood reverse-engineers authenticated browser flows and network interactions to deliver a resilient API endpoint layer for your Trimble tenant.

  • Handles username/password, SSO/OAuth (Trimble ID), 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
  • Maps cross-product identifiers (e.g., cost codes from Financials to RFI/Commitment references, model issue links)

Use Cases

Project Data Sync

  • Mirror projects, companies, and users into your internal systems
  • Keep project metadata current for analytics and reporting
  • Normalize addresses, statuses, and dates for multi-tenant operations

RFI and Submittal Automation

  • Create RFIs from defect detections or field observations automatically
  • Initiate submittals with reviewers, due dates, and attachments
  • Track ball-in-court and SLA status across ProjectSight workflows

Financials: Budgets, Commitments, and Pay Applications

  • Push commitments (subcontracts/POs) from your procurement system
  • Generate pay applications with line items and retainage
  • Pull financial statuses to reconcile with ERP (e.g., NetSuite, QuickBooks)

BIM Coordination and Field Reporting

  • Ingest model issues and viewpoints from Trimble Connect
  • Attach photos and documents to unify QA/QC workflows
  • Trigger follow-ups and approvals when clash or quality thresholds are met

Available Endpoints

Authentication

POST /sessions: Establish a session using credentials. Supergood manages MFA (SMS, email, TOTP) and SSO/OAuth (Trimble ID) 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_ti_729c10",
    "name": "Project Manager",
    "entitlements": ["projects", "financials", "projectsight", "trimble_connect"]
  }
}

POST /sessions/refresh: Refresh an existing token to keep sessions uninterrupted.

Projects

GET /projects: List projects with filters and summary details across your Trimble suite.

Query parameters

  • companyId: string
  • status: active | archived
  • updatedFrom, updatedTo: ISO 8601 timestamps
  • page, pageSize: integers for pagination

Example response

{
  "items": [
    {
      "projectId": "prj_east-med-001",
      "name": "East Medical Tower",
      "projectNumber": "EMT-001",
      "status": "active",
      "companyId": "co_vista_01",
      "accountingSystem": "Viewpoint Vista",
      "address": {
        "line1": "500 Eastside Blvd",
        "city": "Atlanta",
        "region": "GA",
        "postalCode": "30312",
        "country": "US"
      },
      "startDate": "2026-01-15",
      "endDate": null,
      "modules": ["Financials", "ProjectSight", "Trimble Connect"],
      "updatedAt": "2026-01-20T13:45:00Z"
    }
  ],
  "page": 1,
  "pageSize": 50,
  "total": 1
}

RFIs (ProjectSight)

POST /projects/{projectId}/rfis: Create a new RFI with workflow metadata and optional attachments.

curl --request POST \
  --url https://api.supergood.ai/integrations/<integration_id>/projects/prj_east-med-001/rfis \
  --header 'Authorization: Bearer <authToken>' \
  --header 'Content-Type: application/json' \
  --data '{
    "subject": "Clarify embed plate size at grid 5A",
    "question": "Confirm plate dimensions and weld requirements per S-301 detail.",
    "discipline": "structural",
    "dueDate": "2026-02-08",
    "priority": "normal",
    "assignedToCompanyId": "co_struct_22",
    "reviewers": [
      {"userId": "u_ts_45af1d", "sequence": 1},
      {"userId": "u_ts_92b711", "sequence": 2}
    ],
    "specSection": "05 50 00",
    "drawingRefs": ["S-301"],
    "private": false,
    "attachments": [
      {"fileName": "embed-detail.png", "uploadToken": "upl_ts_98dc3a"}
    ],
    "referenceId": "obs-struct-8793"
  }'

Example response

{
  "rfiId": "rfi_ts_1029",
  "number": 27,
  "status": "open",
  "createdAt": "2026-01-21T09:12:33Z",
  "referenceId": "obs-struct-8793"
}

Commitments (Viewpoint Financials)

POST /projects/{projectId}/commitments: Create a subcontract or purchase order with line items tied to cost codes.

curl --request POST \
  --url https://api.supergood.ai/integrations/<integration_id>/projects/prj_east-med-001/commitments \
  --header 'Authorization: Bearer <authToken>' \
  --header 'Content-Type: application/json' \
  --data '{
    "type": "subcontract",
    "vendorId": "ven_4321",
    "referenceNumber": "SC-2026-013",
    "contractDate": "2026-01-22",
    "currency": "USD",
    "retainagePercent": 10.0,
    "notes": "Includes miscellaneous embeds per structural addendum A1.",
    "lineItems": [
      {
        "costCodeId": "033000",
        "description": "Concrete foundations",
        "scheduledValue": 250000.00
      },
      {
        "costCodeId": "051200",
        "description": "Structural steel embeds",
        "scheduledValue": 60000.00
      }
    ],
    "attachments": [
      {"fileName": "subcontract.pdf", "uploadToken": "upl_vp_7fa223"}
    ]
  }'

Example response

{
  "commitmentId": "cmt_vp_3011",
  "status": "draft",
  "projectId": "prj_east-med-001",
  "totalScheduled": 310000.00,
  "createdAt": "2026-01-21T11:05:12Z"
}

Pay Applications (Progress Billing)

POST /commitments/{commitmentId}/pay-applications: Create a pay application against a commitment with line item progress and retainage.

curl --request POST \
  --url https://api.supergood.ai/integrations/<integration_id>/commitments/cmt_vp_3011/pay-applications \
  --header 'Authorization: Bearer <authToken>' \
  --header 'Content-Type: application/json' \
  --data '{
    "applicationNumber": "APP-03",
    "periodStart": "2026-01-01",
    "periodEnd": "2026-01-31",
    "referenceNumber": "APP-2026-01",
    "lineItems": [
      {
        "costCodeId": "033000",
        "workCompletedThisPeriod": 40000.00,
        "materialsStored": 0.00,
        "retainagePercent": 10.0
      },
      {
        "costCodeId": "051200",
        "workCompletedThisPeriod": 15000.00,
        "materialsStored": 5000.00,
        "retainagePercent": 10.0
      }
    ],
    "attachments": [
      {"fileName": "pay-app.pdf", "uploadToken": "upl_vp_08ab73"}
    ],
    "notes": "Includes stored materials for embedded plates."
  }'

Example response

{
  "payApplicationId": "pa_77ab91",
  "status": "submitted",
  "commitmentId": "cmt_vp_3011",
  "totalRequested": 60000.00,
  "createdAt": "2026-01-21T11:20:44Z"
}

Get full API Specs →


Technical Specifications

  • Authentication: Username/password with MFA (SMS, email, TOTP) and SSO/OAuth (Trimble ID) 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 projects, RFIs, commitments, and pay applications
  • Security: Encrypted transport, scoped tokens, and audit logging; respects Trimble role-based permissions
  • Webhooks: Optional asynchronous delivery for long-running workflows (e.g., approval chains, submittal reviews)

Performance Characteristics

  • Latency: Sub-second responses for list/detail queries under normal load
  • Throughput: Designed for high-volume project data sync and progress billing workflows
  • Reliability: Retry logic, backoff, and idempotency keys minimize duplicate actions
  • Adaptation: Continuous monitoring for UI/API changes across Viewpoint, ProjectSight, and Trimble Connect with rapid adapter updates

Getting Started

  1. Schedule Integration Assessment

Book a 30-minute session to confirm your modules, licensing, and authentication model.

  1. Supergood Builds and Validates Your API

We deliver a hardened Trimble adapter tailored to your workflows and entitlements.

  1. Deploy with Monitoring

Go live with continuous monitoring and automatic adjustments as Trimble evolves.

Schedule Integration Call →


Frequently Asked Questions

Q: Which Trimble modules can this integration cover?

Supergood supports workflows across commonly used modules such as Financials (Viewpoint), Project Management (ProjectSight: RFIs, Submittals, Drawings), and BIM/Collaboration (Trimble Connect, Tekla), 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 Trimble ID SSO/OAuth when enabled. Sessions are refreshed automatically with secure challenge handling.

Q: Can you sync commitments and pay applications to our ERP?

Yes. We can normalize commitments and progress billing to match your ERP schema (e.g., cost codes, retainage, line items) and deliver updates via webhooks or polling while complying with rate and permission constraints.

Q: Are attachments supported for RFIs and commitments?

Yes. We support downloading artifacts and uploading attachments via signed uploads, with checksum validation and time-limited URLs.



Ready to automate your Trimble workflows?

Supergood can have your Trimble integration live in days with no ongoing engineering maintenance.

Get Started →

Read more