Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
// JmJobList
{ "L": ["job_no", "job_desc"] }// A single JmJob, or a JmPhase setup query
{ "jm_job": ["job_no", { "division_no": ["division_no", "division_code"] }] }// Exact match
{ "status": 1 }
// Comparison
{ "quantity": { "$gte": 100 } }
// Set membership
{ "status": { "$in": [1, 2, 3] } }
// Combine conditions (implicit AND across keys)
{ "status": 1, "priority": { "$gte": 5 } }
// Text contains-all-words
{ "description": { "$likeAnd": "urgent project" } }# 1. Get a token (served by v2 - see Authentication; or use a provider bearer token / Basic auth)
POST https://<your-server>/api/v2/database/<your-database>/orchestration/auth/login
Content-Type: application/json
{ "username": "myuser", "password": "mypassword" }# 2. Read a single job (fields is required on every GET)
GET https://<your-server>/api/v3/JmJob/job_no/123?fields={"jm_job":["job_no","customer_name"]}
Authorization: Bearer <access_token># 3. Query a list, filtered and paged (list fields use the "L" alias)
GET https://<your-server>/api/v3/JmJobList?fields={"L":["job_no","job_desc"]}&query={"job_no":{"$range":[10,100]}}&pagesize=50&page=1
Authorization: Bearer <access_token>/where/{key} for codes that can contain /.- GET https://<your-server>/api/v2/database/MyDatabase/JmJob/job_no=123
+ GET https://<your-server>/api/v3/JmJob/job_no/123- (not possible in v2)
+ GET https://<your-server>/api/v3/SchResource/where/resource_code=AVL/007- GET .../api/v2/.../JmJob/job_no=123
+ GET .../api/v3/JmJob/job_no/123?fields={"jm_job":["job_no","customer_name"]}- GET .../api/v2/.../JmJoblist?query=<long, heavily-encoded filter>
+ POST .../api/v3/JmJoblist/query
+ { "filtering": { ... }, "paging": { ... }, "resultColumns": [ ... ] } PATCH https://<your-server>/api/v3/JmJob/job_no/123
- Content-Type: application/json # v2 op array
+ Content-Type: application/json-patch+json # v3 op array
[ { "op": "replace", "path": "job_desc", "value": "Barry" } ]- HTTP/1.1 400 Bad Request
+ HTTP/1.1 404 Not Found
+ { "status": 404, "code": "XY_NOT_FOUND", "error": "..." }{keyName}/{keyValue}, and any subtable or sub-subtable key segments. If any key in the URL needs encoding, Base16-encode all key segments in that request; you can't mix an encoded segment with a plain one under a single keyEncoding flag.- v2: GET /api/v2/database/MyDatabase/JmJob/job_no=123
+ v3: GET /api/v3/JmJob/job_no/123GET https://<your-server>/api/v3/SchResource/resource_code/41564c2f303037?keyEncoding=base16&fields={"sch_resource":["resource_code","resource_desc"]}MoTask - media order tasks# All activities (fields required; still paged by the default page size)
GET https://<your-server>/api/v3/TcActivity?fields={"tc_activity":["activity_code","activity_desc"]}
# Only the activities you care about
GET https://<your-server>/api/v3/TcActivity?fields={"tc_activity":["activity_code","activity_desc"]}&query={"active":1}POST https://<your-server>/api/v3/SchResource
Authorization: Bearer <access_token>
Content-Type: application/json
{
"sch_resource": [
{ "resource_code": "FRED01", "resource_desc": "Fred", "external_key": "Ext001" }
]
}{
"message": null,
"tables": ["sch_resource"],
"sch_resource": {
"record_identifiers": ["resource_code"],
"records": [ { "resource_code": "FRED01" } ]
}
}204 No Content.PATCH https://<your-server>/api/v3/JmJob/job_no/123
Authorization: Bearer <access_token>
Content-Type: application/json-patch+json
[
{ "op": "replace", "path": "job_desc", "value": "Hello World" },
{ "op": "replace", "path": "external_key", "value": "15411" }
]PATCH https://<your-server>/api/v3/JmWorkOrder/wo_no_seq/8248-1
Authorization: Bearer <access_token>
Content-Type: application/json
{
"jm_work_order": [
{
"wo_no_seq": { "wo_no_seq": "8248-1" },
"wo_desc": "My New Description",
"po": "123456"
}
]
}PUT https://<your-server>/api/v3/SchResource/resource_code/FRED01
Authorization: Bearer <access_token>
Content-Type: application/json
{
"sch_resource": [
{ "resource_code": "FRED01", "resource_desc": "Fred (updated)", "external_key": "Ext001" }
]
}DELETE https://<your-server>/api/v3/SchResource/resource_code/FRED01GET https://<your-server>/api/v3/JmJobList?fields={"L":["job_no"]}&pagesize=50&page=2# Page 1
GET https://<your-server>/api/v3/JmJoblist?pagesize=100&page=1
# -> Pagination-Count: 250, Pagination-Page: 1, Pagination-Limit: 100
# Page 2
GET https://<your-server>/api/v3/JmJoblist?pagesize=100&page=2
# Page 3 (final; 50 rows)
GET https://<your-server>/api/v3/JmJoblist?pagesize=100&page=3curl --location --globoff \
'https://<your-server>/api/v3/SchResource/resource_code/FRED01?fields={"sch_resource":["resource_code","resource_desc","external_key"]}&nullvaluehandling=ignore' \
--header 'Authorization: Bearer <access_token>'{
"sch_resource": [
{
"resource_code": { "resource_code": "FRED01" },
"resource_desc": "Fred",
"external_key": "Ext001"
}
]
}curl --location --globoff \
'https://<your-server>/api/v3/JmJobList?fields={"L":["job_no","job_desc"]}&query={"job_no":{"$range":[10,100]}}&pagesize=50&page=1' \
--header 'Authorization: Bearer <access_token>'curl --location --globoff \
'https://<your-server>/api/v3/SchResource/resource_code/41564c2f303037?keyEncoding=base16&fields={"sch_resource":["resource_code","resource_desc"]}' \
--header 'Authorization: Bearer <access_token>'curl --location 'https://<your-server>/api/v3/SchResource' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer <access_token>' \
--data '{ "sch_resource": [ { "resource_code": "FRED01", "resource_desc": "Fred", "external_key": "Ext001" } ] }'{
"message": null,
"tables": ["sch_resource"],
"sch_resource": {
"record_identifiers": ["resource_code"],
"records": [ { "resource_code": "FRED01" } ]
}
}curl --location --request PATCH 'https://<your-server>/api/v3/JmJob/job_no/67981' \
--header 'Content-Type: application/json-patch+json' \
--header 'Authorization: Bearer <access_token>' \
--data '[
{ "op": "replace", "path": "job_desc", "value": "Hello World" },
{ "op": "replace", "path": "external_key", "value": "15411" }
]'curl --location --request PATCH 'https://<your-server>/api/v3/JmWorkOrder/wo_no_seq/8248-1' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer <access_token>' \
--data '{ "jm_work_order": [ { "wo_no_seq": { "wo_no_seq": "8248-1" }, "wo_desc": "My New Description", "po": "123456" } ] }'curl --location --globoff --request PATCH \
'https://<your-server>/api/v3/JmWorkOrderlist?query={"date_added":{"$range":["2022-07-26T00:00:00","2023-07-28T00:00:00"]},"wo_type_no":40}' \
--header 'Content-Type: application/json-patch+json' \
--header 'Authorization: Bearer <access_token>' \
--data '[ { "op": "replace", "path": "wo_reference", "value": "Quick Service 2" } ]'curl --location --request PUT 'https://<your-server>/api/v3/SchResource/resource_code/FRED01' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer <access_token>' \
--data '{ "sch_resource": [ { "resource_code": "FRED01", "resource_desc": "Fred (updated)", "external_key": "Ext001" } ] }'curl --location --request DELETE 'https://<your-server>/api/v3/SchResource/resource_code/FRED01' \
--header 'Authorization: Bearer <access_token>'POST https://<your-server>/api/v3/JmJoblist/query
Authorization: Bearer <access_token>
Content-Type: application/json
{
"filtering": {
"combiningOperator": "and",
"conditions": [
{ "field": "status", "op": "in", "value": [1, 2, 3] },
{ "field": "priority", "op": "gte", "value": 5 }
]
},
"paging": { "pageNo": 1, "pageSize": 50 },
"sorting": [ { "field": "job_no", "direction": "asc" } ],
"fields": [
{ "table": "JmJob", "columns": ["job_no", "customerName", "status"] }
]
}POST https://<your-server>/api/v3/{document}report/query{
"combiningOperator": "and", // "and" (default) or "or"
"conditions": [
{ "field": "status", "op": "in", "value": [1, 2] }
],
"groups": [ // nested groups
{
"combiningOperator": "or",
"conditions": [
{ "field": "priority", "op": "gte", "value": 8 },
{ "field": "isRush", "op": "ne", "value": 0 }
]
}
]
}nullvaluehandling=ignore parameter to drop null values from responses.saveArgument: {"LoadTemplateOption":1}
// also load child templates
saveArgument: {"LoadTemplateOption":1,"LoadChildTemplates":"Y"}curl --location --globoff 'https://<your-server>/api/v3/JmWorkOrder' \
--header 'Content-Type: application/json' \
--header 'saveArgument: {"LoadTemplateOption":1,"LoadChildTemplates":"Y"}' \
--header 'Authorization: Bearer <access_token>' \
--data '{
"jm_work_order": [
{
"wo_no_seq": { "wo_no_seq": "+1" },
"wo_desc": "Match2006",
"wo_begin_dt": "2026-08-22T10:00:00.000Z",
"wo_end_dt": "2026-08-22T16:00:00.000Z",
"wo_template_no": { "wo_template_no": 1050 },
"wo_type_no": { "wo_type_no": 3275 },
"phase_code": { "phase_code": "Hold" },
"rate_card_no": { "rate_card_no": 1 },
"cust_id": { "cust_id": "1157" }
}
]
}'saveArgument: {"LoadServiceTemplate":"10"}saveArgument: {"LoadServiceTemplate":"10","11"}// shift transaction times by the same amount as the order time change
saveArgument: {"TrxTimeOptionAdjust":""}
// shift transaction times to follow the order's new begin time exactly
saveArgument: {"TrxTimeOptionMove":""}curl --location --request PATCH 'https://<your-server>/api/v3/JmWorkOrder/wo_no_seq/2626-1' \
--header 'Content-Type: application/json-patch+json' \
--header 'saveArgument: {"TrxTimeOptionAdjust":""}' \
--header 'Authorization: Bearer <access_token>' \
--data '[
{ "op": "replace", "path": "wo_begin_dt", "value": "2026-08-22T14:00:00.000Z" },
{ "op": "replace", "path": "wo_end_dt", "value": "2026-08-22T20:00:00.000Z" }
]'saveArgument: {"VoidWorkOrder":"36914-1"}curl --location --request PATCH 'https://<your-server>/api/v3/JmWorkOrder/wo_no_seq/2626-1' \
--header 'Content-Type: application/json-patch+json' \
--header 'saveArgument: {"VoidWorkOrder":"2626-1"}' \
--header 'Authorization: Bearer <access_token>' \
--data '[
{ "op": "replace", "path": "cancel_no", "value": 1 }
]'saveArgument: {"UnVoidWorkOrder":"1067982-1"}curl --location --request PATCH 'https://<your-server>/api/v3/JmWorkOrder/wo_no_seq/1067982-1' \
--header 'Content-Type: application/json-patch+json' \
--header 'saveArgument: {"UnVoidWorkOrder":"1067982-1"}' \
--header 'Authorization: Bearer <access_token>' \
--data '[]'saveArgument: { "ActualizeSelected":"38521,38522", "ActualizeUpdatePhase":"Y" }
saveArgument: { "ActualizeAll":"-2", "ActualizeUpdatePhase":"Y" }saveArgument: {"Post":""}curl --location --request PATCH 'https://<your-server>/api/v3/TcBatch/batch_no/7572' \
--header 'Content-Type: application/json-patch+json' \
--header 'saveArgument: {"Post":""}' \
--header 'Authorization: Bearer <access_token>' \
--data '[]'saveArgument: {"GroupCode":"UKPS"}curl --location --request PATCH 'https://<your-server>/api/v3/SchResource/resource_code/3' \
--header 'Content-Type: application/json-patch+json' \
--header 'saveArgument: {"GroupCode":"TRX"}' \
--header 'Authorization: Bearer <access_token>' \
--data '[]'saveArgument: {"BidApproval":"0"}curl --location --request PATCH 'https://<your-server>/api/v3/BidVersion/version_no/211' \
--header 'Content-Type: application/json-patch+json' \
--header 'saveArgument: {"BidApproval":"0"}' \
--header 'Authorization: Bearer <access_token>' \
--data '[
{ "op": "replace", "path": "approved", "value": "Y" }
]'saveArgument: {"LoadServiceTemplate":"10","LoadTemplate":"2"}{
"jm_job": [
{
"job_no": { "job_no": -1 },
"division_no": { "division_no": 2 },
"cust_id": { "cust_id": 409 },
"job_desc": "Passing Fancy",
"external_key": "1234",
"po": "PO002",
"job_type_no": { "job_type_no": 1113 }
}
]
}{
"jm_job": [
{
"job_no": -1,
"division_no": 2,
"cust_id": "409",
"job_desc": "Passing Fancy",
"external_key": "1234",
"po": "PO002",
"job_type_no": 1113
}
]
}{
"sch_resource": [
{
"resource_code": { "resource_code": "FRED01" },
"resource_desc": "Fred",
"external_key": "Ext001"
}
]
}GET https://<your-server>/api/v3/LibMaster/barcode/2000XYT{
"jm_work_order": [
{
"wo_no_seq": "+1",
"wo_desc": "Match20",
"wo_begin_dt": "2023-08-22T10:00:00.000Z",
"wo_end_dt": "2023-08-22T16:00:00.000Z",
"wo_type_no": 17,
"phase_code": "Bid",
"rate_card_no": 1,
"cust_id": 19
}
]
}2025-02-20T10:00:00.000Z
2025-02-20T10:00:00Z2025-02-16T04:00:00-05:00Source-Time-Zone-Name: Pacific Standard Timetrue inside an in list is not rejected and will not match. It is passed through as the text "True", while checkbox columns hold "Y" / "N", so the condition matches nothing and returns an empty result with no error. Filter checkbox columns with "Y" or "N".or{ "quantity": { "$gte": 100 } } // GET ?query=
{ "field": "quantity", "op": "gte", "value": 100 } // POST /query{ "status": 1, "priority": { "$gte": 5 } } // status = 1 AND priority >= 5{ "$or": [ { "status": 1 }, { "priority": { "$gte": 8 } } ] }GET https://<your-server>/api/v3/JmJob/job_no/123
Authorization: Bearer <provider_access_token>POST https://<your-server>/api/v2/database/<your-database>/orchestration/auth/login
Content-Type: application/json
{
"username": "myuser",
"password": "mypassword"
}{
"accessToken": "<jwt>",
"refreshToken": "<guid>",
"idToken": "<jwt>"
}Authorization: Bearer <accessToken>POST https://<your-server>/api/v2/database/<your-database>/orchestration/auth/refresh
Content-Type: application/json
{
"accessToken": "<current_accessToken>",
"refreshToken": "<refreshToken>"
}