← Back to all docs

Cityworks API

Cityworks, now part of Trimble, is a GIS-centric asset lifecycle management system that helps organizations manage public infrastructure from permitting through operation and maintenance. This page is an independent design exercise that asks what a well-designed Cityworks API could look like: the resources it would expose, the authentication it would need, and the workflows it could unlock. Below: a hypothetical endpoint design, the technical requirements a production implementation would face, the use cases programmatic access could serve, and where to start if your team needs this kind of access today.

By Alex KlarfeldJuly 8, 2026
Cityworks API

This page is an independent analysis by Supergood of what a well-designed Cityworks API could look like. It draws on publicly available information, vendor materials, and general integration experience in this category. Nothing on this page describes an existing Cityworks product, and Supergood is not affiliated with or endorsed by the vendor. If the vendor offers an official API, we highly recommend it.

What is Cityworks?

Cityworks, now part of Trimble, is a GIS-centric asset lifecycle management system that helps organizations manage public infrastructure from permitting through operation and maintenance. Local governments, utilities, airports, counties, and public works agencies use Cityworks to run work order management and field operations, permitting and licensing, inspections and compliance, citizen service requests, and risk assessment and maintenance planning, all anchored to their ArcGIS asset inventory.

Core product areas include:

  • Respond (work management, service requests, and work orders)
  • OpX (project, permitting, and licensing management)
  • Storeroom (inventory and materials tracking)
  • Workload (crew, labor, and resource management)
  • Operational Insights (risk assessment and maintenance planning)

An API for a platform like this would naturally organize around its core data entities:

  • Work Orders, Tasks, Labor, Equipment, Materials, Costs
  • Service Requests, Citizen Submissions, Comments, Attachments
  • Permits, Cases, Licenses, Fees, Payments (PLL)
  • Inspections, Checklists, Conditions, Approvals
  • Assets, GIS Features, Entity Types, Asset Groups
  • Employees, Crews, Departments, Domains

The Cityworks Integration Challenge

Agencies run mission-critical operations on Cityworks daily, but turning a GIS-centric, deployment-specific platform into API-driven automation is non-trivial:

  • Per-deployment configuration: Domains, entity types, custom fields, and templates are tailored per agency, generic integrations break across tenants
  • Token auth changes: Cityworks 23 changed authentication, passing the token in the Authorization header as cityworks {token}, which differs from older query-parameter token flows
  • GIS coupling: Work orders, service requests, and inspections are tied to ArcGIS features, so calls must reconcile Cityworks entities with the agency's spatial data
  • Module spread: AMS (Asset Management) and PLL (Permitting, Licensing, Land) have distinct object models, IDs, and lifecycle states
  • On-prem and cloud variability: Endpoint coverage and base URLs differ between self-hosted, Cityworks Online, and version-specific deployments
  • Permission and domain scoping: Group permissions, domains, and entity-type access control which records a session can read or write

What a Cityworks API Could Look Like

If Cityworks exposed a modern, general-purpose API, the integration challenges above suggest what it would need to get right. This is a design sketch, not documentation of anything that exists today:

  • First-class authentication: session handling with support for MFA and enterprise sign-on where the platform uses them
  • Consistent resources: normalized JSON schemas and pagination across the platform's core objects
  • Reliable writes: idempotency keys and validation that mirrors the platform's own workflow rules
  • Entitlement awareness: endpoints scoped to what each customer's licensing actually permits

The endpoint sketches, technical requirements, and use cases below flesh out this hypothetical design.

How AI agents could connect to software like Cityworks: MCP servers for software without a public API →

Need This Kind of Access Today?

If your team needs this kind of access today, Supergood builds integrations on request, one customer at a time. We act at the direction of our customers, within the access they already hold. Customers bring their own accounts, licenses, and entitlements. If the vendor offers an official API, we highly recommend it.

  1. Schedule an Integration Assessment
    A 30-minute session to review your product mix, licensing, and authentication model.
  2. Scope the Integration
    We design the access pattern around your workflows and entitlements.
  3. Deploy with Monitoring
    Go live with continuous monitoring as your platforms evolve.

