Get labor effectiveness metrics for an employee in a timeframe
curl --request GET \
--url https://api.bold-factory.com/v1/people/employees/{employeeReference}/laborEffectiveness \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.bold-factory.com/v1/people/employees/{employeeReference}/laborEffectiveness"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.bold-factory.com/v1/people/employees/{employeeReference}/laborEffectiveness', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.bold-factory.com/v1/people/employees/{employeeReference}/laborEffectiveness",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.bold-factory.com/v1/people/employees/{employeeReference}/laborEffectiveness"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.bold-factory.com/v1/people/employees/{employeeReference}/laborEffectiveness")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.bold-factory.com/v1/people/employees/{employeeReference}/laborEffectiveness")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"from": "2023-11-07T05:31:56Z",
"to": "2023-11-07T05:31:56Z",
"employeeId": "<string>",
"employeeName": "<string>",
"timeZoneId": "<string>",
"totals": {
"totalTimeSeconds": 123,
"scheduledSeconds": 123,
"workedInScheduleSeconds": 123,
"workedOutOfScheduleSeconds": 123,
"idleSeconds": 123,
"interruptionIdleSeconds": 123,
"productionSeconds": 123,
"maintenanceSeconds": 123,
"warehouseSeconds": 123,
"valuedSeconds": 123,
"pendingValuationSeconds": 123,
"unvaluedSeconds": 123,
"earnedSeconds": 123,
"implausibleOperationsCount": 123,
"goodQuantity": 123,
"rejectedQuantity": 123,
"occupancy": 123,
"overtimeRatio": 123,
"efficiency": 123,
"standardCoverage": 123,
"pendingValuationRatio": 123,
"quality": 123,
"productivity": 123,
"ole": 123
},
"timeline": [
{
"from": "2023-11-07T05:31:56Z",
"to": "2023-11-07T05:31:56Z",
"totalElapsedSeconds": 123,
"status": "Working",
"tasks": [
{
"type": "ProductionOperation",
"relatedId": "<string>",
"percentage": 123
}
],
"interruption": {
"interruptionId": "<string>",
"name": "<string>",
"planned": true,
"operationId": "<string>"
},
"workDayTemplateName": "<string>"
}
],
"days": [
{
"date": "2023-12-25",
"type": "Working",
"workDayTemplateName": "<string>",
"scheduledSeconds": 123,
"workedInScheduleSeconds": 123,
"workedOutOfScheduleSeconds": 123,
"idleSeconds": 123,
"valuedSeconds": 123,
"earnedSeconds": 123,
"occupancy": 123,
"efficiency": 123
}
],
"operations": [
{
"operationId": "<string>",
"name": "<string>",
"orderId": "<string>",
"orderCode": "<string>",
"skuId": "<string>",
"skuCode": "<string>",
"skuName": "<string>",
"hasStandard": true,
"implausibleValuation": true,
"finished": true,
"employeeSeconds": 123,
"teamSeconds": 123,
"coworkersCount": 123,
"valuedSeconds": 123,
"pendingValuationSeconds": 123,
"unvaluedSeconds": 123,
"earnedSeconds": 123,
"goodQuantity": 123,
"rejectedQuantity": 123,
"efficiency": 123
}
]
}{
"type": "https://api.bold-factory.com/errors/COMMON.QUERY.FILTER_PARSING_FAILED",
"title": "Filter parsing failed",
"status": 400,
"detail": "The filter string could not be parsed or contains invalid column references: CreatedBy column does not exist.",
"instance": "POST /v1/items/families/search",
"code": "COMMON.QUERY.FILTER_PARSING_FAILED"
}{
"type": "https://www.rfc-editor.org/rfc/rfc9110.html#name-401-unauthorized",
"title": "Unauthorized",
"status": 401,
"detail": "You are not authenticated.",
"instance": "GET /v1/items/skus"
}{
"type": "https://api.bold-factory.com/errors/COMMON.AUTH.MISSING_PERMISSIONS",
"title": "Missing permissions",
"status": 403,
"detail": "Missing permissions: Items.Families.Read",
"instance": "GET /v1/maintenance/assets",
"code": "COMMON.AUTH.MISSING_PERMISSIONS"
}{
"type": "https://api.bold-factory.com/errors/COMMON.ENTITY.NOT_FOUND",
"title": "The entity was not found.",
"status": 404,
"detail": "Entity Family (pr_72f13bd8218h9823dfj9) was not found.",
"instance": "DELETE /v1/items/families/pr_72f13bd8218h9823dfj9",
"code": "COMMON.ENTITY.NOT_FOUND"
}{
"type": "https://api.bold-factory.com/errors/COMMON.RATE_LIMIT.EXCEEDED",
"title": "Rate limit exceeded",
"status": 429,
"detail": "The request rate limit for this tenant has been exceeded. Retry after the indicated delay.",
"instance": "GET /v1/admin/tenants/self",
"code": "COMMON.RATE_LIMIT.EXCEEDED",
"parameters": {}
}Employees
Get labor effectiveness metrics for an employee in a timeframe
Requires People.Tasks.Read and Production.Orders.Read permissions
GET
/
v1
/
people
/
employees
/
{employeeReference}
/
laborEffectiveness
Get labor effectiveness metrics for an employee in a timeframe
curl --request GET \
--url https://api.bold-factory.com/v1/people/employees/{employeeReference}/laborEffectiveness \
--header 'Authorization: Bearer <token>'import requests
url = "https://api.bold-factory.com/v1/people/employees/{employeeReference}/laborEffectiveness"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.bold-factory.com/v1/people/employees/{employeeReference}/laborEffectiveness', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.bold-factory.com/v1/people/employees/{employeeReference}/laborEffectiveness",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "GET",
CURLOPT_HTTPHEADER => [
"Authorization: Bearer <token>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.bold-factory.com/v1/people/employees/{employeeReference}/laborEffectiveness"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.get("https://api.bold-factory.com/v1/people/employees/{employeeReference}/laborEffectiveness")
.header("Authorization", "Bearer <token>")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.bold-factory.com/v1/people/employees/{employeeReference}/laborEffectiveness")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Get.new(url)
request["Authorization"] = 'Bearer <token>'
response = http.request(request)
puts response.read_body{
"from": "2023-11-07T05:31:56Z",
"to": "2023-11-07T05:31:56Z",
"employeeId": "<string>",
"employeeName": "<string>",
"timeZoneId": "<string>",
"totals": {
"totalTimeSeconds": 123,
"scheduledSeconds": 123,
"workedInScheduleSeconds": 123,
"workedOutOfScheduleSeconds": 123,
"idleSeconds": 123,
"interruptionIdleSeconds": 123,
"productionSeconds": 123,
"maintenanceSeconds": 123,
"warehouseSeconds": 123,
"valuedSeconds": 123,
"pendingValuationSeconds": 123,
"unvaluedSeconds": 123,
"earnedSeconds": 123,
"implausibleOperationsCount": 123,
"goodQuantity": 123,
"rejectedQuantity": 123,
"occupancy": 123,
"overtimeRatio": 123,
"efficiency": 123,
"standardCoverage": 123,
"pendingValuationRatio": 123,
"quality": 123,
"productivity": 123,
"ole": 123
},
"timeline": [
{
"from": "2023-11-07T05:31:56Z",
"to": "2023-11-07T05:31:56Z",
"totalElapsedSeconds": 123,
"status": "Working",
"tasks": [
{
"type": "ProductionOperation",
"relatedId": "<string>",
"percentage": 123
}
],
"interruption": {
"interruptionId": "<string>",
"name": "<string>",
"planned": true,
"operationId": "<string>"
},
"workDayTemplateName": "<string>"
}
],
"days": [
{
"date": "2023-12-25",
"type": "Working",
"workDayTemplateName": "<string>",
"scheduledSeconds": 123,
"workedInScheduleSeconds": 123,
"workedOutOfScheduleSeconds": 123,
"idleSeconds": 123,
"valuedSeconds": 123,
"earnedSeconds": 123,
"occupancy": 123,
"efficiency": 123
}
],
"operations": [
{
"operationId": "<string>",
"name": "<string>",
"orderId": "<string>",
"orderCode": "<string>",
"skuId": "<string>",
"skuCode": "<string>",
"skuName": "<string>",
"hasStandard": true,
"implausibleValuation": true,
"finished": true,
"employeeSeconds": 123,
"teamSeconds": 123,
"coworkersCount": 123,
"valuedSeconds": 123,
"pendingValuationSeconds": 123,
"unvaluedSeconds": 123,
"earnedSeconds": 123,
"goodQuantity": 123,
"rejectedQuantity": 123,
"efficiency": 123
}
]
}{
"type": "https://api.bold-factory.com/errors/COMMON.QUERY.FILTER_PARSING_FAILED",
"title": "Filter parsing failed",
"status": 400,
"detail": "The filter string could not be parsed or contains invalid column references: CreatedBy column does not exist.",
"instance": "POST /v1/items/families/search",
"code": "COMMON.QUERY.FILTER_PARSING_FAILED"
}{
"type": "https://www.rfc-editor.org/rfc/rfc9110.html#name-401-unauthorized",
"title": "Unauthorized",
"status": 401,
"detail": "You are not authenticated.",
"instance": "GET /v1/items/skus"
}{
"type": "https://api.bold-factory.com/errors/COMMON.AUTH.MISSING_PERMISSIONS",
"title": "Missing permissions",
"status": 403,
"detail": "Missing permissions: Items.Families.Read",
"instance": "GET /v1/maintenance/assets",
"code": "COMMON.AUTH.MISSING_PERMISSIONS"
}{
"type": "https://api.bold-factory.com/errors/COMMON.ENTITY.NOT_FOUND",
"title": "The entity was not found.",
"status": 404,
"detail": "Entity Family (pr_72f13bd8218h9823dfj9) was not found.",
"instance": "DELETE /v1/items/families/pr_72f13bd8218h9823dfj9",
"code": "COMMON.ENTITY.NOT_FOUND"
}{
"type": "https://api.bold-factory.com/errors/COMMON.RATE_LIMIT.EXCEEDED",
"title": "Rate limit exceeded",
"status": 429,
"detail": "The request rate limit for this tenant has been exceeded. Retry after the indicated delay.",
"instance": "GET /v1/admin/tenants/self",
"code": "COMMON.RATE_LIMIT.EXCEEDED",
"parameters": {}
}Authorizations
JWTApiKey
Use a valid JWT token in the Authorization header with the format 'Bearer {token}'
Path Parameters
Response
OK
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes
Show child attributes