Difference between revisions of "Create Job Parts"

From MyMobileWorkers API
Jump to: navigation, search
(→‎Multi Part Form Data)
(→‎JSON As Body)
Line 36: Line 36:
 
==== JSON As Body ====
 
==== JSON As Body ====
 
{| border="1" class="wikitable"
 
{| border="1" class="wikitable"
−
! Create Job - JSON
+
! Create Job Part - JSON
 
! colspan="2" |  
 
! colspan="2" |  
 
|-
 
|-

Revision as of 11:31, 21 August 2013

Contents

Summary

Job parts can only be added to a Repair/Field Service job. A job part 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.

This method is transactional. If one part fails validation, then no parts will be created.

Returns a list of valid job parts and a list of failed job parts. Even if parts are valid, they will not be created unless there are no failed parts.

Multi Part Form Data

Create Job Part
URL http://:base_url/:api_path/:version/jobs/job/parts
Type POST
Params: api_key required
file required
job_number required
Response JSON

JSON As Body

Create Job Part - JSON
URL http://:base_url/:api_path/:version/jobs/job/parts
Type POST
JSON
{key, validate_only(optional), update_existing(optional), items[]}
required
Response JSON

JSON Contents

The JSON data is passed in the post as the "file"
Field Expected Data Required
name varchar(45) ✓
code varchar(45) ✓
quantity double ✓
description varchar(255) ✓
Fields exclusive to JSON body format:
Standard Fields
Field Expected Data Required
key string - company api key ✓
updating_existing boolean
validate_only boolean


Example Input

Multi Part Form Data

{"parts":[{
"quantity":"4",
"external_id":"testingThis",
"description":"testDescription",
"code":"helloCode"
}]}


JSON As Body

{
   "key":"darrenwebapi",
   "job_number":"123",
   "parts":[
      {
         "quantity":"4",
         "external_id":"testingThis",
         "description":"testDescription",
         "code":"helloCode"
      }
   ]
}

Example Curl Requests

Multi Part Form Data

curl -F validate_only=false -F update_existing=true -F api_key=darrenwebapi -F job_number=123 -F file=@/Users/darrenatherton/Desktop/webAPICurling/create_job_part_stage.txt http://live.mymobileworkers.com:8080/api/1/jobs/job/parts

JSON As Body

curl -X POST -H "Content-Type: application/json" -d '{"key":"darrenwebapi","job_number":"123","parts":[{"quantity":"4","external_id":"testingThis","description":"testDescription","code":"helloCode"}]}' http://live.mymobileworkers.com:8080/api/1/jobs/job/parts

Responses

Example JSON

{
   "result":"failed",
   "failed":[
      {
         "part":{
            "name":"part2",
            "code":null,
            "description":null,
            "quantity":0.0
         },
         "errors":[
            {
               "error_code":"WAJ037",
               "error_message":"code invalid empty string"
            },
            {
               "error_code":"WAJ034",
               "error_message":"description invalid empty string"
            }
         ]
      }
   ],
   "valid":[
      {
         "name":"part1",
         "code":"CODE1",
         "description":"description",
         "quantity":1.0
      }
   ]
}
Personal tools
Namespaces

Variants
Actions
Navigation
Toolbox