» Labour GET API Documentation

Retrieve Labour List: /labours

GET
https://dev-api.exsited.com/api/v3/labours
Try It Out
Purpose

This endpoint is used to retrieve a paginated list of labours configured in the system. It provides comprehensive information about each labour resource, including profile association, availability configuration, custom availability schedules, and metadata required for workforce planning, scheduling, and assignment.

Use Case

• Fetching all active labours for workforce allocation.
• Displaying labour details in scheduling or dispatch modules.
• Validating labour availability before assigning jobs or tasks.
• Reviewing labour profiles and custom availability settings.
• Integrating labour data into third-party workforce or calendar systems.

Path Parameters

This endpoint does not require any path parameters.

Query Parameters
AttributeTypeDescription
limitintegerNumber of records to return per page.
offsetintegerNumber of records to skip before returning results.
Request Body

This endpoint does not require a request body.

Response

The API returns a paginated list of labour records, each containing core labour details such as identifiers, status, profile association, custom form template, availability settings, and audit metadata. Each labour entry may include custom availability schedules specifying preferred working days and time ranges, along with links to associated labour profiles. Pagination information is also included to support efficient data retrieval and navigation through large datasets.

Response Body
{
    "labours": [
        {
            "status": "LABOUR_STATUS",
            "uuid": "LABOUR_UUID",
            "code": "LABOUR_CODE",
            "name": "LABOUR_NAME",
            "display_name": "LABOUR_DISPLAY_NAME",
            "description": "LABOUR_DESCRIPTION",
            "image_name": "IMAGE_NAME",
            "email_address": "EMAIL_ADDRESS",
            "use_custom_availability": "USE_CUSTOM_AVAILABILITY",
            "labour_profile": {
                "status": "PROFILE_STATUS",
                "uuid": "PROFILE_UUID",
                "name": "PROFILE_NAME",
                "display_name": "PROFILE_DISPLAY_NAME",
                "link": "PROFILE_LINK"
            },
            "custom_form_template": "CUSTOM_FORM_TEMPLATE",
            "created_by": "CREATED_BY",
            "created_on": "CREATED_ON",
            "last_updated_by": "LAST_UPDATED_BY",
            "last_updated_on": "LAST_UPDATED_ON",
            "custom_attributes": [],
            "labour_contacts": [],
            "labour_custom_availability": [
                {
                    "status": "AVAILABILITY_STATUS",
                    "uuid": "AVAILABILITY_UUID",
                    "start_time": "START_TIME",
                    "end_time": "END_TIME",
                    "available": "AVAILABLE_FLAG",
                    "preferred_day": "PREFERRED_DAY"
                }
            ],
            "labour_availability": []
        }
    ],
    "pagination": {
        "records": "TOTAL_RECORDS",
        "limit": "LIMIT",
        "offset": "OFFSET",
        "previous_page": "PREVIOUS_PAGE",
        "next_page": "NEXT_PAGE"
    }
}
AttributeTypeDescription
laboursarrayList of labour records.
labours.statusstringCurrent status of the labour.
labours.uuidstringUnique identifier of the labour.
labours.codestringSystem-generated labour code.
labours.namestringName of the labour.
labours.display_namestringDisplay name of the labour.
labours.descriptionstringDescription of the labour.
labours.image_namestringImage file name associated with the labour.
labours.email_addressstringEmail address of the labour.
labours.use_custom_availabilitybooleanIndicates whether custom availability is enabled.
labours.labour_profileobjectAssociated labour profile details.
labour_profile.statusstringStatus of the labour profile.
labour_profile.uuidstringUnique identifier of the labour profile.
labour_profile.namestringName of the labour profile.
labour_profile.display_namestringDisplay name of the labour profile.
labour_profile.linkstringAPI link to the labour profile.
custom_form_templatestringCustom form template assigned to the labour.
created_bystringUser who created the labour record.
created_onstringTimestamp when the labour was created.
last_updated_bystringUser who last updated the labour record.
last_updated_onstringTimestamp of the last update.
custom_attributesarrayList of custom attributes associated with the labour.
labour_contactsarrayContact details linked to the labour.
labour_custom_availabilityarrayCustom availability schedule entries.
availability.start_timestringStart time of availability window.
availability.end_timestringEnd time of availability window.
availability.availablestringIndicates whether the labour is available.
availability.preferred_daystringPreferred working day.
labour_availabilityarrayDefault availability settings, if configured.
paginationobjectPagination metadata.
pagination.recordsintegerTotal number of records available.
pagination.limitintegerMaximum records returned per page.
pagination.offsetintegerOffset used for pagination.
pagination.previous_pagestringLink or reference to the previous page.
pagination.next_pagestringLink or reference to the next page.

Retrieve Orders by Labour Booking: /labours/{labour_uuid}/orders

GET
https://dev-api.exsited.com/api/v3/labours/{labour_uuid}/orders
Try It Out
Purpose

This API retrieves all orders associated with a specific labour booking. It allows the system to identify which orders a particular labour resource has been booked against, along with detailed order, line item, booking, pricing, and billing information.

Use Case

This endpoint is used in workforce management, scheduling, and billing workflows where administrators or operational systems need to view orders linked to a specific labour booking. Common use cases include validating labour allocations, tracking booked work against orders, auditing labour usage, generating invoices, and reconciling labour-related revenue. It also supports sorting parameters to ensure consistent retrieval of the latest order data across GET APIs.

