Service Task API
API reference for service task operations in the Zync SDK.
Table of contents
Getting Service Tasks
Retrieve a list of service tasks associated with a specific job or module using the getServiceTasks() method:
val result = zync.serviceTasks.getServiceTasks(
module = ZuperModule.JOB,
moduleUid = "job_uid_123"
)
when (result) {
is GetServiceTasksResult.Success -> {
val tasks = result.serviceTasks
println("Found ${tasks.size} service tasks")
tasks.forEach { task ->
println("Task: ${task.serviceTaskTitle}")
println("Status: ${task.serviceTaskStatus}")
}
}
is GetServiceTasksResult.Failure -> {
println("Error: ${result.error.message}")
when (result.error) {
is ZyncError.Network -> {
println("Check your internet connection")
}
is ZyncError.Error -> {
result.error.code?.let { code ->
println("Error code: $code")
}
}
}
}
}
let result = try await zync.serviceTasks.getServiceTasks(
module: ZuperModule.job,
moduleUid: "job_uid_123"
)
switch onEnum(of: result) {
case .success(let success):
let tasks = success.serviceTasks
print("Found \(tasks.count) service tasks")
for task in tasks {
print("Task: \(task.serviceTaskTitle)")
print("Status: \(task.serviceTaskStatus)")
}
case .failure(let failure):
print("Error: \(failure.error.message)")
switch onEnum(of: failure.error) {
case .network:
print("Check your internet connection")
case .error(let error):
print("Error: \(error.message)")
if let code = error.code {
print("Error code: \(code)")
}
}
}
Getting Service Task Details
Retrieve detailed information for a specific service task, including status history, assignments, and related data:
val result = zync.serviceTasks.getServiceTaskDetail("service_task_uid_456")
when (result) {
is GetServiceTaskDetailResult.Success -> {
val taskDetail = result.serviceTaskDetail
println("Task: ${taskDetail.serviceTaskTitle}")
println("Status: ${taskDetail.serviceTaskStatus}")
}
is GetServiceTaskDetailResult.Failure -> {
println("Error: ${result.error.message}")
}
}
let result = try await zync.serviceTasks.getServiceTaskDetail(serviceTaskUid: "service_task_uid_456")
switch onEnum(of: result) {
case .success(let success):
let taskDetail = success.serviceTaskDetail
print("Task: \(taskDetail.serviceTaskTitle)")
print("Status: \(taskDetail.serviceTaskStatus)")
case .failure(let failure):
print("Error: \(failure.error.message)")
}