This is a selective-update endpoint that only updates the attributes that you send, on a specific project
within Supermove.
A project
is uniquely identified by its UUID
. If the system does not find a matching UUID
, it will return an error. If it does find a matching UUID
, it will perform an UPDATE on the existing project
.
Resources described below are outlined here.
An example request for creating a new project on the supermove-sandbox-demo
account. Feel free to copy this payload and try the request yourself.
The request URL: https://api.supermove.co/v1/projects/update/:UUID
{
"status": enum["CANCELLED", "UNCANCELLED", "BOOKED", "COMPLETED"],
"name": string,
"description": string,
"referral_source": string,
"referral_details": string,
"salesperson":
{
"email": string
},
"coordinator":
{
"email": string
},
"client":
{
"name": string,
"primary_contact":
{
"first_name": string,
"last_name": string,
"email": string,
"phone_number": string
}
},
"jobs": [
{
"uuid": string, // Will update the job if job UUID is specified, otherwise it will create a new one.
"name": string,
"job_type":
{
"identifier": string // Required when creating a new job, ignored when updating an existing one.
},
"description": string,
"start_date": date,
"end_date": date,
"start_time_1": string,
"start_time_2": string,
"number_of_movers": integer, // Required when creating a new job.
"number_of_trucks": integer,
"estimate_hours_min": float,
"estimate_hours_max": float,
"office_notes": string,
"dispatch_notes": string,
"crew_notes": string,
"locations": [ // If locations is in the request, the locations in the request will replace all current locations on the job. If specified, each must have an address.
{
"address": string, // Required
"city": string,
"zip_code": string,
"unit": string,
"floor_number": integer,
"flights_of_stairs": integer,
"has_elevator": boolean,
"has_long_walk": boolean,
"notes": string,
}
],
},
]
}
A successful response from the server will send back the project and its unique identifier.
{
"identifier": "B10000"
"uuid": "2defae56-7bca-43a1-8341-01b6384d13e8"
}