Webhook - Job

Webhooks are notifications sent by us to an HTTP endpoint which ideally is going to be redirected to one of your services. They are useful for you to be notified whenever something important happens on our side that you should know.

All the notifications are sent as a POST HTTP request to an endpoint that you are going to tell us along with a optionally configured authentication key that you can also send to us, so you can check if the notification is coming from us.

To configure the webhook URL, get in contact with us.

Request Header

This is an example of the request header you will receive:

host: YOUR_WEBHOOK_URL
Accept: */*
Content-Type: application/json
User-Agent: Typhoeus - https://github.com/typhoeus/typhoeus
X-API-KEY: YOUR_API_KEY_HERE
X-APIKEY: YOUR_API_KEY_HERE
X-Signature: sha1=148a6d4a0e95dada696d20f702caf027b548704a
Content-Length: 1373
Connection: keep-alive

This webhook

It is triggered whenever a Job is created or gets updated (eg: when its state changes)

Here is payload example you are going to receive:

{
    "action": "update",
    "payload": {
        "id": "20191107-85bddcc4",
        "job": {
            "allowed_transport_modes": [
                "scooter"
            ],
            "billing_identifier": null,
            "courier": null,
            "created_at": "2019-11-07T14:24:37.048+00:00",
            "earliest_collection_at": "2019-11-23T07:33:34Z",
            "feedback_given": false,
            "id": "20191107-85bddcc4",
            "kind": "partner_on_demand",
            "known_costs": {
                "adjustment_cost": "0.0",
                "delivery_cost": "0.0",
                "pickups_cost": "0.0",
                "service_fee": "0.0",
                "service_fee_percent": "0.0",
                "subtotal_cost": "0.0",
                "surcharge_cost": "0.0",
                "total_cost": "0.0"
            },
            "metadata": {},
            "orders": [
                {
                    "dropoff": {
                        "arrived_at": null,
                        "constraint": null,
                        "contact_name": "Tim Linssen",
                        "contact_phone": "+971599999998",
                        "finished_at": null,
                        "id": "o-2061866",
                        "item_quantity_count": 5,
                        "items": [
                            {
                                "allowed_eans": [],
                                "children": [],
                                "dimensions": null,
                                "ean": null,
                                "gid": "gid://quiqup/Job::Order::Item/3032928",
                                "id": 3032928,
                                "image": null,
                                "metadata": {},
                                "name": "Chelo Kebab",
                                "notes": null,
                                "parcel_barcode": null,
                                "price": "0.0",
                                "product_image_url": null,
                                "quantity": 2,
                                "quiqee_picking_order": null,
                                "section": [],
                                "source_gid": null,
                                "state": null,
                                "total_cost": -1,
                                "weight": null
                            },
                            {
                                "allowed_eans": [],
                                "children": [],
                                "dimensions": null,
                                "ean": null,
                                "gid": "gid://quiqup/Job::Order::Item/3032929",
                                "id": 3032929,
                                "image": null,
                                "metadata": {},
                                "name": "Slice of Margherita pizza",
                                "notes": null,
                                "parcel_barcode": null,
                                "price": "0.0",
                                "product_image_url": null,
                                "quantity": 3,
                                "quiqee_picking_order": null,
                                "section": [],
                                "source_gid": null,
                                "state": null,
                                "total_cost": -1,
                                "weight": null
                            }
                        ],
                        "location": {
                            "address1": "Emirattes Hills",
                            "address2": "1006 B",
                            "apartment_number": null,
                            "building_name": null,
                            "coords": [
                                25.0616772,
                                55.1599898
                            ],
                            "county": null,
                            "name": null,
                            "notes": null,
                            "partner_location_id": null,
                            "postcode": null,
                            "town": "Dubai"
                        },
                        "notes": "",
                        "position": 2,
                        "state": "pending",
                        "tracking_token": "881838045653bc7eb9306b5a9b93741d",
                        "tracking_url": "https://track.staging.quiqup.com/881838045653bc7eb9306b5a9b93741d",
                        "waypoint_notification": {
                            "id": 18600,
                            "job_pickup_id": 1160413,
                            "sent_at": null
                        },
                        "waypoint_type": "dropoff"
                    },
                    "id": 248665,
                    "items": [
                        {
                            "allowed_eans": [],
                            "children": [],
                            "dimensions": null,
                            "ean": null,
                            "gid": "gid://quiqup/Job::Order::Item/3032928",
                            "id": 3032928,
                            "image": null,
                            "metadata": {},
                            "name": "Chelo Kebab",
                            "notes": null,
                            "parcel_barcode": null,
                            "price": "0.0",
                            "product_image_url": null,
                            "quantity": 2,
                            "quiqee_picking_order": null,
                            "section": [],
                            "source_gid": null,
                            "state": null,
                            "total_cost": -1,
                            "weight": null
                        },
                        {
                            "allowed_eans": [],
                            "children": [],
                            "dimensions": null,
                            "ean": null,
                            "gid": "gid://quiqup/Job::Order::Item/3032929",
                            "id": 3032929,
                            "image": null,
                            "metadata": {},
                            "name": "Slice of Margherita pizza",
                            "notes": null,
                            "parcel_barcode": null,
                            "price": "0.0",
                            "product_image_url": null,
                            "quantity": 3,
                            "quiqee_picking_order": null,
                            "section": [],
                            "source_gid": null,
                            "state": null,
                            "total_cost": -1,
                            "weight": null
                        }
                    ],
                    "partner_order_id": "XYZ123456",
                    "payment_amount": "10.5",
                    "payment_mode": "paid_on_delivery",
                    "pickup": {
                        "arrived_at": null,
                        "constraint": null,
                        "contact_name": "Rafael Soares",
                        "contact_phone": "+971599999999",
                        "finished_at": null,
                        "id": "o-2671689",
                        "item_quantity_count": 5,
                        "items": [
                            {
                                "allowed_eans": [],
                                "children": [],
                                "dimensions": null,
                                "ean": null,
                                "gid": "gid://quiqup/Job::Order::Item/3032928",
                                "id": 3032928,
                                "image": null,
                                "metadata": {},
                                "name": "Chelo Kebab",
                                "notes": null,
                                "parcel_barcode": null,
                                "price": "0.0",
                                "product_image_url": null,
                                "quantity": 2,
                                "quiqee_picking_order": null,
                                "section": [],
                                "source_gid": null,
                                "state": null,
                                "total_cost": -1,
                                "weight": null
                            },
                            {
                                "allowed_eans": [],
                                "children": [],
                                "dimensions": null,
                                "ean": null,
                                "gid": "gid://quiqup/Job::Order::Item/3032929",
                                "id": 3032929,
                                "image": null,
                                "metadata": {},
                                "name": "Slice of Margherita pizza",
                                "notes": null,
                                "parcel_barcode": null,
                                "price": "0.0",
                                "product_image_url": null,
                                "quantity": 3,
                                "quiqee_picking_order": null,
                                "section": [],
                                "source_gid": null,
                                "state": null,
                                "total_cost": -1,
                                "weight": null
                            }
                        ],
                        "location": {
                            "address1": "1st Road",
                            "address2": "104G",
                            "apartment_number": null,
                            "building_name": null,
                            "coords": [
                                25.0559987,
                                55.1631158
                            ],
                            "county": null,
                            "name": null,
                            "notes": "Go directly to the kitchen on the first floor",
                            "partner_location_id": null,
                            "postcode": null,
                            "town": "Dubai"
                        },
                        "notes": "",
                        "position": 1,
                        "state": "pending",
                        "tracking_token": "1d66a26b2a51861d3026eef4900047e2",
                        "tracking_url": "https://track.staging.quiqup.com/1d66a26b2a51861d3026eef4900047e2",
                        "waypoint_notification": {
                            "id": 18599,
                            "job_pickup_id": 1160412,
                            "sent_at": null
                        },
                        "waypoint_type": "pickup"
                    }
                }
            ],
            "package_detail": null,
            "scheduled_for": null,
            "state": "pending_assignment",
            "state_updated_at": "2019-11-07T14:26:34.219+00:00",
            "submitted_at": "2019-11-07T14:26:33.949+00:00",
            "transport_mode": "scooter"
        },
        "metadata": {},
        "state": "pending_assignment"
    },
    "sent_at": "2019-11-07T14:26:34Z",
    "type": "job"
}
object
action
string
1 validation + required
type
string
1 validation + required
payload
object
required
sent_at
string
1 validation + required