» Workflow GET API Documentation

Retrieve All Milestones of a Specific Workflow (Resource / Job Specific): /workflow/component/{component_uuid}/{resource_id}/milestone

GET
https://dev-api.exsited.com/api/v3/workflow/component/{component_uuid}/{resource_id}/milestone
Try It Out
Purpose

This API retrieves all milestones associated with a specific workflow instance for a given component and resource (job). It provides complete milestone definitions including scheduling, assignment details, alerts, and pagination metadata, enabling clients to understand the current workflow progress and configuration at a granular level.

Use Case

This endpoint is typically used in workflow-driven applications where users need to view or manage milestones for a specific job or resource. It supports operational dashboards, workflow tracking screens, and automation engines that need visibility into milestone timelines, assignees, and alert configurations for a given workflow instance.

Path Parameters
ParameterTypeDescription
component_uuidUUIDUnique identifier of the component to which the workflow is attached
component_record_idStringIdentifier of the resource or job associated with the workflow
Query Parameters
ParameterTypeDescription
limitIntegerMaximum number of milestones to return per page
offsetIntegerNumber of records to skip before starting to return results
Request Body

This endpoint does not accept a request body

Response

On successful execution, this API returns a list of milestones configured for the specified workflow and resource. Each milestone includes its identity, status, date range, workflow version reference, assigned users, contacts, and labours, as well as any alerts configured for milestone-based triggers. The response also includes pagination metadata to support incremental data retrieval when the total number of milestones exceeds the page limit.

Response Body
{
  "milestones": [
    {
      "uuid": "MILESTONE_UUID",
      "name": "MILESTONE_NAME",
      "display_name": "MILESTONE_DISPLAY_NAME",
      "description": "MILESTONE_DESCRIPTION",
      "icon": "ICON_URL_OR_EMPTY",
      "status": "STATUS",
      "start_date": "START_DATE_ISO_8601",
      "end_date": "END_DATE_ISO_8601",
      "state_name": "WORKFLOW_STATE_NAME",
      "workflow_version_uuid": "WORKFLOW_VERSION_UUID",
      "assignees": {
        "selected_operators": [
          {
            "uuid": "ASSIGNEE_UUID",
            "name": "NAME",
            "display_name": "DISPLAY_NAME",
            "email": "EMAIL",
            "display_order": INTEGER,
            "user_uuid": "USER_UUID",
            "responsibility_uuid": "RESPONSIBILITY_UUID",
            "responsibility_name": "RESPONSIBILITY_NAME",
            "responsibility_display_name": "RESPONSIBILITY_DISPLAY_NAME"
          }
        ],
        "selected_account_contacts": [
          {
            "uuid": "CONTACT_UUID",
            "name": "NAME",
            "display_name": "DISPLAY_NAME",
            "email": "EMAIL",
            "display_order": INTEGER,
            "account_code": "ACCOUNT_CODE",
            "contact_uuid": "CONTACT_REFERENCE_UUID",
            "responsibility_uuid": "RESPONSIBILITY_UUID",
            "responsibility_name": "RESPONSIBILITY_NAME",
            "responsibility_display_name": "RESPONSIBILITY_DISPLAY_NAME"
          }
        ],
        "selected_labours": [
          {
            "uuid": "LABOUR_UUID",
            "name": "NAME",
            "display_name": "DISPLAY_NAME",
            "email": "EMAIL",
            "display_order": INTEGER,
            "labour_code": "LABOUR_CODE",
            "responsibility_uuid": "RESPONSIBILITY_UUID",
            "responsibility_name": "RESPONSIBILITY_NAME",
            "responsibility_display_name": "RESPONSIBILITY_DISPLAY_NAME"
          }
        ],
        "manually_added_account_contacts": []
      },
      "alerts": [
        {
          "uuid": "ALERT_UUID",
          "name": "ALERT_NAME",
          "display_name": "ALERT_DISPLAY_NAME",
          "description": "ALERT_DESCRIPTION",
          "type": "ALERT_TYPE",
          "trigger_value": INTEGER,
          "trigger_unit": "TIME_UNIT",
          "trigger": "TRIGGER_DIRECTION",
          "trigger_field": "TRIGGER_FIELD",
          "alert_content": "ALERT_CONTENT",
          "status": "STATUS",
          "recipients": [
            {
              "uuid": "RECIPIENT_UUID",
              "display_order": INTEGER,
              "account_code": "ACCOUNT_CODE",
              "user_uuid": "USER_UUID",
              "contact_uuid": "CONTACT_UUID",
              "name": "NAME",
              "display_name": "DISPLAY_NAME",
              "email": "EMAIL"
            }
          ],
          "responsibilities": [],
          "actions": [
            {
              "name": "ACTION_NAME"
            }
          ]
        }
      ],
      "activity_definition_reference_uuid": "ACTIVITY_DEFINITION_UUID"
    }
  ],
  "pagination": {
    "records": TOTAL_RECORDS,
    "limit": LIMIT,
    "offset": OFFSET,
    "previous_page": "PREVIOUS_PAGE_URL",
    "next_page": "NEXT_PAGE_URL"
  }
}
AttributeTypeDescription
milestonesArrayList of milestones associated with the workflow
milestones.uuidUUIDUnique identifier of the milestone
milestones.nameStringInternal name of the milestone
milestones.display_nameStringDisplay name of the milestone
milestones.descriptionStringDescription of the milestone
milestones.iconStringIcon associated with the milestone
milestones.statusStringCurrent status of the milestone
milestones.start_dateDateTimeStart date of the milestone in ISO 8601 format
milestones.end_dateDateTimeEnd date of the milestone in ISO 8601 format
milestones.state_nameStringWorkflow state associated with the milestone
milestones.workflow_version_uuidUUIDIdentifier of the workflow version
milestones.assigneesObjectCollection of users, contacts, and labours assigned to the milestone
milestones.alertsArrayAlerts configured for the milestone
milestones.activity_definition_reference_uuidUUIDReference to the activity definition linked to the milestone
paginationObjectPagination metadata
pagination.recordsIntegerTotal number of records available
pagination.limitIntegerMaximum number of records returned
pagination.offsetIntegerStarting index of the current page
pagination.previous_pageStringURL of the previous page
pagination.next_pageStringURL of the next page

