Zum Hauptteil navigieren

Erste Schritte (API)

API: Drive

In diesem Dokument wird die Drive API behandelt. Wenn du die Drive (classic)-API verwendest, lies das Tutorial für die ersten Schritte mit den Drive (classic)-APIs.

Mit der Drive-API kannst du unsere On-Demand-Logistikplattform nutzen, sodass du Waren auch ohne eigene Lieferteams schnell und einfach ausliefern kannst. Die Drive-API wurde entwickelt, um die Durchführung deiner Lieferungen so einfach wie möglich zu gestalten.

Ein typischer Ablauf:

  • Ein Angebot anfordern (optional). Dies informiert dich über die geschätzte Abholzeit und die Abholkosten für deine Lieferung.
  • Eine Lieferung anfordern oder ein Angebot annehmen.
  • Die Bestellung wird abgeschlossen.

So erstellst du eine Lieferung

Bevor du loslegst, solltest du einen Zugriffsschlüssel erstellen und einen JWT generieren.

const axios = require('axios')
const { v4: uuidv4 } = require('uuid')

const body = JSON.stringify({
external_delivery_id: uuidv4(), // keep track of the generated id here or in the response
pickup_address: '901 Market Street 6th Floor San Francisco, CA 94103',
pickup_business_name: 'Wells Fargo SF Downtown',
pickup_phone_number: '+16505555555',
pickup_instructions: 'Enter gate code 1234 on the callbox.',
dropoff_address: '901 Market Street 6th Floor San Francisco, CA 94103',
dropoff_business_name: 'Wells Fargo SF Downtown',
dropoff_phone_number: '+16505555555',
dropoff_instructions: 'Enter gate code 1234 on the callbox.',
order_value: 1999,
})

axios
.post('https://openapi.doordash.com/drive/v2/deliveries', body, {
headers: {
Authorization: 'Bearer ' + token,
'Content-Type': 'application/json',
},
})
.then(function (response) {
console.log(response.data)
})
.catch(function (error) {
console.log(error)
})

So ermittelst du den Status einer Lieferung

const axios = require('axios')

axios
.get(
'https://openapi.doordash.com/drive/v2/deliveries/{external_delivery_id}',
{
headers: {
Authorization: 'Bearer ' + token,
'Content-Type': 'application/json',
},
},
)
.then(function (response) {
console.log(response.data)
})
.catch(function (error) {
console.log(error)
})

Wichtige Hinweise:

Bitte führe alle Vorgänge, bei denen einer der 50x-Antwortcodes ausgegeben wurde, erneut durch, da es sich um einen vorübergehenden Fehler handeln könnte. Wir empfehlen bis zu drei Wiederholungsversuche mit einem exponentiellen Backoff zwischen den einzelnen Versuchen.