Joblogic

Joblogic is a cloud field service management (FSM) platform for trades, service, and maintenance contractors - covering customers, sites, assets, jobs, engineer scheduling, mobile workforce, quotes, invoices, stock, and PPM (planned preventative maintenance) contracts. Joblogic exposes a REST API (base path /api/v1) secured with OAuth2 client-credentials tokens issued by a Joblogic IdentityServer, plus outbound webhooks for change events. API access is customer-provisioned - Joblogic issues a Client ID, Client Secret, and Tenant ID and IP-allowlists callers behind a firewall, with a UAT sandbox for integration development.

9 APIs 0 Features
Field Service ManagementJob ManagementSchedulingMaintenanceWorkforceMobile WorkforceTradesCRMSaaS

APIs

Joblogic Customers API

Search, retrieve, create, update, delete, and set the status of customer records - the account entities that own sites, jobs, quotes, and invoices in Joblogic. Includes customer...

Joblogic Contacts API

Manage contacts attached to customers, sites, suppliers, and subcontractors - create, update, delete, look up contacts by parent entity, and configure the events a contact is no...

Joblogic Sites API

Manage sites - the physical service locations belonging to a customer where assets live and work is carried out. Search, retrieve, create, update, delete, set status, and config...

Joblogic Assets API

Manage the equipment and plant assets located at customer sites that Joblogic services and maintains - search, retrieve by integer or unique ID, create, update, and delete asset...

Joblogic Jobs API