Cityworks on the API Report Card

Potential API Endpoints

Authentication

POST/authenticate

Would authenticate to a Cityworks deployment and obtain a session token, passed on downstream calls via the Authorization header.

Work Management

GET/work_orders

Would list work orders with filters for status, entity type, crew, domain, and date range across the AMS module.

Work Management

POST/create_work_order

Would create a new work order against a GIS asset or entity, including tasks, labor, equipment, and materials.

Service Requests

GET/service_requests

Would retrieve citizen and internal service requests with status, problem code, and location filters.

Permitting

GET/permits

Would pull permits, cases, and licenses from the PLL module with status, type, fee, and applicant filters.

Inspections

POST/submit_inspection

Would submit inspection results, checklist answers, and conditions against a work order, case, or permit.

Use Cases

Sync work orders and service requests into downstream systems

- Pull work orders, tasks, labor, and cost data from AMS into a single warehouse - Stream citizen service requests and status changes to 311, CRM, and BI tools - Reconcile asset and GIS feature records across systems for unified reporting

Automate permitting and licensing workflows

- Push new permit applications and cases into the PLL module without portal clicks - Pull fees, payments, and approval status back for finance and applicant portals - Trigger downstream notifications when a permit or license changes state

Streamline field inspections and compliance

- Submit inspection results, checklists, and conditions from mobile or third-party apps - Pull inspection schedules and outcomes for compliance dashboards - Auto-create follow-up work orders when an inspection fails

Keep asset and inventory data in sync

- Sync assets, entity types, and GIS features between Cityworks and external systems - Reconcile Storeroom inventory and materials usage against work order costs - Surface crew, labor, and equipment utilization to workforce planning tools

Technical Requirements

Authentication

Would require token authentication, including the Cityworks 23 Authorization header format (cityworks {token}), with managed session handling

Connectivity

Would build on authenticated sessions over the Cityworks REST API across AMS, PLL, and GIS services

Response format

Normalized JSON across Work Orders, Service Requests, Permits, Cases, and Inspections

Rate limits

Adaptive throttling tuned to your deployment to avoid server-side limits on self-hosted or Cityworks Online instances

Session management

Would need automatic token renewal, session refresh, and credential rotation

Data freshness

Near real-time pulls for work orders, service requests, and permits with optional scheduled batch syncs

Security

Encrypted credential vault, scoped access tokens, SOC 2-aligned controls, and audit logging

Webhooks

Event-style callbacks for work order, service request, permit, case, and inspection status changes

Latency

Design target: sub-second reads on cached entities; multi-second writes when posting work orders and inspections

Throughput

Design target: horizontally scaled workers sized to multi-module volume across AMS and PLL

Reliability

Retry, backoff, and idempotency keys for work order, permit, and inspection transactions

Versioning

Clear versioning and change management would matter as Cityworks evolves

Frequently asked questions

Availability of official interfaces varies by product, plan, and licensing. Many platforms in this category gate access behind partner programs or paid modules, and there is often no broadly available, self-serve public API. Check the vendor's developer resources for current offerings.

The hard parts would be authentication (MFA, session management, enterprise controls), consistent schemas across the platform's products, and write semantics that reconcile the way the platform's own workflows do.

No. This page is an independent analysis by Supergood and is not affiliated with, sponsored by, or endorsed by the vendor. All product names and trademarks belong to their respective owners and are used for identification only. Nothing here documents an actual Cityworks product or service.

Supergood acts at the direction of its customers, within the access those customers already have. We respect each customer's agreements with their software vendors, and how those agreements apply to a customer's use is a determination the customer makes. If the vendor offers an official API, we highly recommend it.

Supergood builds managed API access to enterprise software for customers on request, scoped to each customer's own licensing and entitlements. If your team needs programmatic access to a platform like this, schedule an integration assessment to discuss options.

Ready to get a real API?