Difference between revisions of "Create Job Items"
(→Summary) |
(→JSON As Body) |
||
| (16 intermediate revisions by 5 users not shown) | |||
| Line 11: | Line 11: | ||
Returns a list of valid job items and a list of failed job items. Even if items are valid, they will not be created unless there are no failed items. | Returns a list of valid job items and a list of failed job items. Even if items are valid, they will not be created unless there are no failed items. | ||
| + | |||
| + | The replace existing parameter will remove all existing items from the job before the new collection of items is added. | ||
==== Multi Part Form Data ==== | ==== Multi Part Form Data ==== | ||
| Line 52: | Line 54: | ||
|- | |- | ||
! | ! | ||
| − | | JSON <br /> {key, job_number, validate_only(optional), update_existing(optional), items[]} ||| required | + | | JSON <br /> {key, job_number, validate_only(optional), update_existing(optional), replace_existing(optional), items[]} ||| required |
|- | |- | ||
! Response | ! Response | ||
| Line 74: | Line 76: | ||
! expected_quantity | ! expected_quantity | ||
| int(4) || ✓ | | int(4) || ✓ | ||
| − | |||
| − | |||
| − | |||
|- | |- | ||
! other | ! other | ||
| Line 83: | Line 82: | ||
! notes | ! notes | ||
| varchar(45) || | | varchar(45) || | ||
| + | |- | ||
| + | ! barcodes | ||
| + | | varchar(255) || | ||
|- | |- | ||
|} | |} | ||
| Line 96: | Line 98: | ||
! key | ! key | ||
| string - company api key || ✓ | | string - company api key || ✓ | ||
| + | |- | ||
| + | ! job_number | ||
| + | | string - job number || ✓ | ||
|- | |- | ||
! validate_only | ! validate_only | ||
| + | | boolean || | ||
| + | |- | ||
| + | ! update_existing | ||
| + | | boolean || | ||
| + | |- | ||
| + | ! replace_existing | ||
| boolean || | | boolean || | ||
|- | |- | ||
| Line 111: | Line 122: | ||
"expected_quantity":"4", | "expected_quantity":"4", | ||
"other":"test", | "other":"test", | ||
| − | |||
"notes":"exampleNotes", | "notes":"exampleNotes", | ||
| − | "name":"darrenItem245" | + | "name":"darrenItem245", |
| + | "barcodes":"barcode,barcode1" | ||
}]} | }]} | ||
</source> | </source> | ||
| Line 128: | Line 139: | ||
"expected_quantity":"4", | "expected_quantity":"4", | ||
"other":"test", | "other":"test", | ||
| − | |||
"notes":"exampleNotes", | "notes":"exampleNotes", | ||
| − | "name":"darrenItem" | + | "name":"darrenItem", |
| + | "barcodes":"barcode,barcode1" | ||
| + | }, | ||
| + | { | ||
| + | "type":"D", | ||
| + | "expected_quantity":"2", | ||
| + | "other":"testing1", | ||
| + | "notes":"noting", | ||
| + | "name":"Item", | ||
| + | "barcodes":"barcode2,barcode2" | ||
} | } | ||
] | ] | ||
| Line 140: | Line 159: | ||
==== Multi Part Form Data ==== | ==== Multi Part Form Data ==== | ||
| − | curl -F validate_only=false -F update_existing=true -F api_key= | + | <source lang="php"> |
| + | curl -F validate_only=false -F update_existing=true -F api_key=[YOUR_API_KEY] -F job_number=123 -F file=@/Users/darrenatherton/Desktop/webAPICurling/create_job_item_stage.txt http://api.mymobileworkers.com:8080/api/1/jobs/job/items | ||
| + | </source> | ||
==== JSON As Body ==== | ==== JSON As Body ==== | ||
| − | curl -X POST -H "Content-Type: application/json" -d '{"key":" | + | <source lang="php"> |
| + | curl -X POST -H "Content-Type: application/json" -d '{"key":"YOUR_API_KEY","job_number":"123","items":[{"type":"C","expected_quantity":"4","other":"test","notes":"exampleNotes","name":"darrenItem"}]}' http://api.mymobileworkers.com:8080/api/1/jobs/job/items | ||
| + | </source> | ||
== Responses == | == Responses == | ||
| Line 173: | Line 196: | ||
"type":"C", | "type":"C", | ||
"notes":"notes", | "notes":"notes", | ||
| − | + | "barcodes":"barcode,barcode1" | |
} | } | ||
] | ] | ||
} | } | ||
</source> | </source> | ||
Latest revision as of 09:26, 15 June 2020
Contents |
[edit] Summary
Job items can be created for any workflow type however for the data to be displayed on the device the correct screen needs to be enabled.
A job item can be created via two different methods - either as multi-part form data with a JSON file attached and the API key as a parameter, or as JSON content on it's own, with the API key supplied within the JSON.
A job item may be created either by supplying freeform text for the 'name' field, or by supplying the name or external id of an existing part, which will then be linked from the items catalog to the new item.
This method is transactional. If one item fails validation, then no items will be created.
Returns a list of valid job items and a list of failed job items. Even if items are valid, they will not be created unless there are no failed items.
The replace existing parameter will remove all existing items from the job before the new collection of items is added.
[edit] Multi Part Form Data
| Create Job item | ||
|---|---|---|
| URL | http://:base_url/:api_path/:version/jobs/job/items | |
| Type | POST | |
| Params: | api_key | required |
| validate_only | required | |
| file | required | |
| job_number | required | |
| Response | JSON | |
[edit] JSON As Body
| Create Job - JSON | ||
|---|---|---|
| URL | http://:base_url/:api_path/:version/jobs/job/items | |
| Type | POST | |
| JSON {key, job_number, validate_only(optional), update_existing(optional), replace_existing(optional), items[]} |
required | |
| Response | JSON | |
[edit] JSON Contents
| Field | Expected Data | Required |
|---|---|---|
| name OR external_id | varchar(45) | ✓ |
| type | "C","D" * Collect/Deliver |
✓ |
| expected_quantity | int(4) | ✓ |
| other | varchar(45) | |
| notes | varchar(45) | |
| barcodes | varchar(255) |
| Standard Fields | ||
|---|---|---|
| Field | Expected Data | Required |
| key | string - company api key | ✓ |
| job_number | string - job number | ✓ |
| validate_only | boolean | |
| update_existing | boolean | |
| replace_existing | boolean | |
[edit] Example Input
[edit] Multi Part Form Data
{"items":[{ "type":"C", "expected_quantity":"4", "other":"test", "notes":"exampleNotes", "name":"darrenItem245", "barcodes":"barcode,barcode1" }]}
[edit] JSON As Body
{ "key":"darrenwebapi", "job_number":"123", "items":[ { "type":"C", "expected_quantity":"4", "other":"test", "notes":"exampleNotes", "name":"darrenItem", "barcodes":"barcode,barcode1" }, { "type":"D", "expected_quantity":"2", "other":"testing1", "notes":"noting", "name":"Item", "barcodes":"barcode2,barcode2" } ] }
[edit] Example Curl Requests
[edit] Multi Part Form Data
curl -F validate_only=false -F update_existing=true -F api_key=[YOUR_API_KEY] -F job_number=123 -F file=@/Users/darrenatherton/Desktop/webAPICurling/create_job_item_stage.txt http://api.mymobileworkers.com:8080/api/1/jobs/job/items
[edit] JSON As Body
curl -X POST -H "Content-Type: application/json" -d '{"key":"YOUR_API_KEY","job_number":"123","items":[{"type":"C","expected_quantity":"4","other":"test","notes":"exampleNotes","name":"darrenItem"}]}' http://api.mymobileworkers.com:8080/api/1/jobs/job/items
[edit] Responses
[edit] Example JSON
{ "result":"failed", "failed":[ { "item":{ "name":"item2", "type":null, "notes":null, }, "errors":[ { "error_code":"JBI002", "error_message":"Job item type is null" } ] } ], "valid":[ { "name":"item1", "type":"C", "notes":"notes", "barcodes":"barcode,barcode1" } ] }