Retrieve Milestone Details of a Specific Workflow (Resource / Job Specific): /workflow/component/{component_uuid}/{resource_id}/milestone/{milestone_uuid}

GET
https://dev-api.exsited.com/api/v3/workflow/component/{component_uuid}/{resource_id}/milestone/{milestone_uuid}
Try It Out
Purpose

This API retrieves the complete details of a specific milestone associated with a workflow for a given component and resource (job). It exposes milestone configuration, scheduling information, assignees, alert definitions, and workflow references required to understand and manage the milestone lifecycle.

Use Case

This endpoint is used when a client application needs to display or process detailed information about a single milestone within a workflow. Typical use cases include milestone detail views, workflow execution engines validating milestone assignments and alerts, and administrative tools reviewing milestone configuration for a specific job or resource.

Path Parameters
ParameterTypeDescription
component_uuidUUIDUnique identifier of the component associated with the workflow
component_record_idStringIdentifier of the resource or job linked to the workflow
milestone_uuidUUIDUnique identifier of the milestone to be retrieved
Query Parameters

This endpoint does not support query parameters

Request Body

This endpoint does not accept a request body

Response

On successful execution, this API returns a detailed milestone object representing the specified milestone within the workflow. The response includes milestone metadata, scheduling dates, workflow state, assignee information across operators, account contacts, and labours, as well as all configured alerts with their trigger conditions, recipients, and actions. This data enables full visibility into milestone execution requirements and notification behavior.