The core work-order surface - create, retrieve, search, update, delete, approve, and change the status of jobs, assign contacts, generate job sheets, and record job costs (labou...

Joblogic Visits API

Schedule and manage engineer visits against jobs - search, retrieve, create, update, delete, deploy / re-deploy to a mobile engineer, cancel, and search the scheduler planner.

Joblogic Engineers API

Search and retrieve field engineers, update certificate registration numbers, mark engineers on-call, and run scheduler searches to place visits against the mobile workforce.

Joblogic Quotes API

Create, search, retrieve, update, and delete quotes, read quote costs, assign contacts, approve / reject / revert / cancel a quote, and generate a quote document, with quote att...

Joblogic Invoices API

Create, search, retrieve, update, and delete invoices - including standard, customer-grouped, and PPM invoices - and generate invoice documents. Syncs with accounting integratio...

Collections

Pricing Plans

Joblogic Plans Pricing

3 plans

PLANS

Rate Limits

Joblogic Rate Limits

2 limits

RATE LIMITS

FinOps

Resources

🔗
AgenticAccess
AgenticAccess
🔗
DomainSecurity
DomainSecurity
🔑
Authentication
Authentication
🔗
LinkedIn
LinkedIn
🔗
Website
Website
🔗
Documentation
Documentation
🔗
Plans
Plans
🔗
RateLimits
RateLimits
🔗
FinOps
FinOps

Sources

Raw ↑
opencollection: 1.0.0
info:
  name: Joblogic API
  version: v1
request:
  auth:
    type: bearer
    token: '{{access_token}}'
items:
- info:
    name: Authentication
    type: folder
  items:
  - info:
      name: Get access token (client credentials).
      type: http
    http:
      method: POST
      url: https://uatidentityserver.joblogic.com/connect/token
      auth:
        type: none
      body:
        type: urlencoded
        data: client_id={{client_id}}&client_secret={{client_secret}}&grant_type=client_credentials&scope={{scope}}
    docs: Exchanges the Joblogic-issued client_id and client_secret for a one-hour Bearer access token via the IdentityServer
      client-credentials grant. The production IdentityServer token endpoint is provided during onboarding.
- info:
    name: Customers
    type: folder
  items:
  - info:
      name: Search customers.
      type: http
    http:
      method: POST
      url: https://api.joblogic.com/api/v1/Customer/GetAll
      body:
        type: json
        data: "{\n  \"searchTerm\": \"\",\n  \"pageNumber\": 1,\n  \"pageSize\": 50\n}"
    docs: Searches customers by keyword, tags, and active status.
  - info:
      name: Get customer by unique id.
      type: http
    http:
      method: GET
      url: https://api.joblogic.com/api/v1/Customer?id=:id&tenantId=:tenantId
      params:
      - name: id
        value: ''
        type: query
        description: Customer unique GUID.
      - name: tenantId
        value: ''
        type: query
        description: Caller tenant GUID.
    docs: Retrieves a customer by its unique GUID.
  - info:
      name: Create customer.
      type: http
    http:
      method: POST
      url: https://api.joblogic.com/api/v1/Customer
      body:
        type: json
        data: '{}'
    docs: Creates a customer.
  - info:
      name: Update customer.
      type: http
    http:
      method: PUT
      url: https://api.joblogic.com/api/v1/Customer
      body:
        type: json
        data: '{}'
    docs: Updates a customer.
  - info:
      name: Delete customer.
      type: http
    http:
      method: DELETE
      url: https://api.joblogic.com/api/v1/Customer?id=:id&tenantId=:tenantId
      params:
      - name: id
        value: ''
        type: query
        description: Customer unique GUID.
      - name: tenantId
        value: ''
        type: query
        description: Caller tenant GUID.
    docs: Deletes a customer by unique ID.
- info:
    name: Contacts
    type: folder
  items:
  - info:
      name: Create contact.
      type: http
    http:
      method: POST
      url: https://api.joblogic.com/api/v1/Contact
      body:
        type: json
        data: '{}'
    docs: Creates a contact attached to a parent entity.
  - info:
      name: Get contacts by entity id.
      type: http
    http:
      method: GET
      url: https://api.joblogic.com/api/v1/Contact/GetContactByEntityId?tenantId=:tenantId&entityId=:entityId
      params:
      - name: tenantId
        value: ''
        type: query
        description: Caller tenant GUID.
      - name: entityId
        value: ''
        type: query
        description: Parent entity unique GUID.
    docs: Lists contacts attached to a parent entity (customer, site, supplier, or subcontractor).
  - info:
      name: Delete contact.
      type: http
    http:
      method: DELETE
      url: https://api.joblogic.com/api/v1/Contact?id=:id&tenantId=:tenantId
      params:
      - name: id
        value: ''
        type: query
        description: Contact unique GUID.
      - name: tenantId
        value: ''
        type: query
        description: Caller tenant GUID.
    docs: Deletes a contact.
- info:
    name: Sites
    type: folder
  items:
  - info:
      name: Search sites.
      type: http
    http:
      method: POST
      url: https://api.joblogic.com/api/v1/Site/GetAll
      body:
        type: json
        data: "{\n  \"searchTerm\": \"\",\n  \"pageNumber\": 1,\n  \"pageSize\": 50\n}"
    docs: Searches sites by keyword, tags, customer, and active status.
  - info:
      name: Get site by unique id.
      type: http
    http:
      method: GET
      url: https://api.joblogic.com/api/v1/Site?id=:id&tenantId=:tenantId
      params:
      - name: id
        value: ''
        type: query
        description: Site unique GUID.
      - name: tenantId
        value: ''
        type: query
        description: Caller tenant GUID.
    docs: Retrieves a site by its unique GUID.
  - info:
      name: Create site.
      type: http
    http:
      method: POST
      url: https://api.joblogic.com/api/v1/Site?tenantId=:tenantId
      params:
      - name: tenantId
        value: ''
        type: query
        description: Caller tenant GUID.
      body:
        type: json
        data: '{}'
    docs: Creates a site under a customer.
  - info:
      name: Update site.
      type: http
    http:
      method: PUT
      url: https://api.joblogic.com/api/v1/Site?id=:id&tenantId=:tenantId
      params:
      - name: id
        value: ''
        type: query
        description: Site unique GUID.
      - name: tenantId
        value: ''
        type: query
        description: Caller tenant GUID.
      body:
        type: json
        data: '{}'
    docs: Updates a site.
  - info:
      name: Delete site.
      type: http
    http:
      method: DELETE
      url: https://api.joblogic.com/api/v1/Site?id=:id&tenantId=:tenantId
      params:
      - name: id
        value: ''
        type: query
        description: Site unique GUID.
      - name: tenantId
        value: ''
        type: query
        description: Caller tenant GUID.
    docs: Deletes a site.
- info:
    name: Assets
    type: folder
  items:
  - info:
      name: Search assets.
      type: http
    http:
      method: POST
      url: https://api.joblogic.com/api/v1/Asset/GetAll
      body:
        type: json
        data: '{}'
    docs: Searches assets.
  - info:
      name: Get asset by unique id.
      type: http
    http:
      method: GET
      url: https://api.joblogic.com/api/v1/Asset?id=:id&tenantId=:tenantId
      params:
      - name: id
        value: ''
        type: query
        description: Asset unique GUID.
      - name: tenantId
        value: ''
        type: query
        description: Caller tenant GUID.
    docs: Retrieves an asset by its unique GUID.
  - info:
      name: Create asset.
      type: http
    http:
      method: POST
      url: https://api.joblogic.com/api/v1/Asset?tenantId=:tenantId
      params:
      - name: tenantId
        value: ''
        type: query
        description: Caller tenant GUID.
      body:
        type: json
        data: '{}'
    docs: Creates an asset at a site.
  - info:
      name: Update asset.
      type: http
    http:
      method: PUT
      url: https://api.joblogic.com/api/v1/Asset
      body:
        type: json
        data: '{}'
    docs: Updates an asset.
  - info:
      name: Delete asset.
      type: http
    http:
      method: DELETE
      url: https://api.joblogic.com/api/v1/Asset?id=:id&tenantId=:tenantId
      params:
      - name: id
        value: ''
        type: query
        description: Asset unique GUID.
      - name: tenantId
        value: ''
        type: query
        description: Caller tenant GUID.
    docs: Deletes an asset.
- info:
    name: Jobs
    type: folder
  items:
  - info:
      name: Search jobs.
      type: http
    http:
      method: POST
      url: https://api.joblogic.com/api/v1/Job/getall
      body:
        type: json
        data: '{}'
    docs: Searches jobs by conditions such as keyword, status, dates, and tags.
  - info:
      name: Retrieve job by unique id.
      type: http
    http:
      method: GET
      url: https://api.joblogic.com/api/v1/Job?id=:id&tenantId=:tenantId
      params:
      - name: id
        value: ''
        type: query
        description: Job unique GUID.
      - name: tenantId
        value: ''
        type: query
        description: Caller tenant GUID.
    docs: Retrieves a job by its unique GUID.
  - info:
      name: Create job.
      type: http
    http:
      method: POST
      url: https://api.joblogic.com/api/v1/Job
      body:
        type: json
        data: '{}'
    docs: Creates a job.
  - info:
      name: Update job.
      type: http
    http:
      method: PUT
      url: https://api.joblogic.com/api/v1/Job
      body:
        type: json
        data: '{}'
    docs: Updates a job.
  - info:
      name: Update job status.
      type: http
    http:
      method: PUT
      url: https://api.joblogic.com/api/v1/Job/updatestatus
      body:
        type: json
        data: '{}'
    docs: Updates the status of a job.
  - info:
      name: Get job costs.
      type: http
    http:
      method: GET
      url: https://api.joblogic.com/api/v1/JobCost?tenantId=:tenantId&jobId=:jobId
      params:
      - name: tenantId
        value: ''
        type: query
        description: Caller tenant GUID.
      - name: jobId
        value: ''
        type: query
        description: Job unique GUID.
    docs: Gets all cost lines recorded against a job.
  - info:
      name: Add labour cost.
      type: http
    http:
      method: POST
      url: https://api.joblogic.com/api/v1/JobCost/Labour
      body:
        type: json
        data: '{}'
    docs: Adds a labour cost line to a job.
- info:
    name: Visits
    type: folder
  items:
  - info:
      name: Search visits.
      type: http
    http:
      method: POST
      url: https://api.joblogic.com/api/v1/Visit/GetAll
      body:
        type: json
        data: '{}'
    docs: Retrieves all visits.
  - info:
      name: Get visit by integer id.
      type: http
    http:
      method: GET
      url: https://api.joblogic.com/api/v1/Visit/GetById?id=:id&tenantId=:tenantId
      params:
      - name: id
        value: ''
        type: query
        description: Visit integer ID.
      - name: tenantId
        value: ''
        type: query
        description: Caller tenant GUID.
    docs: Retrieves a visit by its integer ID.
  - info:
      name: Create visit.
      type: http
    http:
      method: POST
      url: https://api.joblogic.com/api/v1/Visit
      body:
        type: json
        data: '{}'
    docs: Creates a visit against a job.
  - info:
      name: Deploy visit.
      type: http
    http:
      method: POST
      url: https://api.joblogic.com/api/v1/Visit/Deploy
      body:
        type: json
        data: '{}'
    docs: Deploys a visit to a mobile engineer.
- info:
    name: Engineers
    type: folder
  items:
  - info:
      name: Search engineers.
      type: http
    http:
      method: POST
      url: https://api.joblogic.com/api/v1/Engineer/GetAll?tenantId=:tenantId
      params:
      - name: tenantId
        value: ''
        type: query
        description: Caller tenant GUID.
      body:
        type: json
        data: '{}'
    docs: Searches engineers by keyword and active status.
  - info:
      name: Get engineer by integer id.
      type: http
    http:
      method: GET
      url: https://api.joblogic.com/api/v1/Engineer/GetById?id=:id&tenantId=:tenantId
      params:
      - name: id
        value: ''
        type: query
        description: Engineer integer ID.
      - name: tenantId
        value: ''
        type: query
        description: Caller tenant GUID.
    docs: Retrieves an engineer by integer ID.
  - info:
      name: Mark engineer on-call.
      type: http
    http:
      method: POST
      url: https://api.joblogic.com/api/v1/Engineer/MarkOnCall
      body:
        type: json
        data: '{}'
    docs: Marks an engineer as on-call.
- info:
    name: Quotes
    type: folder
  items:
  - info:
      name: Search quotes.
      type: http
    http:
      method: POST
      url: https://api.joblogic.com/api/v1/Quote/GetAll
      body:
        type: json
        data: '{}'
    docs: Searches quotes by keyword, tags, active status, and date.
  - info:
      name: Create quote.
      type: http
    http:
      method: POST
      url: https://api.joblogic.com/api/v1/Quote
      body:
        type: json
        data: '{}'
    docs: Creates a quote.
  - info:
      name: Get quote by id.
      type: http
    http:
      method: GET
      url: https://api.joblogic.com/api/v1/Quote/GetById?Id=:Id&TenantId=:TenantId
      params:
      - name: Id
        value: ''
        type: query
        description: Quote integer ID.
      - name: TenantId
        value: ''
        type: query
        description: Caller tenant GUID.
    docs: Gets quote details.
  - info:
      name: Approve quote.
      type: http
    http:
      method: POST
      url: https://api.joblogic.com/api/v1/Quote/Approve
      body:
        type: json
        data: '{}'
    docs: Approves a quote.
- info:
    name: Invoices
    type: folder
  items:
  - info:
      name: Search invoices.
      type: http
    http:
      method: POST
      url: https://api.joblogic.com/api/v1/Invoice/getall?tenantid=:tenantId
      params:
      - name: tenantId
        value: ''
        type: query
        description: Caller tenant GUID.
      body:
        type: json
        data: '{}'
    docs: Searches invoices by keyword and active status.
  - info:
      name: Create invoice.
      type: http
    http:
      method: POST
      url: https://api.joblogic.com/api/v1/Invoice?tenantid=:tenantId
      params:
      - name: tenantId
        value: ''
        type: query
        description: Caller tenant GUID.
      body:
        type: json
        data: '{}'
    docs: Creates an invoice.
  - info:
      name: Retrieve invoice by integer id.
      type: http
    http:
      method: GET
      url: https://api.joblogic.com/api/v1/Invoice/GetById?id=:id&tenantId=:tenantId
      params:
      - name: id
        value: ''
        type: query
        description: Invoice integer ID.
      - name: tenantId
        value: ''
        type: query
        description: Caller tenant GUID.
    docs: Retrieves an invoice by its integer ID.
  - info:
      name: Update invoice.
      type: http
    http:
      method: PUT
      url: https://api.joblogic.com/api/v1/Invoice?tenantId=:tenantId&id=:id
      params:
      - name: tenantId
        value: ''
        type: query
        description: Caller tenant GUID.
      - name: id
        value: ''
        type: query
        description: Invoice integer ID.
      body:
        type: json
        data: '{}'
    docs: Updates an invoice.
  - info:
      name: Delete invoice.
      type: http
    http:
      method: DELETE
      url: https://api.joblogic.com/api/v1/Invoice?tenantId=:tenantId&id=:id
      params:
      - name: tenantId
        value: ''
        type: query
        description: Caller tenant GUID.
      - name: id
        value: ''
        type: query
        description: Invoice integer ID.
    docs: Deletes an invoice.
bundled: true