Service
Service
List all service-orders for a tenant store. Default sorting order is by serviceOrderUid ascending.
Required permissions: SERVICE_ORDER
Access token recevied after user login with a deviceToken
Reference to a tenant.
^[A-Za-z0-9-_]+Reference to a Store.
^[A-Za-z0-9-_]+Reference to a specific page in a result set.
The number of items per page in a result set.
Defines which field the resource list is sorted by.
| ENUM | Description |
|---|---|
| ASC | Sort in ascending order |
| DESC | Sort in descending order |
Filter by service types
Filter by assigned users
Filter by created-from-stores
Example response
GET /v2/tenants/{tenantUid}/stores/{storeUid}/serviceorders HTTP/1.1
Host: api.flowretail.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
Example response
{
"items": [
{
"serviceOrderUid": "text",
"tenantUid": "text",
"storeUid": "text",
"orderProductLineUid": "text",
"orderUid": "text",
"customerUid": "text",
"createdFromStoreUid": "text",
"assignedUserUid": "text",
"assignedUserDisplayName": "text",
"serviceTypeUid": "text",
"serviceTypeName": "text",
"serviceStatusUid": "text",
"serviceStatusName": "text",
"serviceState": "NOT_STARTED",
"title": "text",
"serviceNumber": "text",
"externalServiceNumber": "text",
"description": "text",
"locationLabel": "text",
"priority": "NONE",
"requiresPriceEstimate": true,
"estimatedPrice": 1,
"maxPrice": 1,
"readyAtEstimate": "2026-01-01T00:00:00.000Z",
"readyAtNeeded": "2026-01-01T00:00:00.000Z",
"publicPageHash": "text",
"warranty": true,
"createdAt": "2026-01-01T00:00:00.000Z",
"createdBy": "text",
"lastModifiedAt": "2026-01-01T00:00:00.000Z",
"lastModifiedBy": "text",
"totals": {
"grandTotal": 1,
"partsTotal": 1,
"workTotal": 1
},
"items": [
{
"serviceOrderItemUid": "text",
"serviceOrderUid": "text",
"warehouseUid": "text",
"tenantUserUid": "text",
"productUid": "text",
"salesOrderUid": "text",
"quantity": 1,
"name": "text",
"sku": "text",
"price": 1,
"costPrice": 1,
"originalPrice": 1,
"totalPrice": 1,
"totalCostPrice": 1,
"serialNumber": "text",
"note": "text",
"tenantUserDisplayName": "text",
"createdAt": "2026-01-01T00:00:00.000Z",
"createdBy": "text",
"lastModifiedAt": "2026-01-01T00:00:00.000Z",
"lastModifiedBy": "text"
}
],
"assets": [
{
"assetUid": "text",
"name": "text",
"description": "text",
"isPublic": true,
"publicUrl": "text",
"mimeType": "text"
}
],
"rmaOrderItemUid": "text",
"rmaOrderUid": "text"
}
],
"paging": {
"pageNumber": 1,
"pageSize": 1,
"totalCount": 1
}
}Create a new service-order.
Required permissions: SERVICE_ORDER
Access token recevied after user login with a deviceToken
Reference to a tenant.
^[A-Za-z0-9-_]+Reference to a Store.
^[A-Za-z0-9-_]+^[A-Za-z0-9-_]*^[A-Za-z0-9-_]+^[A-Za-z0-9-_]*NONEPossible values: ^[A-Za-z0-9-_]*^[A-Za-z0-9-_]*^[A-Za-z0-9-_]+Example response
^[A-Za-z0-9-_]+^[A-Za-z0-9-_]+^[A-Za-z0-9-_]+^[A-Za-z0-9-_]*^[A-Za-z0-9-_]*^[A-Za-z0-9-_]*^[A-Za-z0-9-_]+^[A-Za-z0-9-_]*^[A-Za-z0-9-_]+^[A-Za-z0-9-_]+NONEPossible values: ^[A-Za-z0-9-_]*^[A-Za-z0-9-_]*POST /v2/tenants/{tenantUid}/stores/{storeUid}/serviceorders HTTP/1.1
Host: api.flowretail.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 392
{
"customerUid": "text",
"serviceTypeUid": "text",
"orderProductLineUid": "text",
"title": "text",
"description": "text",
"locationLabel": "text",
"priority": "NONE",
"requiresPriceEstimate": true,
"estimatedPrice": 1,
"maxPrice": 1,
"readyAtEstimate": "2026-01-01T00:00:00.000Z",
"readyAtNeeded": "2026-01-01T00:00:00.000Z",
"assignedUserUid": "text",
"warranty": true,
"rmaOrderItemUid": "text",
"serviceOrderUid": "text"
}Example response
{
"serviceOrderUid": "text",
"tenantUid": "text",
"storeUid": "text",
"orderProductLineUid": "text",
"orderUid": "text",
"customerUid": "text",
"createdFromStoreUid": "text",
"assignedUserUid": "text",
"assignedUserDisplayName": "text",
"serviceTypeUid": "text",
"serviceTypeName": "text",
"serviceStatusUid": "text",
"serviceStatusName": "text",
"serviceState": "NOT_STARTED",
"title": "text",
"serviceNumber": "text",
"externalServiceNumber": "text",
"description": "text",
"locationLabel": "text",
"priority": "NONE",
"requiresPriceEstimate": true,
"estimatedPrice": 1,
"maxPrice": 1,
"readyAtEstimate": "2026-01-01T00:00:00.000Z",
"readyAtNeeded": "2026-01-01T00:00:00.000Z",
"publicPageHash": "text",
"warranty": true,
"createdAt": "2026-01-01T00:00:00.000Z",
"createdBy": "text",
"lastModifiedAt": "2026-01-01T00:00:00.000Z",
"lastModifiedBy": "text",
"totals": {
"grandTotal": 1,
"partsTotal": 1,
"workTotal": 1
},
"items": [
{
"serviceOrderItemUid": "text",
"serviceOrderUid": "text",
"warehouseUid": "text",
"tenantUserUid": "text",
"productUid": "text",
"salesOrderUid": "text",
"quantity": 1,
"name": "text",
"sku": "text",
"price": 1,
"costPrice": 1,
"originalPrice": 1,
"totalPrice": 1,
"totalCostPrice": 1,
"serialNumber": "text",
"note": "text",
"tenantUserDisplayName": "text",
"createdAt": "2026-01-01T00:00:00.000Z",
"createdBy": "text",
"lastModifiedAt": "2026-01-01T00:00:00.000Z",
"lastModifiedBy": "text"
}
],
"assets": [
{
"assetUid": "text",
"name": "text",
"description": "text",
"isPublic": true,
"publicUrl": "text",
"mimeType": "text"
}
],
"rmaOrderItemUid": "text",
"rmaOrderUid": "text"
}Get the data for a given service-order.
Required permissions: SERVICE_ORDER
Access token recevied after user login with a deviceToken
Reference to a tenant.
^[A-Za-z0-9-_]+Reference to a Store.
^[A-Za-z0-9-_]+Reference to a service order
^[A-Za-z0-9-_]+Example response
^[A-Za-z0-9-_]+^[A-Za-z0-9-_]+^[A-Za-z0-9-_]+^[A-Za-z0-9-_]*^[A-Za-z0-9-_]*^[A-Za-z0-9-_]*^[A-Za-z0-9-_]+^[A-Za-z0-9-_]*^[A-Za-z0-9-_]+^[A-Za-z0-9-_]+NONEPossible values: ^[A-Za-z0-9-_]*^[A-Za-z0-9-_]*GET /v2/tenants/{tenantUid}/stores/{storeUid}/serviceorders/{serviceOrderUid} HTTP/1.1
Host: api.flowretail.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
Example response
{
"serviceOrderUid": "text",
"tenantUid": "text",
"storeUid": "text",
"orderProductLineUid": "text",
"orderUid": "text",
"customerUid": "text",
"createdFromStoreUid": "text",
"assignedUserUid": "text",
"assignedUserDisplayName": "text",
"serviceTypeUid": "text",
"serviceTypeName": "text",
"serviceStatusUid": "text",
"serviceStatusName": "text",
"serviceState": "NOT_STARTED",
"title": "text",
"serviceNumber": "text",
"externalServiceNumber": "text",
"description": "text",
"locationLabel": "text",
"priority": "NONE",
"requiresPriceEstimate": true,
"estimatedPrice": 1,
"maxPrice": 1,
"readyAtEstimate": "2026-01-01T00:00:00.000Z",
"readyAtNeeded": "2026-01-01T00:00:00.000Z",
"publicPageHash": "text",
"warranty": true,
"createdAt": "2026-01-01T00:00:00.000Z",
"createdBy": "text",
"lastModifiedAt": "2026-01-01T00:00:00.000Z",
"lastModifiedBy": "text",
"totals": {
"grandTotal": 1,
"partsTotal": 1,
"workTotal": 1
},
"items": [
{
"serviceOrderItemUid": "text",
"serviceOrderUid": "text",
"warehouseUid": "text",
"tenantUserUid": "text",
"productUid": "text",
"salesOrderUid": "text",
"quantity": 1,
"name": "text",
"sku": "text",
"price": 1,
"costPrice": 1,
"originalPrice": 1,
"totalPrice": 1,
"totalCostPrice": 1,
"serialNumber": "text",
"note": "text",
"tenantUserDisplayName": "text",
"createdAt": "2026-01-01T00:00:00.000Z",
"createdBy": "text",
"lastModifiedAt": "2026-01-01T00:00:00.000Z",
"lastModifiedBy": "text"
}
],
"assets": [
{
"assetUid": "text",
"name": "text",
"description": "text",
"isPublic": true,
"publicUrl": "text",
"mimeType": "text"
}
],
"rmaOrderItemUid": "text",
"rmaOrderUid": "text"
}Update data on a given service-order.
Required permissions: SERVICE_ORDER
Access token recevied after user login with a deviceToken
Reference to a tenant.
^[A-Za-z0-9-_]+Reference to a Store.
^[A-Za-z0-9-_]+Reference to a service order
^[A-Za-z0-9-_]+^[A-Za-z0-9-_]*^[A-Za-z0-9-_]+^[A-Za-z0-9-_]*NONEPossible values: ^[A-Za-z0-9-_]*^[A-Za-z0-9-_]*Example response
^[A-Za-z0-9-_]+^[A-Za-z0-9-_]+^[A-Za-z0-9-_]+^[A-Za-z0-9-_]*^[A-Za-z0-9-_]*^[A-Za-z0-9-_]*^[A-Za-z0-9-_]+^[A-Za-z0-9-_]*^[A-Za-z0-9-_]+^[A-Za-z0-9-_]+NONEPossible values: ^[A-Za-z0-9-_]*^[A-Za-z0-9-_]*PUT /v2/tenants/{tenantUid}/stores/{storeUid}/serviceorders/{serviceOrderUid} HTTP/1.1
Host: api.flowretail.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 367
{
"customerUid": "text",
"serviceTypeUid": "text",
"orderProductLineUid": "text",
"title": "text",
"description": "text",
"locationLabel": "text",
"priority": "NONE",
"requiresPriceEstimate": true,
"estimatedPrice": 1,
"maxPrice": 1,
"readyAtEstimate": "2026-01-01T00:00:00.000Z",
"readyAtNeeded": "2026-01-01T00:00:00.000Z",
"assignedUserUid": "text",
"warranty": true,
"rmaOrderItemUid": "text"
}Example response
{
"serviceOrderUid": "text",
"tenantUid": "text",
"storeUid": "text",
"orderProductLineUid": "text",
"orderUid": "text",
"customerUid": "text",
"createdFromStoreUid": "text",
"assignedUserUid": "text",
"assignedUserDisplayName": "text",
"serviceTypeUid": "text",
"serviceTypeName": "text",
"serviceStatusUid": "text",
"serviceStatusName": "text",
"serviceState": "NOT_STARTED",
"title": "text",
"serviceNumber": "text",
"externalServiceNumber": "text",
"description": "text",
"locationLabel": "text",
"priority": "NONE",
"requiresPriceEstimate": true,
"estimatedPrice": 1,
"maxPrice": 1,
"readyAtEstimate": "2026-01-01T00:00:00.000Z",
"readyAtNeeded": "2026-01-01T00:00:00.000Z",
"publicPageHash": "text",
"warranty": true,
"createdAt": "2026-01-01T00:00:00.000Z",
"createdBy": "text",
"lastModifiedAt": "2026-01-01T00:00:00.000Z",
"lastModifiedBy": "text",
"totals": {
"grandTotal": 1,
"partsTotal": 1,
"workTotal": 1
},
"items": [
{
"serviceOrderItemUid": "text",
"serviceOrderUid": "text",
"warehouseUid": "text",
"tenantUserUid": "text",
"productUid": "text",
"salesOrderUid": "text",
"quantity": 1,
"name": "text",
"sku": "text",
"price": 1,
"costPrice": 1,
"originalPrice": 1,
"totalPrice": 1,
"totalCostPrice": 1,
"serialNumber": "text",
"note": "text",
"tenantUserDisplayName": "text",
"createdAt": "2026-01-01T00:00:00.000Z",
"createdBy": "text",
"lastModifiedAt": "2026-01-01T00:00:00.000Z",
"lastModifiedBy": "text"
}
],
"assets": [
{
"assetUid": "text",
"name": "text",
"description": "text",
"isPublic": true,
"publicUrl": "text",
"mimeType": "text"
}
],
"rmaOrderItemUid": "text",
"rmaOrderUid": "text"
}Delete a given service-order.
Required permissions: SERVICE_ORDER
Access token recevied after user login with a deviceToken
Reference to a tenant.
^[A-Za-z0-9-_]+Reference to a Store.
^[A-Za-z0-9-_]+Reference to a service order
^[A-Za-z0-9-_]+No Content
No content
DELETE /v2/tenants/{tenantUid}/stores/{storeUid}/serviceorders/{serviceOrderUid} HTTP/1.1
Host: api.flowretail.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
No Content
No content
Add new service-order item
Add a new service-order item.
Required permissions: SERVICE_ORDER
Access token recevied after user login with a deviceToken
Reference to a tenant.
^[A-Za-z0-9-_]+Reference to a Store.
^[A-Za-z0-9-_]+Reference to a service order
^[A-Za-z0-9-_]+^[A-Za-z0-9-_]+^[A-Za-z0-9-_]+^[A-Za-z0-9-_]*Example response
^[A-Za-z0-9-_]+^[A-Za-z0-9-_]+^[A-Za-z0-9-_]+^[A-Za-z0-9-_]*^[A-Za-z0-9-_]*^[A-Za-z0-9-_]*^[A-Za-z0-9-_]+^[A-Za-z0-9-_]*^[A-Za-z0-9-_]+^[A-Za-z0-9-_]+NONEPossible values: ^[A-Za-z0-9-_]*^[A-Za-z0-9-_]*POST /v2/tenants/{tenantUid}/stores/{storeUid}/serviceorders/{serviceOrderUid}/items HTTP/1.1
Host: api.flowretail.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 131
{
"price": 1,
"quantity": 1,
"serialNumber": "text",
"note": "text",
"productUid": "text",
"serviceOrderItemUid": "text",
"warehouseUid": "text"
}Example response
{
"serviceOrderUid": "text",
"tenantUid": "text",
"storeUid": "text",
"orderProductLineUid": "text",
"orderUid": "text",
"customerUid": "text",
"createdFromStoreUid": "text",
"assignedUserUid": "text",
"assignedUserDisplayName": "text",
"serviceTypeUid": "text",
"serviceTypeName": "text",
"serviceStatusUid": "text",
"serviceStatusName": "text",
"serviceState": "NOT_STARTED",
"title": "text",
"serviceNumber": "text",
"externalServiceNumber": "text",
"description": "text",
"locationLabel": "text",
"priority": "NONE",
"requiresPriceEstimate": true,
"estimatedPrice": 1,
"maxPrice": 1,
"readyAtEstimate": "2026-01-01T00:00:00.000Z",
"readyAtNeeded": "2026-01-01T00:00:00.000Z",
"publicPageHash": "text",
"warranty": true,
"createdAt": "2026-01-01T00:00:00.000Z",
"createdBy": "text",
"lastModifiedAt": "2026-01-01T00:00:00.000Z",
"lastModifiedBy": "text",
"totals": {
"grandTotal": 1,
"partsTotal": 1,
"workTotal": 1
},
"items": [
{
"serviceOrderItemUid": "text",
"serviceOrderUid": "text",
"warehouseUid": "text",
"tenantUserUid": "text",
"productUid": "text",
"salesOrderUid": "text",
"quantity": 1,
"name": "text",
"sku": "text",
"price": 1,
"costPrice": 1,
"originalPrice": 1,
"totalPrice": 1,
"totalCostPrice": 1,
"serialNumber": "text",
"note": "text",
"tenantUserDisplayName": "text",
"createdAt": "2026-01-01T00:00:00.000Z",
"createdBy": "text",
"lastModifiedAt": "2026-01-01T00:00:00.000Z",
"lastModifiedBy": "text"
}
],
"assets": [
{
"assetUid": "text",
"name": "text",
"description": "text",
"isPublic": true,
"publicUrl": "text",
"mimeType": "text"
}
],
"rmaOrderItemUid": "text",
"rmaOrderUid": "text"
}Update service-order item
Update a service-order item.
Required permissions: SERVICE_ORDER
Access token recevied after user login with a deviceToken
Reference to a tenant.
^[A-Za-z0-9-_]+Reference to a Store.
^[A-Za-z0-9-_]+Reference to a service order
^[A-Za-z0-9-_]+Reference to a service order item
^[A-Za-z0-9-_]+Example response
^[A-Za-z0-9-_]+^[A-Za-z0-9-_]+^[A-Za-z0-9-_]+^[A-Za-z0-9-_]*^[A-Za-z0-9-_]*^[A-Za-z0-9-_]*^[A-Za-z0-9-_]+^[A-Za-z0-9-_]*^[A-Za-z0-9-_]+^[A-Za-z0-9-_]+NONEPossible values: ^[A-Za-z0-9-_]*^[A-Za-z0-9-_]*PUT /v2/tenants/{tenantUid}/stores/{storeUid}/serviceorders/{serviceOrderUid}/items/{serviceOrderItemUid} HTTP/1.1
Host: api.flowretail.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 60
{
"price": 1,
"quantity": 1,
"serialNumber": "text",
"note": "text"
}Example response
{
"serviceOrderUid": "text",
"tenantUid": "text",
"storeUid": "text",
"orderProductLineUid": "text",
"orderUid": "text",
"customerUid": "text",
"createdFromStoreUid": "text",
"assignedUserUid": "text",
"assignedUserDisplayName": "text",
"serviceTypeUid": "text",
"serviceTypeName": "text",
"serviceStatusUid": "text",
"serviceStatusName": "text",
"serviceState": "NOT_STARTED",
"title": "text",
"serviceNumber": "text",
"externalServiceNumber": "text",
"description": "text",
"locationLabel": "text",
"priority": "NONE",
"requiresPriceEstimate": true,
"estimatedPrice": 1,
"maxPrice": 1,
"readyAtEstimate": "2026-01-01T00:00:00.000Z",
"readyAtNeeded": "2026-01-01T00:00:00.000Z",
"publicPageHash": "text",
"warranty": true,
"createdAt": "2026-01-01T00:00:00.000Z",
"createdBy": "text",
"lastModifiedAt": "2026-01-01T00:00:00.000Z",
"lastModifiedBy": "text",
"totals": {
"grandTotal": 1,
"partsTotal": 1,
"workTotal": 1
},
"items": [
{
"serviceOrderItemUid": "text",
"serviceOrderUid": "text",
"warehouseUid": "text",
"tenantUserUid": "text",
"productUid": "text",
"salesOrderUid": "text",
"quantity": 1,
"name": "text",
"sku": "text",
"price": 1,
"costPrice": 1,
"originalPrice": 1,
"totalPrice": 1,
"totalCostPrice": 1,
"serialNumber": "text",
"note": "text",
"tenantUserDisplayName": "text",
"createdAt": "2026-01-01T00:00:00.000Z",
"createdBy": "text",
"lastModifiedAt": "2026-01-01T00:00:00.000Z",
"lastModifiedBy": "text"
}
],
"assets": [
{
"assetUid": "text",
"name": "text",
"description": "text",
"isPublic": true,
"publicUrl": "text",
"mimeType": "text"
}
],
"rmaOrderItemUid": "text",
"rmaOrderUid": "text"
}Delete service-order item
Delete a service-order item.
Required permissions: SERVICE_ORDER
Access token recevied after user login with a deviceToken
Reference to a tenant.
^[A-Za-z0-9-_]+Reference to a Store.
^[A-Za-z0-9-_]+Reference to a service order
^[A-Za-z0-9-_]+Reference to a service order item
^[A-Za-z0-9-_]+No Content
No content
DELETE /v2/tenants/{tenantUid}/stores/{storeUid}/serviceorders/{serviceOrderUid}/items/{serviceOrderItemUid} HTTP/1.1
Host: api.flowretail.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
No Content
No content
List service-order events
List all events for a service order.
Required permissions: SERVICE_ORDER
Access token recevied after user login with a deviceToken
Reference to a tenant.
^[A-Za-z0-9-_]+Reference to a Store.
^[A-Za-z0-9-_]+Reference to a service order
^[A-Za-z0-9-_]+Reference to a specific page in a result set.
The number of items per page in a result set.
Defines which field the resource list is sorted by.
| ENUM | Description |
|---|---|
| ASC | Sort in ascending order |
| DESC | Sort in descending order |
Example response
GET /v2/tenants/{tenantUid}/stores/{storeUid}/serviceorders/{serviceOrderUid}/events HTTP/1.1
Host: api.flowretail.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
Example response
{
"items": [
{
"serviceEventUid": "text",
"serviceOrderUid": "text",
"serviceStatusUid": "text",
"tenantUserUid": "text",
"tenantUserDisplayName": "text",
"note": "text",
"visibility": "INTERNAL",
"createdAt": "2026-01-01T00:00:00.000Z",
"createdBy": "text",
"lastModifiedAt": "2026-01-01T00:00:00.000Z",
"lastModifiedBy": "text",
"notifications": [
{
"notificationUid": "text",
"type": "EMAIL",
"state": "NOT_STARTED",
"recipient": "text"
}
]
}
],
"paging": {
"pageNumber": 1,
"pageSize": 1,
"totalCount": 1
}
}Create new service-order event
Create a new service-order event.
Required permissions: SERVICE_ORDER
Access token recevied after user login with a deviceToken
Reference to a tenant.
^[A-Za-z0-9-_]+Reference to a Store.
^[A-Za-z0-9-_]+Reference to a service order
^[A-Za-z0-9-_]+^[A-Za-z0-9-_]+^[A-Za-z0-9-_]+Example response
^[A-Za-z0-9-_]+^[A-Za-z0-9-_]+^[A-Za-z0-9-_]+^[A-Za-z0-9-_]+POST /v2/tenants/{tenantUid}/stores/{storeUid}/serviceorders/{serviceOrderUid}/events HTTP/1.1
Host: api.flowretail.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 116
{
"note": "text",
"serviceStatusUid": "text",
"visibility": "INTERNAL",
"notifications": [
"EMAIL"
],
"serviceEventUid": "text"
}Example response
{
"serviceEventUid": "text",
"serviceOrderUid": "text",
"serviceStatusUid": "text",
"tenantUserUid": "text",
"tenantUserDisplayName": "text",
"note": "text",
"visibility": "INTERNAL",
"createdAt": "2026-01-01T00:00:00.000Z",
"createdBy": "text",
"lastModifiedAt": "2026-01-01T00:00:00.000Z",
"lastModifiedBy": "text",
"notifications": [
{
"notificationUid": "text",
"type": "EMAIL",
"state": "NOT_STARTED",
"recipient": "text"
}
]
}Get service-order event
Get a service-order event.
Required permissions: SERVICE_ORDER
Access token recevied after user login with a deviceToken
Reference to a tenant.
^[A-Za-z0-9-_]+Reference to a Store.
^[A-Za-z0-9-_]+Reference to a service order
^[A-Za-z0-9-_]+Reference to a service event
^[A-Za-z0-9-_]+Example response
^[A-Za-z0-9-_]+^[A-Za-z0-9-_]+^[A-Za-z0-9-_]+^[A-Za-z0-9-_]+GET /v2/tenants/{tenantUid}/stores/{storeUid}/serviceorders/{serviceOrderUid}/events/{serviceEventUid} HTTP/1.1
Host: api.flowretail.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
Example response
{
"serviceEventUid": "text",
"serviceOrderUid": "text",
"serviceStatusUid": "text",
"tenantUserUid": "text",
"tenantUserDisplayName": "text",
"note": "text",
"visibility": "INTERNAL",
"createdAt": "2026-01-01T00:00:00.000Z",
"createdBy": "text",
"lastModifiedAt": "2026-01-01T00:00:00.000Z",
"lastModifiedBy": "text",
"notifications": [
{
"notificationUid": "text",
"type": "EMAIL",
"state": "NOT_STARTED",
"recipient": "text"
}
]
}Update a service-order event
Update a service-order event.
Required permissions: SERVICE_ORDER
Access token recevied after user login with a deviceToken
Reference to a tenant.
^[A-Za-z0-9-_]+Reference to a Store.
^[A-Za-z0-9-_]+Reference to a service order
^[A-Za-z0-9-_]+Reference to a service event
^[A-Za-z0-9-_]+^[A-Za-z0-9-_]+Example response
^[A-Za-z0-9-_]+^[A-Za-z0-9-_]+^[A-Za-z0-9-_]+^[A-Za-z0-9-_]+PUT /v2/tenants/{tenantUid}/stores/{storeUid}/serviceorders/{serviceOrderUid}/events/{serviceEventUid} HTTP/1.1
Host: api.flowretail.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 91
{
"note": "text",
"serviceStatusUid": "text",
"visibility": "INTERNAL",
"notifications": [
"EMAIL"
]
}Example response
{
"serviceEventUid": "text",
"serviceOrderUid": "text",
"serviceStatusUid": "text",
"tenantUserUid": "text",
"tenantUserDisplayName": "text",
"note": "text",
"visibility": "INTERNAL",
"createdAt": "2026-01-01T00:00:00.000Z",
"createdBy": "text",
"lastModifiedAt": "2026-01-01T00:00:00.000Z",
"lastModifiedBy": "text",
"notifications": [
{
"notificationUid": "text",
"type": "EMAIL",
"state": "NOT_STARTED",
"recipient": "text"
}
]
}Delete service-order event
Delete a service-order event.
Required permissions: SERVICE_ORDER
Access token recevied after user login with a deviceToken
Reference to a tenant.
^[A-Za-z0-9-_]+Reference to a Store.
^[A-Za-z0-9-_]+Reference to a service order
^[A-Za-z0-9-_]+Reference to a service event
^[A-Za-z0-9-_]+No Content
No content
DELETE /v2/tenants/{tenantUid}/stores/{storeUid}/serviceorders/{serviceOrderUid}/events/{serviceEventUid} HTTP/1.1
Host: api.flowretail.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
No Content
No content
List hours for a service-order.
Required permissions: SERVICE_ORDER
Access token recevied after user login with a deviceToken
Reference to a tenant.
^[A-Za-z0-9-_]+Reference to a Store.
^[A-Za-z0-9-_]+Reference to a service order
^[A-Za-z0-9-_]+Reference to a specific page in a result set.
The number of items per page in a result set.
Defines which field the resource list is sorted by.
| ENUM | Description |
|---|---|
| ASC | Sort in ascending order |
| DESC | Sort in descending order |
Example response
GET /v2/tenants/{tenantUid}/stores/{storeUid}/serviceorders/{serviceOrderUid}/hours HTTP/1.1
Host: api.flowretail.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
Example response
{
"items": [
{
"serviceHoursUid": "text",
"serviceOrderUid": "text",
"tenantUserUid": "text",
"note": "text",
"serviceDate": "2026-01-01T00:00:00.000Z",
"usedMinutes": 1,
"billedMinutes": 1,
"hourPrice": 1,
"totalPrice": 1,
"tenantUserDisplayName": "text",
"createdAt": "2026-01-01T00:00:00.000Z",
"createdBy": "text",
"lastModifiedAt": "2026-01-01T00:00:00.000Z",
"lastModifiedBy": "text",
"hourlyRateUid": "text",
"salesOrderUid": "text"
}
],
"paging": {
"pageNumber": 1,
"pageSize": 1,
"totalCount": 1
}
}Create new service hours entry
Create new hours entry for a service-order.
Required permissions: SERVICE_ORDER
Access token recevied after user login with a deviceToken
Reference to a tenant.
^[A-Za-z0-9-_]+Reference to a Store.
^[A-Za-z0-9-_]+Reference to a service order
^[A-Za-z0-9-_]+^[A-Za-z0-9-_]+^[A-Za-z0-9-_]+Example response
^[A-Za-z0-9-_]+^[A-Za-z0-9-_]+^[A-Za-z0-9-_]+^[A-Za-z0-9-_]+^[A-Za-z0-9-_]+POST /v2/tenants/{tenantUid}/stores/{storeUid}/serviceorders/{serviceOrderUid}/hours HTTP/1.1
Host: api.flowretail.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 138
{
"serviceDate": "2026-01-01T00:00:00.000Z",
"usedMinutes": 1,
"note": "text",
"billedMinutes": 1,
"hourlyRateUid": "text",
"serviceHoursUid": "text"
}Example response
{
"serviceHoursUid": "text",
"serviceOrderUid": "text",
"tenantUserUid": "text",
"note": "text",
"serviceDate": "2026-01-01T00:00:00.000Z",
"usedMinutes": 1,
"billedMinutes": 1,
"hourPrice": 1,
"totalPrice": 1,
"tenantUserDisplayName": "text",
"createdAt": "2026-01-01T00:00:00.000Z",
"createdBy": "text",
"lastModifiedAt": "2026-01-01T00:00:00.000Z",
"lastModifiedBy": "text",
"hourlyRateUid": "text",
"salesOrderUid": "text"
}Get service hours entry
Get a service hours entry
Access token recevied after user login with a deviceToken
Reference to a tenant.
^[A-Za-z0-9-_]+Reference to a Store.
^[A-Za-z0-9-_]+Reference to a service order
^[A-Za-z0-9-_]+Reference to a service hours entry
^[A-Za-z0-9-_]+Example response
^[A-Za-z0-9-_]+^[A-Za-z0-9-_]+^[A-Za-z0-9-_]+^[A-Za-z0-9-_]+^[A-Za-z0-9-_]+GET /v2/tenants/{tenantUid}/stores/{storeUid}/serviceorders/{serviceOrderUid}/hours/{serviceHoursUid} HTTP/1.1
Host: api.flowretail.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
Example response
{
"serviceHoursUid": "text",
"serviceOrderUid": "text",
"tenantUserUid": "text",
"note": "text",
"serviceDate": "2026-01-01T00:00:00.000Z",
"usedMinutes": 1,
"billedMinutes": 1,
"hourPrice": 1,
"totalPrice": 1,
"tenantUserDisplayName": "text",
"createdAt": "2026-01-01T00:00:00.000Z",
"createdBy": "text",
"lastModifiedAt": "2026-01-01T00:00:00.000Z",
"lastModifiedBy": "text",
"hourlyRateUid": "text",
"salesOrderUid": "text"
}Update service hours entry
Update a service hours entry.
Required permissions: SERVICE_ORDER
Access token recevied after user login with a deviceToken
Reference to a tenant.
^[A-Za-z0-9-_]+Reference to a Store.
^[A-Za-z0-9-_]+Reference to a service order
^[A-Za-z0-9-_]+Reference to a service hours entry
^[A-Za-z0-9-_]+^[A-Za-z0-9-_]*Example response
^[A-Za-z0-9-_]+^[A-Za-z0-9-_]+^[A-Za-z0-9-_]+^[A-Za-z0-9-_]+^[A-Za-z0-9-_]+PUT /v2/tenants/{tenantUid}/stores/{storeUid}/serviceorders/{serviceOrderUid}/hours/{serviceHoursUid} HTTP/1.1
Host: api.flowretail.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 113
{
"serviceDate": "2026-01-01T00:00:00.000Z",
"usedMinutes": 1,
"note": "text",
"billedMinutes": 1,
"hourlyRateUid": "text"
}Example response
{
"serviceHoursUid": "text",
"serviceOrderUid": "text",
"tenantUserUid": "text",
"note": "text",
"serviceDate": "2026-01-01T00:00:00.000Z",
"usedMinutes": 1,
"billedMinutes": 1,
"hourPrice": 1,
"totalPrice": 1,
"tenantUserDisplayName": "text",
"createdAt": "2026-01-01T00:00:00.000Z",
"createdBy": "text",
"lastModifiedAt": "2026-01-01T00:00:00.000Z",
"lastModifiedBy": "text",
"hourlyRateUid": "text",
"salesOrderUid": "text"
}Delete service hours entry
Delete a service hours entry.
Required permissions: SERVICE_ORDER
Access token recevied after user login with a deviceToken
Reference to a tenant.
^[A-Za-z0-9-_]+Reference to a Store.
^[A-Za-z0-9-_]+Reference to a service order
^[A-Za-z0-9-_]+Reference to a service hours entry
^[A-Za-z0-9-_]+No Content
No content
DELETE /v2/tenants/{tenantUid}/stores/{storeUid}/serviceorders/{serviceOrderUid}/hours/{serviceHoursUid} HTTP/1.1
Host: api.flowretail.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
No Content
No content
List notifications for a service-order
List notifications for a service-order
Required permissions: SERVICE_ORDER
Access token recevied after user login with a deviceToken
Reference to a tenant.
^[A-Za-z0-9-_]+Reference to a Store.
^[A-Za-z0-9-_]+Reference to a service order
^[A-Za-z0-9-_]+Reference to a specific page in a result set.
The number of items per page in a result set.
Defines which field the resource list is sorted by.
| ENUM | Description |
|---|---|
| ASC | Sort in ascending order |
| DESC | Sort in descending order |
Example response
GET /v2/tenants/{tenantUid}/stores/{storeUid}/serviceorders/{serviceOrderUid}/notifications HTTP/1.1
Host: api.flowretail.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
Example response
{
"items": [
{
"messageType": "EMAIL",
"recipient": "text",
"message": "text",
"subject": "text",
"state": "NOT_STARTED",
"errorText": "text",
"notificationUid": "text",
"customerUid": "text",
"orderUid": "text",
"serviceOrderUid": "text",
"serviceEventUid": "text",
"tenantUserUid": "text",
"supplierUid": "text",
"receivementUid": "text",
"purchaseOrderUid": "text",
"createdBy": "text",
"createdAt": "2026-01-01T00:00:00.000Z",
"lastModifiedBy": "text",
"lastModifiedAt": "2026-01-01T00:00:00.000Z"
}
],
"paging": {
"pageNumber": 1,
"pageSize": 1,
"totalCount": 1
}
}List service types.
Required permissions: SERVICE_ORDER
Access token recevied after user login with a deviceToken
Reference to a tenant.
^[A-Za-z0-9-_]+Reference to a specific page in a result set.
The number of items per page in a result set.
Defines which field the resource list is sorted by.
| ENUM | Description |
|---|---|
| ASC | Sort in ascending order |
| DESC | Sort in descending order |
Example response
GET /v2/tenants/{tenantUid}/serviceorders/types HTTP/1.1
Host: api.flowretail.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
Example response
{
"items": [
{
"serviceTypeUid": "text",
"tenantUid": "text",
"serviceStatuses": [
{
"serviceStatusUid": "text",
"serviceStatusName": "text",
"position": 1,
"state": "NOT_STARTED"
}
],
"name": "text",
"deprecated": true
}
],
"paging": {
"pageNumber": 1,
"pageSize": 1,
"totalCount": 1
}
}Create a new service type.
Required permissions: SERVICE_ORDER
Access token recevied after user login with a deviceToken
Reference to a tenant.
^[A-Za-z0-9-_]+^[A-Za-z0-9-_]+Example response
^[A-Za-z0-9-_]+^[A-Za-z0-9-_]+POST /v2/tenants/{tenantUid}/serviceorders/types HTTP/1.1
Host: api.flowretail.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 118
{
"name": "text",
"serviceStatuses": [
{
"serviceStatusUid": "text",
"position": 1
}
],
"deprecated": true,
"serviceTypeUid": "text"
}Example response
{
"serviceTypeUid": "text",
"tenantUid": "text",
"serviceStatuses": [
{
"serviceStatusUid": "text",
"serviceStatusName": "text",
"position": 1,
"state": "NOT_STARTED"
}
],
"name": "text",
"deprecated": true
}Get a service type by ID.
Required permissions: SERVICE_ORDER
Access token recevied after user login with a deviceToken
Reference to a tenant.
^[A-Za-z0-9-_]+Reference to a service type
^[A-Za-z0-9-_]+Example response
^[A-Za-z0-9-_]+^[A-Za-z0-9-_]+GET /v2/tenants/{tenantUid}/serviceorders/types/{serviceTypeUid} HTTP/1.1
Host: api.flowretail.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
Example response
{
"serviceTypeUid": "text",
"tenantUid": "text",
"serviceStatuses": [
{
"serviceStatusUid": "text",
"serviceStatusName": "text",
"position": 1,
"state": "NOT_STARTED"
}
],
"name": "text",
"deprecated": true
}Update a service type.
Required permissions: SERVICE_ORDER
Access token recevied after user login with a deviceToken
Reference to a tenant.
^[A-Za-z0-9-_]+Reference to a service type
^[A-Za-z0-9-_]+Example response
^[A-Za-z0-9-_]+^[A-Za-z0-9-_]+PUT /v2/tenants/{tenantUid}/serviceorders/types/{serviceTypeUid} HTTP/1.1
Host: api.flowretail.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 94
{
"name": "text",
"serviceStatuses": [
{
"serviceStatusUid": "text",
"position": 1
}
],
"deprecated": true
}Example response
{
"serviceTypeUid": "text",
"tenantUid": "text",
"serviceStatuses": [
{
"serviceStatusUid": "text",
"serviceStatusName": "text",
"position": 1,
"state": "NOT_STARTED"
}
],
"name": "text",
"deprecated": true
}Delete a service type.
Required permissions: SERVICE_ORDER
Access token recevied after user login with a deviceToken
Reference to a tenant.
^[A-Za-z0-9-_]+Reference to a service type
^[A-Za-z0-9-_]+No Content
No content
DELETE /v2/tenants/{tenantUid}/serviceorders/types/{serviceTypeUid} HTTP/1.1
Host: api.flowretail.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
No Content
No content
Get a list of statuses for a service order.
Required permissions: SERVICE_ORDER
Access token recevied after user login with a deviceToken
Reference to a tenant.
^[A-Za-z0-9-_]+Reference to a specific page in a result set.
The number of items per page in a result set.
Defines which field the resource list is sorted by.
| ENUM | Description |
|---|---|
| ASC | Sort in ascending order |
| DESC | Sort in descending order |
Example response
GET /v2/tenants/{tenantUid}/serviceorders/statuses HTTP/1.1
Host: api.flowretail.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
Example response
{
"items": [
{
"serviceStatusUid": "text",
"tenantUid": "text",
"name": "text",
"state": "NOT_STARTED",
"deprecated": false
}
],
"paging": {
"pageNumber": 1,
"pageSize": 1,
"totalCount": 1
}
}Create a new service status. Set position to reflect which step in the workflow this status will be.
Required permissions: SERVICE_ORDER
Access token recevied after user login with a deviceToken
Reference to a tenant.
^[A-Za-z0-9-_]+^[A-Za-z0-9-_]+Example response
^[A-Za-z0-9-_]+^[A-Za-z0-9-_]+falsePOST /v2/tenants/{tenantUid}/serviceorders/statuses HTTP/1.1
Host: api.flowretail.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 81
{
"name": "text",
"state": "NOT_STARTED",
"deprecated": true,
"serviceStatusUid": "text"
}Example response
{
"serviceStatusUid": "text",
"tenantUid": "text",
"name": "text",
"state": "NOT_STARTED",
"deprecated": false
}Get a service status by ID.
Required permissions: SERVICE_ORDER
Access token recevied after user login with a deviceToken
Reference to a tenant.
^[A-Za-z0-9-_]+Reference to a service status
^[A-Za-z0-9-_]+Example response
^[A-Za-z0-9-_]+^[A-Za-z0-9-_]+falseGET /v2/tenants/{tenantUid}/serviceorders/statuses/{serviceStatusUid} HTTP/1.1
Host: api.flowretail.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
Example response
{
"serviceStatusUid": "text",
"tenantUid": "text",
"name": "text",
"state": "NOT_STARTED",
"deprecated": false
}Update a given service status. Set position to reflect which step in the workflow this status is.
Required permissions: SERVICE_ORDER
Access token recevied after user login with a deviceToken
Reference to a tenant.
^[A-Za-z0-9-_]+Reference to a service status
^[A-Za-z0-9-_]+Example response
^[A-Za-z0-9-_]+^[A-Za-z0-9-_]+falsePUT /v2/tenants/{tenantUid}/serviceorders/statuses/{serviceStatusUid} HTTP/1.1
Host: api.flowretail.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 55
{
"name": "text",
"state": "NOT_STARTED",
"deprecated": true
}Example response
{
"serviceStatusUid": "text",
"tenantUid": "text",
"name": "text",
"state": "NOT_STARTED",
"deprecated": false
}Delete a given service status.
Required permissions: SERVICE_ORDER
Access token recevied after user login with a deviceToken
Reference to a tenant.
^[A-Za-z0-9-_]+Reference to a service status
^[A-Za-z0-9-_]+No Content
No content
DELETE /v2/tenants/{tenantUid}/serviceorders/statuses/{serviceStatusUid} HTTP/1.1
Host: api.flowretail.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
No Content
No content
Get service order by hash
Get a service order by the public page hash.
Required permissions: SERVICE_ORDER
Access token recevied after user login with a deviceToken
Reference to a tenant.
^[A-Za-z0-9-_]+Reference to a Store.
^[A-Za-z0-9-_]+Encrypted reference to a service order
Example response
^[A-Za-z0-9-_]+^[A-Za-z0-9-_]+^[A-Za-z0-9-_]+^[A-Za-z0-9-_]*^[A-Za-z0-9-_]*^[A-Za-z0-9-_]*^[A-Za-z0-9-_]+^[A-Za-z0-9-_]*^[A-Za-z0-9-_]+^[A-Za-z0-9-_]+NONEPossible values: ^[A-Za-z0-9-_]*^[A-Za-z0-9-_]*GET /v2/tenants/{tenantUid}/stores/{storeUid}/serviceorders/pages/{serviceOrderHash} HTTP/1.1
Host: api.flowretail.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
Example response
{
"serviceOrderUid": "text",
"tenantUid": "text",
"storeUid": "text",
"orderProductLineUid": "text",
"orderUid": "text",
"customerUid": "text",
"createdFromStoreUid": "text",
"assignedUserUid": "text",
"assignedUserDisplayName": "text",
"serviceTypeUid": "text",
"serviceTypeName": "text",
"serviceStatusUid": "text",
"serviceStatusName": "text",
"serviceState": "NOT_STARTED",
"title": "text",
"serviceNumber": "text",
"externalServiceNumber": "text",
"description": "text",
"locationLabel": "text",
"priority": "NONE",
"requiresPriceEstimate": true,
"estimatedPrice": 1,
"maxPrice": 1,
"readyAtEstimate": "2026-01-01T00:00:00.000Z",
"readyAtNeeded": "2026-01-01T00:00:00.000Z",
"publicPageHash": "text",
"warranty": true,
"createdAt": "2026-01-01T00:00:00.000Z",
"createdBy": "text",
"lastModifiedAt": "2026-01-01T00:00:00.000Z",
"lastModifiedBy": "text",
"totals": {
"grandTotal": 1,
"partsTotal": 1,
"workTotal": 1
},
"items": [
{
"serviceOrderItemUid": "text",
"serviceOrderUid": "text",
"warehouseUid": "text",
"tenantUserUid": "text",
"productUid": "text",
"salesOrderUid": "text",
"quantity": 1,
"name": "text",
"sku": "text",
"price": 1,
"costPrice": 1,
"originalPrice": 1,
"totalPrice": 1,
"totalCostPrice": 1,
"serialNumber": "text",
"note": "text",
"tenantUserDisplayName": "text",
"createdAt": "2026-01-01T00:00:00.000Z",
"createdBy": "text",
"lastModifiedAt": "2026-01-01T00:00:00.000Z",
"lastModifiedBy": "text"
}
],
"assets": [
{
"assetUid": "text",
"name": "text",
"description": "text",
"isPublic": true,
"publicUrl": "text",
"mimeType": "text"
}
],
"rmaOrderItemUid": "text",
"rmaOrderUid": "text"
}List sales orders for a service-order
List sales orders for a service-order.
Required permissions: SERVICE_ORDER
Access token recevied after user login with a deviceToken
Reference to a tenant.
^[A-Za-z0-9-_]+Reference to a Store.
^[A-Za-z0-9-_]+Reference to a service order
^[A-Za-z0-9-_]+Reference to a specific page in a result set.
The number of items per page in a result set.
Example response
GET /v2/tenants/{tenantUid}/stores/{storeUid}/serviceorders/{serviceOrderUid}/orders HTTP/1.1
Host: api.flowretail.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
Example response
{
"items": [
{
"createdAt": "2026-01-01T00:00:00.000Z",
"customerAddress": {
"address": "text",
"city": "text",
"companyName": "text",
"countryCode": "text",
"email": "text",
"firstname": "text",
"lastname": "text",
"mobile": "text",
"postalCode": "text",
"vatNumber": "text",
"displayName": "text"
},
"customerUid": "text",
"customerContact": {
"customerContactUid": "text",
"firstname": "text",
"lastname": "text",
"email": "text",
"mobile": "text",
"displayName": "text"
},
"deliveryState": "NOT_STARTED",
"externalOrderNumber": "text",
"externalVoucherNumber": "text",
"invoiceAddress": {
"address": "text",
"city": "text",
"companyName": "text",
"countryCode": "text",
"email": "text",
"mobile": "text",
"firstname": "text",
"lastname": "text",
"postalCode": "text",
"displayName": "text",
"customerAddressUid": "text"
},
"items": [
{
"actions": [
{
"comment": "text",
"createdAt": "2026-01-01T00:00:00.000Z",
"createdBy": "text",
"handlingActionUid": "text",
"handlingActionName": "text",
"handlingDescription": "text",
"handlingUid": "text",
"handlingName": "text",
"lastModifiedAt": "2026-01-01T00:00:00.000Z",
"lastModifiedBy": "text",
"orderHandlingActionUid": "text"
}
],
"allowedActions": [
"QUANTITY_SOLD"
],
"createdAt": "2026-01-01T00:00:00.000Z",
"discountReasonCode": "text",
"externalId": "text",
"itemCost": 1,
"itemDiscountAmount": 1,
"itemDiscountPercentage": 1,
"itemGrossProfitAmount": 1,
"itemGrossProfitPercentage": 1,
"itemPrice": 1,
"itemVatAmount": 1,
"lastModifiedAt": "2026-01-01T00:00:00.000Z",
"ledgerNumber": "text",
"name": "text",
"note": "text",
"orderItemUid": "text",
"orderLinks": [
{
"orderUid": "text",
"orderItemUid": "text",
"orderNumber": "text",
"storeUid": "text",
"type": "CREDIT"
}
],
"originalItemPrice": 1,
"productUid": "text",
"productType": "STOCK",
"properties": [
{
"uid": "text",
"key": "text",
"value": "text"
}
],
"quantityCredited": 1,
"quantityDelivered": 1,
"quantityOrdered": 1,
"quantityReserved": 1,
"returnReasonCode": "text",
"serialnumber": "text",
"sku": "text",
"sortOrder": 1,
"tenantUserDisplayName": "text",
"tenantUserUid": "text",
"totalCost": 1,
"totalDiscountAmount": 1,
"totalGrossProfitAmount": 1,
"totalPrice": 1,
"totalVatAmount": 1,
"vatCodeUid": "text",
"warehouseUid": "text",
"warehouseName": "text",
"internalInfo": "text",
"productProperties": [
{
"productPropertyUid": "text",
"propertyName": "text",
"propertyOptionName": "text",
"propertyType": "TEXT",
"propertyText": "text",
"propertyUid": "text",
"propertyOptionUid": "text",
"required": true
}
],
"coverImage": {
"productMediaUid": "text",
"mainUrl": "text",
"thumbnailUrl": "text"
},
"deliveryUid": "text",
"compensationReasonCode": "text",
"orderReceiptUid": "text",
"allowDelivery": "YES",
"allowDeliveryFromDate": "2026-01-01T00:00:00.000Z",
"reservationType": "NONE",
"reservationDetails": {
"warehouse": {
"warehouseName": "text"
},
"purchaseOrder": {
"purchaseOrderUid": "text",
"purchaseOrderItemUid": "text",
"expectedDeliveryDate": "2026-01-01T00:00:00.000Z",
"purchaseOrderNumber": "text",
"quantityOrdered": 1,
"externalId": "text"
},
"receivement": {
"receivementUid": "text",
"receivementItemUid": "text",
"expectedArrival": "2026-01-01T00:00:00.000Z",
"expectedDispatch": "2026-01-01T00:00:00.000Z",
"quantity": 1,
"supplierOrderReference": "text",
"receivedAt": "2026-01-01T00:00:00.000Z"
}
},
"gtins": [
{
"gtin": "text",
"primary": true,
"type": "text"
}
]
}
],
"lastModifiedAt": "2026-01-01T00:00:00.000Z",
"note": "text",
"internalNote": "text",
"orderUid": "text",
"orderNumber": "text",
"orderDate": "2026-01-01T00:00:00.000Z",
"orderState": "OPEN",
"orderTotals": {
"costTotal": 1,
"grandTotal": 1,
"grossProfitAmount": 1,
"grossProfitPercentage": 1,
"specifiedVat": [
{
"vatAmount": 1,
"vatDescription": "text",
"vatRate": 1
}
],
"subtotal": 1,
"totalDiscount": 1,
"totalVat": 1
},
"orderhandlingState": "NOT_STARTED",
"orderhandlings": [
{
"active": true,
"createdAt": "2026-01-01T00:00:00.000Z",
"createdBy": "text",
"description": "text",
"handlingUid": "text",
"lastModifiedAt": "2026-01-01T00:00:00.000Z",
"lastModifiedBy": "text",
"name": "text",
"orderHandlingUid": "text",
"state": "NOT_STARTED"
}
],
"settleState": "NOT_STARTED",
"settledAt": "2026-01-01T00:00:00.000Z",
"settlementTotals": {
"change": 1,
"remaining": 1,
"remainingRounded": 1,
"totals": 1,
"remainingPrePayment": 1,
"remainingAuthorizedAmount": 1
},
"settlements": [
{
"amount": 1,
"createdAt": "2026-01-01T00:00:00.000Z",
"displayMessages": [
{
"key": "text",
"message": "text",
"timestamp": "2026-01-01T00:00:00.000Z"
}
],
"externalId": "text",
"externalPaymentReference": "text",
"idMethod": "NO_CVM_RULE_PERFORMED",
"lastModifiedAt": "2026-01-01T00:00:00.000Z",
"ledgerNumber": "text",
"ledgerType": "LEDGER",
"parameters": [
{
"key": "text",
"value": "text",
"name": "text",
"type": "TEXT"
}
],
"settledAt": "2026-01-01T00:00:00.000Z",
"settlementCode": "text",
"settlementUid": "text",
"settlementName": "text",
"state": "NOT_STARTED",
"status": "NEW",
"storeSettlementIssuer": {
"storeSettlementIssuerUid": "text",
"name": "text",
"code": "text"
},
"tenantUserDisplayName": "text",
"tenantUserUid": "text",
"storePaymentMethodUid": "text",
"currency": {
"amount": 1,
"code": "text",
"exchangeRate": 1
},
"additionalDetails": [
{
"key": "text",
"value": "text"
}
],
"creditCount": 1,
"creditAmount": 1,
"paymentCount": 1,
"paymentAmount": 1,
"tillUid": "text",
"tillName": "text",
"tillNumber": 1,
"storeUid": "text",
"storeName": "text",
"orderReceiptUid": "text",
"authorizedAmount": 1,
"capturedAmount": 1,
"refundedAmount": 1,
"receiptText": "text",
"transactions": [
{
"transactionType": "text",
"pspTransactionId": "text",
"transactionAmount": 1,
"orderReceiptUid": "text"
}
]
}
],
"storeUid": "text",
"storeName": "text",
"systemOrigin": "text",
"tenantUserDisplayName": "text",
"tenantUserUid": "text",
"tillUid": "text",
"type": "OFFER",
"validUntil": "2026-01-01T00:00:00.000Z",
"vatFree": true,
"vatPrint": "SUM",
"voucherNumber": "text",
"deliveryDate": "2026-01-01",
"discounts": [
{
"orderDiscountUid": "text",
"discountCode": "text",
"type": "PERCENTAGE",
"amount": 1,
"name": "text",
"origin": "LOYALTY",
"validTo": "2026-01-01T00:00:00.000Z",
"maxUsage": 1,
"productSkus": [
"text"
],
"orderItemUids": [
"text"
],
"externalTransactionId": "text",
"scope": "WHOLE_ORDER",
"discountReasonCode": "text",
"discountReference": "text",
"createdAt": "2026-01-01T00:00:00.000Z",
"createdBy": "text",
"lastModifiedAt": "2026-01-01T00:00:00.000Z",
"lastModifiedBy": "text",
"campaignUid": "text"
}
],
"compensationReasonUid": "text",
"lastModifiedBy": "text",
"allowedActions": []
}
],
"paging": {
"pageNumber": 1,
"pageSize": 1,
"totalCount": 1
}
}Create sales order for a service-order
Create sales order for a service-order.
Required permissions: SERVICE_ORDER
Access token recevied after user login with a deviceToken
Reference to a tenant.
^[A-Za-z0-9-_]+Reference to a Store.
^[A-Za-z0-9-_]+Reference to a service order
^[A-Za-z0-9-_]+^[A-Za-z0-9-_]+^[A-Za-z0-9-_]*Example response
Use invoiceAddress only if an order has a different invoice than orderAddress.
^[A-Za-z0-9-_]*| ENUM | Description |
|---|---|
| NOT_STARTED | Delivery not started |
| IN_PROGRESS | Delivery is in progress. Some order lines are still reserved |
| COMPLETE | Delivery is complete. All order lines are delivered |
Note visible on the receipt.
Internal note, not visible on the receipt.
^[A-Za-z0-9-_]+This field has value if type == ORDER
| ENUM | Description |
|---|---|
| OPEN | Order is open and beeing edited by someone |
| PARKED | Order is parked |
| CANCELED | Order is canceled/deleted |
| COMPLETE | Order is complete |
| CONFIRMED | Order is confirmed |
| ENUM | Description |
|---|---|
| NOT_STARTED | Handling has not been started. |
| IN_PROGRESS | Handling is in progress. |
| ON_HOLD | Handling is paused (on hold). |
| COMPLETE | Handling is complete. |
| ENUM | Description |
|---|---|
| NOT_STARTED | Settlement not started |
| IN_PROGRESS | Settlement is in progress and the order cannot be changed |
| COMPLETE | Settlement is complete |
When the settleState is set COMPLETE.
^[A-Za-z0-9-_]+^[A-Za-z0-9-_]+^[A-Za-z0-9-_]*| ENUM | Description |
|---|---|
| SUM | Print as a part of orderlines. |
| SEPARATE | Print as a separate field. |
A reference to a fully settled order.
^[A-Za-z0-9-_]*POST /v2/tenants/{tenantUid}/stores/{storeUid}/serviceorders/{serviceOrderUid}/orders HTTP/1.1
Host: api.flowretail.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 48
{
"sellerStoreUid": "text",
"salesOrderUid": "text"
}Example response
{
"createdAt": "2026-01-01T00:00:00.000Z",
"customerAddress": {
"address": "text",
"city": "text",
"companyName": "text",
"countryCode": "text",
"email": "text",
"firstname": "text",
"lastname": "text",
"mobile": "text",
"postalCode": "text",
"vatNumber": "text",
"displayName": "text"
},
"customerUid": "text",
"customerContact": {
"customerContactUid": "text",
"firstname": "text",
"lastname": "text",
"email": "text",
"mobile": "text",
"displayName": "text"
},
"deliveryState": "NOT_STARTED",
"externalOrderNumber": "text",
"externalVoucherNumber": "text",
"invoiceAddress": {
"address": "text",
"city": "text",
"companyName": "text",
"countryCode": "text",
"email": "text",
"mobile": "text",
"firstname": "text",
"lastname": "text",
"postalCode": "text",
"displayName": "text",
"customerAddressUid": "text"
},
"items": [
{
"actions": [
{
"comment": "text",
"createdAt": "2026-01-01T00:00:00.000Z",
"createdBy": "text",
"handlingActionUid": "text",
"handlingActionName": "text",
"handlingDescription": "text",
"handlingUid": "text",
"handlingName": "text",
"lastModifiedAt": "2026-01-01T00:00:00.000Z",
"lastModifiedBy": "text",
"orderHandlingActionUid": "text"
}
],
"allowedActions": [
"QUANTITY_SOLD"
],
"createdAt": "2026-01-01T00:00:00.000Z",
"discountReasonCode": "text",
"externalId": "text",
"itemCost": 1,
"itemDiscountAmount": 1,
"itemDiscountPercentage": 1,
"itemGrossProfitAmount": 1,
"itemGrossProfitPercentage": 1,
"itemPrice": 1,
"itemVatAmount": 1,
"lastModifiedAt": "2026-01-01T00:00:00.000Z",
"ledgerNumber": "text",
"name": "text",
"note": "text",
"orderItemUid": "text",
"orderLinks": [
{
"orderUid": "text",
"orderItemUid": "text",
"orderNumber": "text",
"storeUid": "text",
"type": "CREDIT"
}
],
"originalItemPrice": 1,
"productUid": "text",
"productType": "STOCK",
"properties": [
{
"uid": "text",
"key": "text",
"value": "text"
}
],
"quantityCredited": 1,
"quantityDelivered": 1,
"quantityOrdered": 1,
"quantityReserved": 1,
"returnReasonCode": "text",
"serialnumber": "text",
"sku": "text",
"sortOrder": 1,
"tenantUserDisplayName": "text",
"tenantUserUid": "text",
"totalCost": 1,
"totalDiscountAmount": 1,
"totalGrossProfitAmount": 1,
"totalPrice": 1,
"totalVatAmount": 1,
"vatCodeUid": "text",
"warehouseUid": "text",
"warehouseName": "text",
"internalInfo": "text",
"productProperties": [
{
"productPropertyUid": "text",
"propertyName": "text",
"propertyOptionName": "text",
"propertyType": "TEXT",
"propertyText": "text",
"propertyUid": "text",
"propertyOptionUid": "text",
"required": true
}
],
"coverImage": {
"productMediaUid": "text",
"mainUrl": "text",
"thumbnailUrl": "text"
},
"deliveryUid": "text",
"compensationReasonCode": "text",
"orderReceiptUid": "text",
"allowDelivery": "YES",
"allowDeliveryFromDate": "2026-01-01T00:00:00.000Z",
"reservationType": "NONE",
"reservationDetails": {
"warehouse": {
"warehouseName": "text"
},
"purchaseOrder": {
"purchaseOrderUid": "text",
"purchaseOrderItemUid": "text",
"expectedDeliveryDate": "2026-01-01T00:00:00.000Z",
"purchaseOrderNumber": "text",
"quantityOrdered": 1,
"externalId": "text"
},
"receivement": {
"receivementUid": "text",
"receivementItemUid": "text",
"expectedArrival": "2026-01-01T00:00:00.000Z",
"expectedDispatch": "2026-01-01T00:00:00.000Z",
"quantity": 1,
"supplierOrderReference": "text",
"receivedAt": "2026-01-01T00:00:00.000Z"
}
},
"gtins": [
{
"gtin": "text",
"primary": true,
"type": "text"
}
]
}
],
"lastModifiedAt": "2026-01-01T00:00:00.000Z",
"note": "text",
"internalNote": "text",
"orderUid": "text",
"orderNumber": "text",
"orderDate": "2026-01-01T00:00:00.000Z",
"orderState": "OPEN",
"orderTotals": {
"costTotal": 1,
"grandTotal": 1,
"grossProfitAmount": 1,
"grossProfitPercentage": 1,
"specifiedVat": [
{
"vatAmount": 1,
"vatDescription": "text",
"vatRate": 1
}
],
"subtotal": 1,
"totalDiscount": 1,
"totalVat": 1
},
"orderhandlingState": "NOT_STARTED",
"orderhandlings": [
{
"active": true,
"createdAt": "2026-01-01T00:00:00.000Z",
"createdBy": "text",
"description": "text",
"handlingUid": "text",
"lastModifiedAt": "2026-01-01T00:00:00.000Z",
"lastModifiedBy": "text",
"name": "text",
"orderHandlingUid": "text",
"state": "NOT_STARTED"
}
],
"settleState": "NOT_STARTED",
"settledAt": "2026-01-01T00:00:00.000Z",
"settlementTotals": {
"change": 1,
"remaining": 1,
"remainingRounded": 1,
"totals": 1,
"remainingPrePayment": 1,
"remainingAuthorizedAmount": 1
},
"settlements": [
{
"amount": 1,
"createdAt": "2026-01-01T00:00:00.000Z",
"displayMessages": [
{
"key": "text",
"message": "text",
"timestamp": "2026-01-01T00:00:00.000Z"
}
],
"externalId": "text",
"externalPaymentReference": "text",
"idMethod": "NO_CVM_RULE_PERFORMED",
"lastModifiedAt": "2026-01-01T00:00:00.000Z",
"ledgerNumber": "text",
"ledgerType": "LEDGER",
"parameters": [
{
"key": "text",
"value": "text",
"name": "text",
"type": "TEXT"
}
],
"settledAt": "2026-01-01T00:00:00.000Z",
"settlementCode": "text",
"settlementUid": "text",
"settlementName": "text",
"state": "NOT_STARTED",
"status": "NEW",
"storeSettlementIssuer": {
"storeSettlementIssuerUid": "text",
"name": "text",
"code": "text"
},
"tenantUserDisplayName": "text",
"tenantUserUid": "text",
"storePaymentMethodUid": "text",
"currency": {
"amount": 1,
"code": "text",
"exchangeRate": 1
},
"additionalDetails": [
{
"key": "text",
"value": "text"
}
],
"creditCount": 1,
"creditAmount": 1,
"paymentCount": 1,
"paymentAmount": 1,
"tillUid": "text",
"tillName": "text",
"tillNumber": 1,
"storeUid": "text",
"storeName": "text",
"orderReceiptUid": "text",
"authorizedAmount": 1,
"capturedAmount": 1,
"refundedAmount": 1,
"receiptText": "text",
"transactions": [
{
"transactionType": "text",
"pspTransactionId": "text",
"transactionAmount": 1,
"orderReceiptUid": "text"
}
]
}
],
"storeUid": "text",
"storeName": "text",
"systemOrigin": "text",
"tenantUserDisplayName": "text",
"tenantUserUid": "text",
"tillUid": "text",
"type": "OFFER",
"validUntil": "2026-01-01T00:00:00.000Z",
"vatFree": true,
"vatPrint": "SUM",
"voucherNumber": "text",
"deliveryDate": "2026-01-01",
"discounts": [
{
"orderDiscountUid": "text",
"discountCode": "text",
"type": "PERCENTAGE",
"amount": 1,
"name": "text",
"origin": "LOYALTY",
"validTo": "2026-01-01T00:00:00.000Z",
"maxUsage": 1,
"productSkus": [
"text"
],
"orderItemUids": [
"text"
],
"externalTransactionId": "text",
"scope": "WHOLE_ORDER",
"discountReasonCode": "text",
"discountReference": "text",
"createdAt": "2026-01-01T00:00:00.000Z",
"createdBy": "text",
"lastModifiedAt": "2026-01-01T00:00:00.000Z",
"lastModifiedBy": "text",
"campaignUid": "text"
}
],
"compensationReasonUid": "text",
"lastModifiedBy": "text",
"allowedActions": []
}Get reports for service-orders
Get reports for service-orders.
Required permissions: SERVICE_ORDER
Access token recevied after user login with a deviceToken
Reference to a tenant.
^[A-Za-z0-9-_]+Reference to a Store.
^[A-Za-z0-9-_]+Reference to a service order
^[A-Za-z0-9-_]+Based on the Accept header the response will be base64 json encoded or a raw file. application/octet-stream will return a binary file application/json will return a json with the file content base64 encoded.
base64 encoded
mime type
GET /v2/tenants/{tenantUid}/stores/{storeUid}/serviceorders/{serviceOrderUid}/reports HTTP/1.1
Host: api.flowretail.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
Based on the Accept header the response will be base64 json encoded or a raw file. application/octet-stream will return a binary file application/json will return a json with the file content base64 encoded.
{
"content": "text",
"contentType": "text",
"filename": "text"
}Search for service orders is case insensitive and you can use partial values, e.g. name 'Anna' will return both 'Anna' and 'Johanna'. Use the query to search for customer, service number or title from only one field. When this is used, the customer and service search fields are ignored. The array fields work like filters.
Required permissions: SERVICE_ORDER
Access token recevied after user login with a deviceToken
Reference to a tenant.
^[A-Za-z0-9-_]+Reference to a Store.
^[A-Za-z0-9-_]+Reference to a specific page in a result set.
The number of items per page in a result set.
Defines which field the resource list is sorted by.
| ENUM | Description |
|---|---|
| ASC | Sort in ascending order |
| DESC | Sort in descending order |
Search on customer, service number and title in one.
GTE date, e.g. 2006-05-04
LTE date, e.g. 2006-05-04
Example response
POST /v2/tenants/{tenantUid}/stores/{storeUid}/serviceorders/search HTTP/1.1
Host: api.flowretail.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 324
{
"customerName": "text",
"customerMobile": "text",
"customerEmail": "text",
"title": "text",
"serviceNumber": "text",
"query": "text",
"fromCreatedDate": "2026-01-01",
"toCreatedDate": "2026-01-01",
"assignedUserUids": [
"text"
],
"createdFromStoreUids": [
"text"
],
"priorities": [
"NONE"
],
"serviceStates": [
"NOT_STARTED"
],
"serviceTypeUids": [
"text"
]
}Example response
{
"items": [
{
"serviceOrderUid": "text",
"tenantUid": "text",
"storeUid": "text",
"orderProductLineUid": "text",
"orderUid": "text",
"customerUid": "text",
"createdFromStoreUid": "text",
"assignedUserUid": "text",
"assignedUserDisplayName": "text",
"serviceTypeUid": "text",
"serviceTypeName": "text",
"serviceStatusUid": "text",
"serviceStatusName": "text",
"serviceState": "NOT_STARTED",
"title": "text",
"serviceNumber": "text",
"externalServiceNumber": "text",
"description": "text",
"locationLabel": "text",
"priority": "NONE",
"requiresPriceEstimate": true,
"estimatedPrice": 1,
"maxPrice": 1,
"readyAtEstimate": "2026-01-01T00:00:00.000Z",
"readyAtNeeded": "2026-01-01T00:00:00.000Z",
"publicPageHash": "text",
"warranty": true,
"createdAt": "2026-01-01T00:00:00.000Z",
"createdBy": "text",
"lastModifiedAt": "2026-01-01T00:00:00.000Z",
"lastModifiedBy": "text",
"totals": {
"grandTotal": 1,
"partsTotal": 1,
"workTotal": 1
},
"items": [
{
"serviceOrderItemUid": "text",
"serviceOrderUid": "text",
"warehouseUid": "text",
"tenantUserUid": "text",
"productUid": "text",
"salesOrderUid": "text",
"quantity": 1,
"name": "text",
"sku": "text",
"price": 1,
"costPrice": 1,
"originalPrice": 1,
"totalPrice": 1,
"totalCostPrice": 1,
"serialNumber": "text",
"note": "text",
"tenantUserDisplayName": "text",
"createdAt": "2026-01-01T00:00:00.000Z",
"createdBy": "text",
"lastModifiedAt": "2026-01-01T00:00:00.000Z",
"lastModifiedBy": "text"
}
],
"assets": [
{
"assetUid": "text",
"name": "text",
"description": "text",
"isPublic": true,
"publicUrl": "text",
"mimeType": "text"
}
],
"rmaOrderItemUid": "text",
"rmaOrderUid": "text"
}
],
"paging": {
"pageNumber": 1,
"pageSize": 1,
"totalCount": 1
}
}List hourly rates.
Required permissions: SERVICE_ORDER
Access token recevied after user login with a deviceToken
Reference to a tenant.
^[A-Za-z0-9-_]+Reference to a specific page in a result set.
The number of items per page in a result set.
Example response
GET /v2/tenants/{tenantUid}/hourlyrates HTTP/1.1
Host: api.flowretail.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
Example response
{
"items": [
{
"hourlyRateUid": "text",
"name": "text",
"price": 1,
"createdAt": "2026-01-01T00:00:00.000Z",
"createdBy": "text",
"lastModifiedAt": "2026-01-01T00:00:00.000Z",
"lastModifiedBy": "text"
}
],
"paging": {
"pageNumber": 1,
"pageSize": 1,
"totalCount": 1
}
}Create a new hourly rate.
Required permissions: SERVICE_ORDER
Access token recevied after user login with a deviceToken
Reference to a tenant.
^[A-Za-z0-9-_]+^[A-Za-z0-9-_]*Example response
^[A-Za-z0-9-_]+POST /v2/tenants/{tenantUid}/hourlyrates HTTP/1.1
Host: api.flowretail.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 48
{
"hourlyRateUid": "text",
"name": "text",
"price": 1
}Example response
{
"hourlyRateUid": "text",
"name": "text",
"price": 1,
"createdAt": "2026-01-01T00:00:00.000Z",
"createdBy": "text",
"lastModifiedAt": "2026-01-01T00:00:00.000Z",
"lastModifiedBy": "text"
}Get hourly rate.
Required permissions: SERVICE_ORDER
Access token recevied after user login with a deviceToken
Reference to a tenant.
^[A-Za-z0-9-_]+Reference to a hourly rate.
^[A-Za-z0-9-_]+Example response
^[A-Za-z0-9-_]+GET /v2/tenants/{tenantUid}/hourlyrates/{hourlyRateUid} HTTP/1.1
Host: api.flowretail.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
Example response
{
"hourlyRateUid": "text",
"name": "text",
"price": 1,
"createdAt": "2026-01-01T00:00:00.000Z",
"createdBy": "text",
"lastModifiedAt": "2026-01-01T00:00:00.000Z",
"lastModifiedBy": "text"
}Update hourly rate.
Required permissions: SERVICE_ORDER
Access token recevied after user login with a deviceToken
Reference to a tenant.
^[A-Za-z0-9-_]+Reference to a hourly rate.
^[A-Za-z0-9-_]+Example response
^[A-Za-z0-9-_]+PUT /v2/tenants/{tenantUid}/hourlyrates/{hourlyRateUid} HTTP/1.1
Host: api.flowretail.com
Authorization: Bearer YOUR_SECRET_TOKEN
Content-Type: application/json
Accept: */*
Content-Length: 25
{
"name": "text",
"price": 1
}Example response
{
"hourlyRateUid": "text",
"name": "text",
"price": 1,
"createdAt": "2026-01-01T00:00:00.000Z",
"createdBy": "text",
"lastModifiedAt": "2026-01-01T00:00:00.000Z",
"lastModifiedBy": "text"
}Delete hourly rate.
Required permissions: SERVICE_ORDER
Access token recevied after user login with a deviceToken
Reference to a tenant.
^[A-Za-z0-9-_]+Reference to a hourly rate.
^[A-Za-z0-9-_]+No Content
No content
DELETE /v2/tenants/{tenantUid}/hourlyrates/{hourlyRateUid} HTTP/1.1
Host: api.flowretail.com
Authorization: Bearer YOUR_SECRET_TOKEN
Accept: */*
No Content
No content
Last updated