Path Parameters
AttributeTypeDescription
labour_uuidStringUnique identifier (UUID) of the labour resource whose associated orders are to be retrieved
Query Parameters
AttributeTypeDescription
limitIntegerNumber of records to return per page
offsetIntegerNumber of records to skip for pagination
Request Body

This endpoint does not require a request body

Response

On successful execution, the API returns a paginated list of orders associated with the specified labour booking. Each order includes comprehensive details such as order metadata, account information, billing configuration, custom attributes, line items, booking time ranges, pricing snapshots, tax configurations, and KPI metrics. This response enables downstream systems to fully understand how labour resources are booked, billed, and linked to financial and operational data.

Response Body
{
  "orders": [
    {
      "status": "ORDER_STATUS",
      "id": "ORDER_ID",
      "pre_order": "BOOLEAN",
      "quote_order": "BOOLEAN",
      "name": "ORDER_NAME",
      "display_name": "ORDER_DISPLAY_NAME",
      "description": "DESCRIPTION",
      "referral_account": "REFERRAL_ACCOUNT",
      "customer_purchase_order_id": "CUSTOMER_PO_ID",
      "shipping_profile": {},
      "shipping_cost": "SHIPPING_COST",
      "discount_profile": null,
      "origin": "ORIGIN",
      "custom_forms": {
        "uuid": "FORM_UUID",
        "name": "FORM_NAME"
      },
      "currency": {
        "uuid": "CURRENCY_UUID",
        "name": "CURRENCY_NAME",
        "link": "CURRENCY_LINK"
      },
      "time_zone": {
        "uuid": "TIMEZONE_UUID",
        "name": "TIMEZONE_NAME",
        "link": "TIMEZONE_LINK"
      },
      "invoice_note": "INVOICE_NOTE",
      "default_warehouse": "WAREHOUSE_NAME",
      "billing_start_date": "BILLING_START_DATE",
      "order_start_date": "ORDER_START_DATE",
      "next_billing_from_date": "NEXT_BILLING_DATE",
      "price_tax_inclusive": "BOOLEAN",
      "billing_address": {},
      "shipping_address": {},
      "created_by": "CREATED_BY",
      "created_on": "CREATED_ON",
      "last_updated_by": "LAST_UPDATED_BY",
      "last_updated_on": "LAST_UPDATED_ON",
      "uuid": "ORDER_UUID",
      "version": "VERSION",
      "account_id": "ACCOUNT_ID",
      "account_name": "ACCOUNT_NAME",
      "allow_contract": "BOOLEAN",
      "custom_attributes": [
        {
          "name": "ATTRIBUTE_NAME",
          "value": "ATTRIBUTE_VALUE"
        }
      ],
      "custom_objects": [],
      "properties": {
        "invoice_mode": "INVOICE_MODE",
        "invoice_term": "INVOICE_TERM",
        "billing_period": "BILLING_PERIOD",
        "payment_mode": "PAYMENT_MODE",
        "payment_term": "PAYMENT_TERM"
      },
      "lines": [
        {
          "charge_item_uuid": "CHARGE_ITEM_UUID",
          "item_uuid": "ITEM_UUID",
          "item_id": "ITEM_ID",
          "item_name": "ITEM_NAME",
          "booking": {
            "labour_uuid": "LABOUR_UUID",
            "booking_start_time": "BOOKING_START_TIME",
            "booking_end_time": "BOOKING_END_TIME"
          },
          "item_order_quantity": "QUANTITY",
          "item_type": "ITEM_TYPE",
          "item_charge_type": "CHARGE_TYPE",
          "total": "TOTAL",
          "subtotal": "SUBTOTAL",
          "tax": "TAX"
        }
      ],
      "total": "ORDER_TOTAL",
      "subtotal": "ORDER_SUBTOTAL",
      "tax": "ORDER_TAX",
      "kpis": {
        "estimated_total": "ESTIMATED_TOTAL",
        "total_revenue": "TOTAL_REVENUE",
        "total_due": "TOTAL_DUE"
      }
    }
  ],
  "pagination": {
    "records": "TOTAL_RECORDS",
    "limit": "LIMIT",
    "offset": "OFFSET",
    "previous_page": "PREVIOUS_PAGE_URL",
    "next_page": "NEXT_PAGE_URL"
  }
}
AttributeTypeDescription
ordersArrayList of orders associated with the labour booking
orders.statusStringCurrent status of the order
orders.idStringSystem-generated order identifier
orders.nameStringInternal name of the order
orders.display_nameStringDisplay name of the order
orders.created_onString (ISO 8601)Timestamp when the order was created
orders.account_idStringIdentifier of the account linked to the order
orders.custom_attributesArrayCustom attributes associated with the order
orders.linesArrayLine items included in the order
orders.lines.bookingObjectLabour booking details linked to the order line
orders.lines.booking.labour_uuidStringUUID of the booked labour resource
orders.lines.booking.booking_start_timeString (ISO 8601)Booking start date and time
orders.lines.booking.booking_end_timeString (ISO 8601)Booking end date and time
orders.totalNumberTotal amount for the order
orders.subtotalNumberSubtotal before tax
orders.taxNumberTax amount applied to the order
paginationObjectPagination metadata
pagination.recordsIntegerTotal number of matching records
pagination.limitIntegerNumber of records per page
pagination.offsetIntegerOffset used for pagination
pagination.next_pageStringURL to retrieve the next page of results

Looking to build next big project?

With our robust set of tools and resources, you can create custom solutions that integrate seamlessly with our system and take your business to the next level.

Join Our Partner Program