Fieldinsight Public API
    • Introduction
    • OAuth
    • Personal API Keys
    • Rate limits
    • Contacts
      • Get contacts
        GET
      • Create contact
        POST
      • Upsert contact
        PUT
      • Patch contact
        PATCH
      • Remove contact
        DELETE
    • Customers
      • Create customer
        POST
      • Get customers
        GET
      • Upsert customer
        PUT
      • Patch customer
        PATCH
      • Remove customer
        DELETE
      • Add contact to customer
        POST
      • Remove contact from customer
        DELETE
    • Sites
      • Create site
        POST
      • Get sites
        GET
      • Upsert site
        PUT
      • Patch site
        PATCH
      • Remove site
        DELETE
      • Add site to project
        POST
      • Add contact to site
        POST
      • Remove contact from site
        DELETE
    • Inventory
      • Get items
        GET
      • Create item
        POST
      • Patch item
        PATCH
      • Upsert item
        PUT
      • Remove item
        DELETE
      • Update stock
        PUT
      • Adjust stock
        PUT
    • Invoices
      • List Invoices
      • Create Invoice
      • Update Invoice
      • Delete Invoice
      • Set export status
      • Get Invoice PDF
      • Get payments
      • Add payment
    • Payment Methods
      • Upsert Payment Method
      • List Payment Methods
      • Delete Payment Method
    • Payment Terms
      • Upsert Payment Term
      • List Payment Terms
      • Delete Payment Term
    • Business Entities
      • Upsert Business Entity
      • List Business Entities
      • Delete Business Entity
    • Jobs
      • Get jobs
      • Create job
      • Update job
    • Item Classes
      • List Item Classes
      • Upsert Item Class
      • Delete Item Class
    • Cost Codes
      • Upsert Cost Code
      • List Cost Codes
      • Delete Cost Code
    • Pay Items
      • Upsert Pay Item
      • List Pay Items
      • Delete Pay Item
    • Account Groups
      • Upsert Account Group
      • List Account Groups
      • Delete Account Group
    • Units of Measure
      • Upsert Unit Of Measure
      • List Unit Of Measures
      • Delete Unit Of Measure
    • Business Divisions
      • Upsert Business Division
      • List Business Divisions
      • Delete Business Division
    • Warehouses
      • Upsert Part Item Warehouse Location
      • List Part Item Warehouse Locations
      • Delete Part Item Warehouse Location
    • Warehouse Positions
      • Upsert Part Item Warehouse Position
      • List Part Item Warehouse Positions
      • Delete Part Item Warehouse Position
    • Users
      • Get users
    • Projects
      • Get projects
      • Create project
      • Patch project
      • Upsert project
      • Remove project
      • Add account group
      • Remove account group
    • Project Types
      • Upsert Project Type
      • List Project Types
      • Delete Project Type
    • Job Statuses
      • Get items
    • Job Types
      • Get list
    • Workflows
      • Get list
    • Asset Types
      • Upsert Asset Type
      • List Asset Types
      • Delete Asset Type
    • Asset Categories
      • Upsert Asset Type Category
      • List Asset Type Categories
      • Delete Asset Type Category
    • Asset Category Groups
      • Upsert Asset Category Group
      • List Asset Category Groups
      • Delete Asset Category Group
    • Asset Models
      • Upsert Asset Model
      • List Asset Models
      • Delete Asset Model
    • Assets
      • Get assets
      • Create asset
      • Patch asset
      • Upsert asset
      • Remove asset
    • Inventory Transactions
      • Get transactions
    • To-do Lists
      • Create task
      • Get tasks
      • Update task
      • Remove task
    • To-dos
      • Create sub task
      • Get sub tasks
      • Update sub task
      • Remove sub task
    • To-do Types
      • Upsert Todo Type
      • List Todo Types
      • Delete Todo Type
    • To-do Statuses
      • Upsert Todo Status
      • List Todo Statuses
      • Delete Todo Status
    • To-do Priorities
      • Upsert Todo Priority
      • List Todo Priorities
      • Delete Todo Priority
    • Quotes
      • List Quotes
      • Create Quote
      • Update Quote
      • Delete Quote
      • Set export status
      • Get Quote PDF
    • Reports
      • List Reports
      • Create Report
      • Update Report
      • Delete Report
      • Set export status
      • Get Report PDF
    • Purchase Orders
      • List Purchase Orders
      • Create Purchase Order
      • Update Purchase Order
      • Delete Purchase Order
      • Set export status
      • Get Purchase Order PDF
    • Customer Statuses
      • Upsert Customer Status
      • List Customer Statuses
      • Delete Customer Status
    • Schemas
      • AccountGroupInput
      • AccountGroupListItem
      • AccountGroupListQuery
      • AssetCategoryExcerpt
      • AssetCategoryGroupInput
      • AssetCategoryGroupListItem
      • AssetCategoryGroupListQuery
      • AssetCustomEntryInput
      • AssetDeleteQuery
      • AssetInput
      • AssetListItem
      • AssetListQuery
      • AssetModelExcerpt
      • AssetModelInput
      • AssetModelListItem
      • AssetModelListQuery
      • AssetPatchInput
      • AssetSaveOutput
      • AssetTypeCategoryInput
      • AssetTypeCategoryListItem
      • AssetTypeCategoryListQuery
      • AssetTypeExcerpt
      • AssetTypeInput
      • AssetTypeListItem
      • AssetTypeListQuery
      • BusinessDivisionInput
      • BusinessDivisionListItem
      • BusinessDivisionListQuery
      • BusinessEntityInput
      • BusinessEntityListItem
      • BusinessEntityListQuery
      • ContactCustomEntryInput
      • ContactDeleteQuery
      • ContactExcerpt
      • ContactInput
      • ContactListQuery
      • ContactPatchInput
      • ContactSaveOutput
      • CostCodeInput
      • CostCodeListItem
      • CostCodeListQuery
      • CreateJobOutput
      • CustomEntryOutput
      • CustomerCustomEntryInput
      • CustomerDeleteQuery
      • CustomerExtraContactInput
      • CustomerExtraContactRemoveInput
      • CustomerListItem
      • CustomerListQuery
      • CustomerPatchInput
      • CustomerSaveOutput
      • CustomerStatusInput
      • CustomerStatusListItem
      • CustomerStatusListQuery
      • CustomerWithContactInput
      • DocumentCreateInput
      • DocumentDeleteQuery
      • DocumentJobExcerpt
      • DocumentLineItemInput
      • DocumentLineItemOutput
      • DocumentListQuery
      • DocumentSectionInput
      • DocumentSectionOutput
      • DocumentUpdateInput
      • ExportErrorInput
      • ExportResultInput
      • InvoiceListItem
      • InvoiceListQuery
      • InvoiceUpdateInput
      • ItemClassExcerpt
      • ItemClassInput
      • ItemClassListItem
      • ItemClassListQuery
      • ItemClassRefInput
      • ItemCreateInput
      • ItemDeleteQuery
      • ItemExcerpt
      • ItemIdOutput
      • ItemIdRootOutput
      • ItemInput
      • ItemListItem
      • ItemListQuery
      • ItemPatchInput
      • JobCustomEntryInput
      • JobInput
      • JobListQuery
      • JobStatusListItem
      • JobStatusListQuery
      • JobTypeListItem
      • JobTypeListQuery
      • LineItemLocationOutput
      • ListResponse[AccountGroupListItem]
      • ListResponse[AssetCategoryGroupListItem]
      • ListResponse[AssetListItem]
      • ListResponse[AssetModelListItem]
      • ListResponse[AssetTypeCategoryListItem]
      • ListResponse[AssetTypeListItem]
      • ListResponse[BusinessDivisionListItem]
      • ListResponse[BusinessEntityListItem]
      • ListResponse[ContactListItem]
      • ListResponse[CostCodeListItem]
      • ListResponse[CustomerListItem]
      • ListResponse[CustomerStatusListItem]
      • ListResponse[InvoiceListItem]
      • ListResponse[ItemClassListItem]
      • ListResponse[ItemListItem]
      • ListResponse[JobListItem]
      • ListResponse[JobStatusListItem]
      • ListResponse[JobTypeListItem]
      • ListResponse[PartItemWarehouseLocationListItem]
      • ListResponse[PartItemWarehousePositionListItem]
      • ListResponse[PayItemListItem]
      • ListResponse[PaymentListItem]
      • ListResponse[PaymentMethodListItem]
      • ListResponse[PaymentTermListItem]
      • ListResponse[ProjectListItem]
      • ListResponse[ProjectTypeListItem]
      • ListResponse[PurchaseOrderListItem]
      • ListResponse[QuoteListItem]
      • ListResponse[ReportListItem]
      • ListResponse[SiteListItem]
      • ListResponse[TodoListItem]
      • ListResponse[TodoListListItem]
      • ListResponse[TodoPriorityListItem]
      • ListResponse[TodoStatusListItem]
      • ListResponse[TodoTypeListItem]
      • ListResponse[TransactionListItem]
      • ListResponse[UnitOfMeasureListItem]
      • ListResponse[UserListItem]
      • ListResponse[WorkflowListItem]
      • OptionRemoveRequest
      • OptionUpsertOutput
      • PartItemWarehouseLocationListItem
      • PartItemWarehouseLocationListQuery
      • PartItemWarehousePositionListItem
      • PartItemWarehousePositionListQuery
      • PayItemInput
      • PayItemListItem
      • PayItemListQuery
      • PaymentInput
      • PaymentListItem
      • PaymentListQuery
      • PaymentMethodInput
      • PaymentMethodListItem
      • PaymentMethodListQuery
      • PaymentMethodOutput
      • PaymentOutput
      • PaymentTermListQuery
      • PaymentTermSchema
      • ProjectAccountGroupInput
      • ProjectDeleteQuery
      • ProjectInput
      • ProjectListItem
      • ProjectListQuery
      • ProjectPatchInput
      • ProjectSaveOutput
      • ProjectTypeExcerpt
      • ProjectTypeInput
      • ProjectTypeListItem
      • ProjectTypeListQuery
      • PurchaseOrderExcerpt
      • PurchaseOrderListItem
      • PurchaseOrderUpdateInput
      • QuoteListItem
      • RecipientOutput
      • ReportListItem
      • SiteCustomEntryInput
      • SiteDeleteQuery
      • SiteExtraContactInput
      • SiteExtraContactRemoveInput
      • SiteListQuery
      • SitePatchInput
      • SiteProjectInput
      • SiteSaveOutput
      • SiteWithContactInput
      • StockAdjustInput
      • StockItemRefInput
      • StockUpdateInput
      • SupplierExcerpt
      • TodoCreateInput
      • TodoDeleteQuery
      • TodoListCreateInput
      • TodoListDeleteQuery
      • TodoListExcerpt
      • TodoListItem
      • TodoListListItem
      • TodoListListQuery
      • TodoListPatchInput
      • TodoListQuery
      • TodoListSaveOutput
      • TodoPatchInput
      • TodoPriorityExcerpt
      • TodoPriorityInput
      • TodoPriorityListItem
      • TodoPriorityListQuery
      • TodoSaveOutput
      • TodoStatusExcerpt
      • TodoStatusInput
      • TodoStatusListItem
      • TodoStatusListQuery
      • TodoTypeExcerpt
      • TodoTypeInput
      • TodoTypeListItem
      • TodoTypeListQuery
      • TransactionListItem
      • TransactionListQuery
      • TransactionType
      • UnitOfMeasureExcerpt
      • UnitOfMeasureInput
      • UnitOfMeasureListItem
      • UnitOfMeasureListQuery
      • UnitOfMeasureRefInput
      • UserListItem
      • UserListQuery
      • WarehouseExcerpt
      • WarehouseInput
      • WarehousePositionInput
      • WarehousePositionRefInput
      • WarehouseRefInput
      • WorkflowListItem
      • WorkflowListQuery
      • ApiError
      • ApiValidationErrors
      • ApiValidationErrorDetail

    Introduction

    Welcome to the FieldInsight Public API, your gateway to integrating with our powerful field service management platform. This API allows developers to programmatically access and manage data from FieldInsight, including job scheduling, customer information, timesheets, and more.
    Built on RESTful principles and secured through HTTPS, the FieldInsight API ensures data privacy and integrity.

    Base URL#

    All URLs referenced in the documentation have the following base URL: https://app.fieldinsight.com/public-api/

    Authentication Models#

    The FieldInsight Public API supports two authentication methods:
    1.
    OAuth 2.0
    2.
    Personal API Keys
    Each method is designed for different use cases and levels of complexity.

    OAuth 2.0 (Recommended for Integrations)#

    OAuth 2.0 is a secure, industry-standard authentication protocol that allows applications to access FieldInsight on behalf of a user without sharing their password.

    When to use OAuth 2.0#

    Use OAuth 2.0 when:
    You are building an integration used by multiple customers
    You need users to grant access to their FieldInsight accounts
    You are developing a public or third-party application

    How it works (simplified)#

    1.
    The user is redirected to FieldInsight to log in
    2.
    The user grants permission to your application
    3.
    Your application receives an access token
    4.
    The access token is used to make API requests

    Setup#

    To use OAuth 2.0, you must register an application in FieldInsight:
    OAuth App Registration: https://app.fieldinsight.com/dev-access/
    ⚠️ App registration is only required for OAuth 2.0. It is not needed when using Personal API Keys.

    Example Use Case#

    A SaaS platform that integrates with FieldInsight to:
    Import customer and job data
    Push updates back into FieldInsight
    Each customer connects their own FieldInsight account via OAuth, without sharing credentials.

    Personal API Keys (Best for Internal Use)#

    Personal API Keys are simple tokens that authenticate requests on behalf of a single FieldInsight user.

    When to use API Keys#

    Use API keys when:
    You are building internal tools
    The integration is used by a single organisation
    You control both the client and the usage environment

    How it works#

    1.
    A user generates an API key in FieldInsight
    2.
    The key is included in API requests
    3.
    Requests are authenticated as that user

    Setup#

    API keys can be generated and managed here:
    Personal API Key Configuration: https://app.fieldinsight.com/scheduler/settings/#app=personal-api-keys

    Example Use Case#

    An internal script that:
    Automatically creates jobs from emails
    Updates job statuses based on internal systems
    Since the script runs within a trusted environment, a single API key is sufficient.

    Choosing the Right Authentication Method#

    ScenarioRecommended Method
    Public integration for multiple customersOAuth 2.0
    Third-party SaaS applicationOAuth 2.0
    Internal automation toolAPI Key
    Single-organisation integrationAPI Key

    Getting Started#

    To start using the FieldInsight Public API:
    1.
    Review the API documentation
    2.
    Determine your use case
    3.
    Choose the appropriate authentication method
    4.
    Complete setup:
    Register an app (OAuth only), or
    Generate a Personal API Key
    5.
    Start making API requests

    Modified at 2026-05-08 23:39:12
    Next
    OAuth
    Built with