Public API for Catering Partne...
Delivery API
Courier Schema Reference
43 min
courier schema reference objects courierassignpayload return type of courierassign field name description clientmutationid /#string a unique identifier for the client performing the mutation delivery /#delivery the delivery where the courier was assigned usererrors /#courierassignusererror the list of errors that happened from executing the mutation example { "clientmutationid" "your mutation id", "delivery" { "id" "ezcater delivery id" }, "usererrors" \[courierassignusererror!] } couriereventcreatepayload return type of couriereventcreate field name description clientmutationid /#string a unique identifier for the client performing the mutation delivery /#delivery the delivery where the courier was assigned usererrors /#couriereventcreateusererror the list of errors that happened from executing the mutation example { "clientmutationid" "your mutation id", "delivery" { "id" "ezcater delivery id" }, "usererrors" \[courierassignusererror!] } courierimagescreatepayload return type of courierimagescreate field name description clientmutationid /#string a unique identifier for the client performing the mutation usererrors /#courierimagescreateusererror the list of errors that happened from executing the mutation example { "clientmutationid" "your mutation id", "usererrors" \[courierassignusererror!] } couriertrackingeventcreatepayload return type of couriertrackingeventcreate field name description clientmutationid /#string a unique identifier for the client performing the mutation usererrors /#couriertrackingeventcreateusererror the list of errors that happened from executing the mutation example { "clientmutationid" "your mutation id", "usererrors" \[courierassignusererror!] } courierunassignpayload return type of courierassign field name description clientmutationid /#string a unique identifier for the client performing the mutation delivery /#delivery the delivery where the courier was assigned usererrors /#courierunassignusererror the list of errors that happened from executing the mutation example { "clientmutationid" "your mutation id", "delivery" { "id" "ezcater delivery id" }, "usererrors" \[courierassignusererror!] } couriersassignpayload return type of couriersassign field name description clientmutationid /#string a unique identifier for the client performing the mutation delivery /#delivery the delivery where the courier was assigned usererrors /#courierassignusererror the list of errors that happened from executing the mutation deliveryvalidationerror a validation error, with a user friendly message, that occurred while executing the mutation field name description message /#string a description of the error path /#string a path to the input value that caused the error example { "message" "it's too early to add the event for courier en route to pickup", "path" \[ "input", "occurredat" ] } inputobjects coordinatesinput the latitude and longitude of where the event occurred by the courier field name description latitude /#float the coordinate's latitude value longitude /#float the coordinate's longitude value example { "latitude" 42 360081, "longitude" 71 058884 } courierassigninput the input object for mutation courierassign field name description allowmultiplecouriers /#boolean when true , the provided courier input will be added to the delivery's existing assigned couriers without removing any current assignments when false or omitted, any pre existing assigned couriers for the delivery will be replaced by the provided courier input clientmutationid /#string a unique identifier for the client performing the mutation courier /#courierinput the details of the courier that's being assigned when provided details of a courier that doesn't exist, then the courier will be created when provided details of an existing courier, then the courier will be updated to match the input if there's new or changed attributes deliveryid /#id the globally unique identifier of the delivery ! ! deprecated deprecated deliveryserviceprovider /#string deprecated deprecated ! ! ! ! deprecated deprecated the delivery platform that is providing the courier for example, doordash, uber, etc this is only used for internal tracking and the information is not presented to the the customer deprecated deprecated ! ! replaced by arguments /#courierprovidersource and /#courierprovidersource example { "clientmutationid" "your mutation id", "courier" courierinput, "deliveryid" "ezcater delivery id", "occurredat" "2024 02 05t17 27 55+0000" } courierassignmentinput the input fields for creating or updating a delivery courier and its assignment to the delivery field name description id /#id the unique identifier for the courier this is used to determine whether the courier exists in the system if the courier does not exist then it can be created, if it does exist then it can be updated firstname /#string the courier's first name lastname /#string the courier's last name phone /#string the phone number of the courier formatted using e 164 standard for example, +16175551234 providername /#string the name of the third party service that's fulfilling the delivery this is required when the providersource is third party providersource /#courierprovidersource whether the courier is in house or from a third party service vehichle /#couriervehicleinput the details on the courier's vehicle for the delivery couriereventcreateinput the input object for mutation couriereventcreate field name description clientmutationid /#string a unique identifier for the client performing the mutation coordinates /#coordinatesinput the latitude and longitude of where the event occurred by the courier ! ! deprecated deprecated courier /#courierinput deprecated deprecated ! ! ! ! deprecated deprecated the details of the assigned courier that submitted the event when provided details of a courier that doesn't exist, then the courier will be created when provided details of an existing courier, then the courier will be updated to match the input if there's new or changed attributes the courier will be assigned to the delivery if they're not already, which unassigns any existing courier deprecated ! deprecated ! courierid /#id replaces argument courier courier creation, updating, and assignment changes should now be performed using the courierassign or couriersassign mutations if the courier for the provided courierid has not yet been created or is not assigned, then an execution error will be returned deliveryid /#id the globally unique identifier of the delivery eventtype /#couriereventcreateinputeventtype the type of event by the courier for the delivery occurredat /#iso8601datetime the date and time (iso 8601 format) when the event happened example { "clientmutationid" "your mutation id", "coordinates" coordinates, "courier" courierinput, "deliveryid" "ezcater delivery id", "eventtype" "en route to pickup", "occurredat" "2024 02 05t17 27 55+0000" } courierimagescreateinput the input object for mutation courierimagescreate field name description clientmutationid /#string a unique identifier for the client performing the mutation ! ! deprecated deprecated courier /#courierinput deprecated ! deprecated ! ! deprecated ! deprecated the details of the assigned courier that submitted the event when provided details of a courier that doesn't exist, then the courier will be created when provided details of an existing courier, then the courier will be updated to match the input if there's new or changed attributes the courier will be assigned to the delivery if they're not already, which unassigns any existing courier deprecated ! deprecated ! courierid /#id replaces argument courier courier creation, updating, and assignment changes should now be performed using the courierassign or couriersassign mutations if the courier for the provided courierid has not yet been created or is not assigned, then an execution error will be returned deliveryid /#id the globally unique identifier of the delivery imageurls /#string a list of remote image urls each url must respond to an http head request with a 2xx status code and an image content type header example { "clientmutationid" "your mutation id", "courier" courierinput, "deliveryid" "ezcater delivery id", "imageurls" \["https //your courier company com/your courier id delivery jpg"] } courierinput the details of the assigned courier that submitted the event when provided details of a courier that doesn't exist, then the courier will be created when provided details of an existing courier, then the courier will be updated to match the input if there's new or changed attributes the courier will be assigned to the delivery if they're not already, which unassigns any existing courier field name description id /#id the unique identifier for the courier this is used to determine whether the courier exists in the system if the courier does not exist then it can be created, if it does exist then it can be updated firstname /#string the courier's first name this is required for new couriers lastname /#string the courier's last name this is required for new couriers phone /#string the phone number of the courier formatted using e 164 standard for example, +16175551234 this is required for new couriers providername /#string the name of the third party service that's fulfilling the delivery this is required when the providersource is third party providersource /#courierprovidersource whether the courier is in house or from a third party service vehicle /#couriervehicleinput the details on the courier's vehicle for the delivery example { "id" "your courier id", "firstname" "test", "lastname" "courier", "phone" "+15555555555", "providersource" "third party", "providername" "doordash", "vehicle" couriervehicleinput } couriertrackingeventcreateinput the input object for mutation couriertrackingeventcreate field name description clientmutationid /#string a unique identifier for the client performing the mutation coordinates /#coordinatesinput the latitude and longitude of where the event occurred by the courier ! ! deprecated deprecated courier /#courierinput deprecated ! deprecated ! ! ! deprecated deprecated the details of the assigned courier that submitted the event when provided details of a courier that doesn't exist, then the courier will be created when provided details of an existing courier, then the courier will be updated to match the input if there's new or changed attributes the courier will be assigned to the delivery if they're not already, which unassigns any existing courier deprecated ! deprecated ! courierid /#id replaces argument courier courier creation, updating, and assignment changes should now be performed using the courierassign or couriersassign mutations if the courier for the provided courierid has not yet been created or is not assigned, then an execution error will be returned deliveryid /#id the globally unique identifier of the delivery occurredat /#iso8601datetime the date and time (iso 8601 format) when the event happened example { "clientmutationid" "your mutation id", "coordinates" coordinates, "courier" courierinput, "deliveryid" "ezcater delivery id", "occurredat" "2024 02 05t17 27 55+0000" } courierunassigninput the input fields for mutation courierunassign field name description clientmutationid /#string a unique identifier for the client performing the mutation ! deprecated ! deprecated courier /#courierinput deprecated ! deprecated ! ! ! deprecated deprecated the details of the courier that's being assigned when provided details of a courier that doesn't exist, then the courier will be created when provided details of an existing courier, then the courier will be updated to match the input if there's new or changed attributes deprecated ! deprecated ! courierid /#id replaces argument courier courier creation, updating, and assignment changes should now be performed using the courierassign or couriersassign mutations if the courier for the provided courierid has not yet been created or is not assigned, then an execution error will be returned deliveryid /#id the globally unique identifier of the delivery example { "clientmutationid" "your mutation id", "courier" courierinput, "deliveryid" "ezcater delivery id" } couriervehicleinput the input fields for specifying a delivery courier's vehicle field name description make /#string the vehicle's make for example, ford model /#string the vehicle's model color /#string the vehicle's color example { "make" "your vehicle make", "model" "your vehicle model", "color" "your vehicle color" } couriersassigninput the input fields for mutation couriersassign field name description clientmutationid /#string a unique identifier for the client performing the mutation couriers /#courierassignmentinput a list of couriers to be assigned to the delivery each courier will be created or updated with the provided details any existing assignments will be replaced with the provided list providing an empty list will remove all couriers from the delivery deliveryid /#id the globally unique identifier of the delivery inputs delivery the identifier representing an ezcater delivery field name description id /#id a globally unique identifier of the delivery example { "id" "ezcater delivery id" } unions courierassignusererror field name description courierassignusererror /#deliveryvalidationerror list of usererrors for courierassign couriereventcreateusererror field name description couriereventcreateusererror /#deliveryvalidationerror list of usererrors for couriereventcreate courierimagescreateusererror field name description courierimagescreateusererror /#deliveryvalidationerror list of usererrors for courierimagescreate couriertrackingeventcreateusererror field name description couriertrackingeventcreateusererror /#deliveryvalidationerror list of usererrors for couriertrackingeventcreate courierunassignusererror field name description courierunassignusererror /#deliveryvalidationerror list of usererrors for courierunassign enums couriereventcreateinputeventtype the status by the courier that describes the current state of the delivery lifecycle enum name description arrived at dropoff the courier has arrived at the dropoff location arrived at pickup the courier has arrived at the location to pickup the delivery dropped off the courier has dropped off the delivery en route to dropoff the courier is on their way to the dropoff location en route to pickup the courier is on their way to pickup the delivery picked up the courier has picked up the delivery courierprovidersource specifies whether a delivery is being fulfilled through self delivery or from an external third party service enum name description in house the delivery is being fulfilled through self delivery with an in house courier third party the delivery is being fulfilled by a third party service scalars bigint represents non fractional signed whole numeric values since the value may exceed the size of a 32 bit integer, it's encoded as a string boolean the boolean scalar type represents true or false date iso 8601 date only string, e g 2017 12 14 float the float scalar type represents signed double precision fractional values as specified by ieee 754 id the id scalar type represents a unique identifier, often used to refetch an object or as key for a cache the id type appears in a json response as a string; however, it is not intended to be human readable when expected as an input type, any string (such as "4") or integer (such as 4) input value will be accepted as an id iso8601datetime an iso 8601 encoded datetime @specifiedby(url https //tools ietf org/html/rfc3339 ) int the int scalar type represents non fractional signed whole numeric values int can represent values between (2^31) and 2^31 1 json represents untyped json string the string scalar type represents textual data, represented as utf 8 character sequences the string type is most often used by graphql to represent free form human readable text utctimestamp iso8601 formatted date & timestamp in utc uuid universally unique identifier as defined by rfc 4122