» Labour Profiles GET API Documentation

Retrieve Labour Profile List: /labour-profiles

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

This API retrieves a list of all labour profiles configured in the system. Each labour profile represents a reusable configuration that defines booking limits, pricing rules, availability schedules, tax settings, and associated labours, enabling structured labour management and scheduling.

Use Case

This endpoint is typically used when displaying available labour profiles in administrative panels, configuring labour assignments for jobs or workflows, validating pricing and availability rules, or synchronizing labour profile data with external systems for scheduling, billing, or reporting purposes.

Path Parameters

This endpoint does not require path parameters

Query Parameters
ParameterTypeDescription
limitIntegerNumber of records to return per page
offsetIntegerNumber of records to skip for pagination
Request Body

This endpoint does not accept a request body

Response

On successful execution, this API returns a paginated list of labour profiles. Each labour profile includes its core configuration such as booking limits, tax settings, currency, associated labours, session definitions, pricing structures, and availability schedules. This consolidated response enables client applications to fully understand labour capacity, pricing behavior, and availability rules for effective workforce planning and scheduling.

Response Body
{
  "labour_profiles": [
    {
      "status": "STATUS",
      "uuid": "LABOUR_PROFILE_UUID",
      "name": "PROFILE_NAME",
      "display_name": "PROFILE_DISPLAY_NAME",
      "max_booking_limit": "MAX_BOOKING_LIMIT",
      "tax_inclusive": "BOOLEAN",
      "currency": "CURRENCY_CODE",
      "tax": {
        "uuid": "TAX_UUID",
        "code": "TAX_CODE",
        "rate": "TAX_RATE",
        "link": "TAX_LINK"
      },
      "created_by": "CREATED_BY",
      "created_on": "CREATED_TIMESTAMP",
      "last_updated_by": "LAST_UPDATED_BY",
      "last_updated_on": "LAST_UPDATED_TIMESTAMP",
      "labours": [
        {
          "status": "STATUS",
          "uuid": "LABOUR_UUID",
          "name": "LABOUR_NAME",
          "display_name": "LABOUR_DISPLAY_NAME",
          "image_name": "IMAGE_NAME",
          "use_custom_availability": "BOOLEAN",
          "link": "LABOUR_LINK"
        }
      ],
      "labour_profile_sessions": [
        {
          "status": "STATUS",
          "uuid": "SESSION_UUID",
          "name": "SESSION_NAME",
          "start_date": "START_DATE",
          "end_date": "END_DATE",
          "labour_profile_session_prices": [
            {
              "id": "PRICE_ID",
              "status": "STATUS",
              "uuid": "PRICE_UUID",
              "price": "PRICE_AMOUNT",
              "enabled_pro_rata": "BOOLEAN",
              "price_type": "PRICE_TYPE",
              "pricing_level": "PRICING_LEVEL",
              "labour_profile_session_price_hours": [
                {
                  "status": "STATUS",
                  "uuid": "PRICE_HOUR_UUID",
                  "start_time": "START_TIME",
                  "end_time": "END_TIME",
                  "price": "HOURLY_PRICE"
                }
              ]
            }
          ],
          "labour_profile_session_availability": [
            {
              "status": "STATUS",
              "uuid": "AVAILABILITY_UUID",
              "start_time": "START_TIME",
              "end_time": "END_TIME",
              "available": "BOOLEAN",
              "preferred_day": "DAY_OF_WEEK"
            }
          ]
        }
      ]
    }
  ],
  "pagination": {
    "records": "TOTAL_RECORDS",
    "limit": "LIMIT",
    "offset": "OFFSET",
    "previous_page": "PREVIOUS_PAGE",
    "next_page": "NEXT_PAGE"
  }
}
AttributeTypeDescription
labour_profilesArrayList of labour profiles
labour_profiles.statusStringCurrent status of the labour profile
labour_profiles.uuidUUIDUnique identifier of the labour profile
labour_profiles.nameStringInternal name of the labour profile
labour_profiles.display_nameStringDisplay name of the labour profile
labour_profiles.max_booking_limitStringMaximum number of bookings allowed
labour_profiles.tax_inclusiveBooleanIndicates whether pricing includes tax
labour_profiles.currencyStringCurrency code used for pricing
labour_profiles.taxObjectTax configuration associated with the labour profile
labour_profiles.laboursArrayLabours linked to the labour profile
labour_profiles.labour_profile_sessionsArraySession definitions for the labour profile
labour_profile_sessions.labour_profile_session_pricesArrayPricing configurations for sessions
labour_profile_session_price_hoursArrayTime-based pricing details
labour_profile_session_availabilityArrayWeekly availability configuration
paginationObjectPagination metadata for the response
pagination.recordsIntegerTotal number of records
pagination.limitIntegerMaximum records 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

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