Response Body
{
  "milestone": {
    "uuid": "MILESTONE_UUID",
    "name": "MILESTONE_NAME",
    "display_name": "MILESTONE_DISPLAY_NAME",
    "description": "MILESTONE_DESCRIPTION",
    "icon": "ICON_URL_OR_EMPTY",
    "status": "STATUS",
    "start_date": "START_DATE_ISO_8601",
    "end_date": "END_DATE_ISO_8601",
    "state_name": "WORKFLOW_STATE_NAME",
    "workflow_version_uuid": "WORKFLOW_VERSION_UUID",
    "assignees": {
      "selected_operators": [
        {
          "uuid": "ASSIGNEE_UUID",
          "name": "NAME",
          "display_name": "DISPLAY_NAME",
          "email": "EMAIL",
          "display_order": INTEGER,
          "user_uuid": "USER_UUID",
          "responsibility_uuid": "RESPONSIBILITY_UUID",
          "responsibility_name": "RESPONSIBILITY_NAME",
          "responsibility_display_name": "RESPONSIBILITY_DISPLAY_NAME"
        }
      ],
      "selected_account_contacts": [
        {
          "uuid": "CONTACT_UUID",
          "name": "NAME",
          "display_name": "DISPLAY_NAME",
          "email": "EMAIL",
          "display_order": INTEGER,
          "account_code": "ACCOUNT_CODE",
          "contact_uuid": "CONTACT_REFERENCE_UUID",
          "responsibility_uuid": "RESPONSIBILITY_UUID",
          "responsibility_name": "RESPONSIBILITY_NAME",
          "responsibility_display_name": "RESPONSIBILITY_DISPLAY_NAME"
        }
      ],
      "selected_labours": [
        {
          "uuid": "LABOUR_UUID",
          "name": "NAME",
          "display_name": "DISPLAY_NAME",
          "email": "EMAIL",
          "display_order": INTEGER,
          "labour_code": "LABOUR_CODE",
          "responsibility_uuid": "RESPONSIBILITY_UUID",
          "responsibility_name": "RESPONSIBILITY_NAME",
          "responsibility_display_name": "RESPONSIBILITY_DISPLAY_NAME"
        }
      ],
      "manually_added_account_contacts": []
    },
    "alerts": [
      {
        "uuid": "ALERT_UUID",
        "name": "ALERT_NAME",
        "display_name": "ALERT_DISPLAY_NAME",
        "description": "ALERT_DESCRIPTION",
        "type": "ALERT_TYPE",
        "trigger_value": INTEGER,
        "trigger_unit": "TIME_UNIT",
        "trigger": "TRIGGER_DIRECTION",
        "trigger_field": "TRIGGER_FIELD",
        "alert_content": "ALERT_CONTENT",
        "status": "STATUS",
        "recipients": [
          {
            "uuid": "RECIPIENT_UUID",
            "display_order": INTEGER,
            "account_code": "ACCOUNT_CODE",
            "user_uuid": "USER_UUID",
            "contact_uuid": "CONTACT_UUID",
            "name": "NAME",
            "display_name": "DISPLAY_NAME",
            "email": "EMAIL"
          }
        ],
        "responsibilities": [],
        "actions": [
          {
            "name": "ACTION_NAME"
          }
        ]
      }
    ],
    "activity_definition_reference_uuid": "ACTIVITY_DEFINITION_UUID"
  }
}
AttributeTypeDescription
milestoneObjectDetailed milestone information
milestone.uuidUUIDUnique identifier of the milestone
milestone.nameStringInternal name of the milestone
milestone.display_nameStringDisplay name of the milestone
milestone.descriptionStringDescription of the milestone
milestone.iconStringIcon associated with the milestone
milestone.statusStringCurrent status of the milestone
milestone.start_dateDateTimeStart date of the milestone in ISO 8601 format
milestone.end_dateDateTimeEnd date of the milestone in ISO 8601 format
milestone.state_nameStringWorkflow state name associated with the milestone
milestone.workflow_version_uuidUUIDIdentifier of the workflow version
milestone.assigneesObjectUsers, contacts, and labours assigned to the milestone
milestone.alertsArrayAlerts configured for milestone-based triggers
milestone.activity_definition_reference_uuidUUIDReference UUID of the linked activity definition

Retrieve Alert Responsibility Details: /alert_responsibility/{alert_responsibility_uuid}

GET
https://dev-api.exsited.com/api/v3/alert_responsibility/{alert_responsibility_uuid}
Try It Out
Purpose

This API retrieves the details of a specific alert responsibility configuration using its unique identifier. It allows systems to access responsibility metadata that is used to assign and manage alert ownership within workflows and notification mechanisms.

Use Case

This endpoint is commonly used when an application needs to view or validate alert responsibility details while configuring alerts, assigning responsibilities to workflow milestones, or displaying responsibility information in administrative or configuration screens.

Path Parameters
ParameterTypeDescription
alert_responsibility_uuidUUIDUnique identifier of the alert responsibility to be retrieved
Query Parameters

This endpoint does not support query parameters

Request Body

This endpoint does not accept a request body

Response

On successful execution, this API returns a single alert responsibility object containing its identifying information, display configuration, current status, and audit timestamps. The response enables client applications to understand how alerts are assigned and managed within the system and to reference this responsibility in alert or workflow configurations.

Response Body
{
  "alert_responsibility": {
    "uuid": "ALERT_RESPONSIBILITY_UUID",
    "name": "RESPONSIBILITY_NAME",
    "display_name": "RESPONSIBILITY_DISPLAY_NAME",
    "description": "RESPONSIBILITY_DESCRIPTION",
    "status": "STATUS",
    "created_on": "CREATED_TIMESTAMP",
    "updated_on": "UPDATED_TIMESTAMP"
  }
}
AttributeTypeDescription
alert_responsibilityObjectAlert responsibility details
alert_responsibility.uuidUUIDUnique identifier of the alert responsibility
alert_responsibility.nameStringInternal name of the alert responsibility
alert_responsibility.display_nameStringDisplay name of the alert responsibility
alert_responsibility.descriptionStringDescription of the alert responsibility
alert_responsibility.statusStringCurrent status of the alert responsibility
alert_responsibility.created_onDateTimeTimestamp when the alert responsibility was created
alert_responsibility.updated_onDateTimeTimestamp when the alert responsibility was last updated

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