AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

DHL-API mit RESTClient

Ein Thema von Ykcim · begonnen am 8. Jan 2025 · letzter Beitrag vom 10. Jan 2025
Antwort Antwort
Seite 3 von 4     123 4      
shebang

Registriert seit: 7. Feb 2020
132 Beiträge
 
Delphi 11 Alexandria
 
#21

AW: DHL-API mit RESTClient

  Alt 8. Jan 2025, 17:30
Wenn das hier funktioniert, dann ist wohl dein API-Key nicht korrekt:
Code:
curl https://api-eu.dhl.com/track/shipments?trackingNumber=0 -H DHL-API-Key:demo-key
  Mit Zitat antworten Zitat
hstreicher

Registriert seit: 21. Nov 2009
222 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#22

AW: DHL-API mit RESTClient

  Alt 8. Jan 2025, 18:18
Hello,

DHL also offers its own client for generating the labels
dhl pollingclient

it periodically checks for/reads a simple csv file with the address and parcel data (sizes, weight (customs codes for foreign shipments))
and returns the file with the tracking number so it can be read into your system


regards
hannes
  Mit Zitat antworten Zitat
TUhr

Registriert seit: 25. Sep 2021
23 Beiträge
 
#23

AW: DHL-API mit RESTClient

  Alt 8. Jan 2025, 22:50
Hallo,

ich habe das vor einigen Jahren mal in C++ Builder realisiert über die HTTP Schnittstelle und SOAP.
Meine Anwendung erstellt allerdings nur Labels (National) und prüft Adressen.

Wenn da Interesse besteht bitte Bescheid geben.

MfG
Thorsten Uhr
  Mit Zitat antworten Zitat
Ykcim
Online

Registriert seit: 29. Dez 2006
Ort: NRW
843 Beiträge
 
Delphi 10.4 Sydney
 
#24

AW: DHL-API mit RESTClient

  Alt Gestern, 08:37
Guten Morgen zusammen,

@Thorsten, vielen Dank für das Angebot. Da hätte ich großes Interesse dran. Ich muss zwar eine internationale Schnittstelle bauen, aber ich denke, es wird sehr hilfreich sein!
Patrick
  Mit Zitat antworten Zitat
Benutzerbild von dummzeuch
dummzeuch

Registriert seit: 11. Aug 2012
Ort: Essen
1.638 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#25

AW: DHL-API mit RESTClient

  Alt Gestern, 11:24
Wenn das hier funktioniert, dann ist wohl dein API-Key nicht korrekt:
Code:
curl https://api-eu.dhl.com/track/shipments?trackingNumber=0 -H DHL-API-Key:demo-key
Das ist definitiv eine gute Idee:

Damit kann man auch ein Delphi-Programm füttern und testen, ob es prinzipiell funktioniert.

Ich hatte auf der Seite von DHL gar nichts zu diesem Demo-Datensatz und Demo-Key gelesen, aber ich bin auch nicht besonders tief eingestiegen, da ich aktuell keine Verwendung dafür habe.
Thomas Mueller
  Mit Zitat antworten Zitat
Ykcim
Online

Registriert seit: 29. Dez 2006
Ort: NRW
843 Beiträge
 
Delphi 10.4 Sydney
 
#26

AW: DHL-API mit RESTClient

  Alt Gestern, 14:59
Das habe ich getestet - diese Möglichkeit hatte ich nicht gesehen.
Hier bekomme ich über CURL ein Ergebnis geliefert.

Ich vermute, dass mein Key nicht zu der API passt. Für die API würde ich einen housebill Code benötigen. Eine Sendungsnummer kann man darüber wohl auch ermitteln, aber das hat nicht funktioniert. Ich habe jetzt weitere API's der App hinzugefügt, die aber noch nicht alle freigeschaltet wurden.

Wenn ich schlauer bin, melde ich mich wieder!

Vielen Dank
Patrick
Patrick
  Mit Zitat antworten Zitat
TUhr

Registriert seit: 25. Sep 2021
23 Beiträge
 
#27

AW: DHL-API mit RESTClient

  Alt Gestern, 23:25
Hallo,

Diese Datei als Stream laden und die Platzhalter in eckigen Klammern mit Deinen Parametern ersetzen :

Code:
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:cis="http://dhl.de/webservice/cisbase" xmlns:ns="http://dhl.de/webservices/businesscustomershipping/3.0">
   <soapenv:Header>
      <cis:Authentification>
         <cis:user>[Benutzername]</cis:user>
         <cis:signature>[Passwort]</cis:signature>
      </cis:Authentification>
   </soapenv:Header>
   <soapenv:Body>
      <ns:CreateShipmentOrderRequest>
         <ns:Version>
            <majorRelease>3</majorRelease>
            <minorRelease>1</minorRelease>
         </ns:Version>
         <ShipmentOrder>
            <sequenceNumber></sequenceNumber>
            <Shipment>
               <ShipmentDetails>
                  <product>V01PAK</product>
                  <cis:accountNumber>[Produkt]</cis:accountNumber>
                  <customerReference>[Sendungsreferenz]</customerReference>
                  <shipmentDate>[Sendungsdatum]</shipmentDate>
                  <costCentre></costCentre>
                  <ShipmentItem>
                     <weightInKG>[Gewicht]</weightInKG>
                  </ShipmentItem>
                  <Service>
                  </Service>
               </ShipmentDetails>
               <Shipper>
                  <Name>
                     <cis:name1>Xxxxxxx GmbH</cis:name1>
                     <cis:name2></cis:name2>
                     <cis:name3></cis:name3>
                  </Name>
                  <Address>
                     <cis:streetName>Xxxxxxstrasse</cis:streetName>
                     <cis:streetNumber>4</cis:streetNumber>
                     <cis:zip>53225</cis:zip>
                     <cis:city>Bonn</cis:city>
                     <cis:Origin>
                        <cis:country></cis:country>
                        <cis:countryISOCode>DE</cis:countryISOCode>
                     </cis:Origin>
                  </Address>
                  <Communication>
                     <!--Optional:-->
                     <cis:phone>+49228xxxxxx</cis:phone>
                     <cis:email>info@xxxxxx.de</cis:email>
                     <!--Optional:-->
                     <cis:contactPerson>Kontaktperson Absender</cis:contactPerson>
                  </Communication>
               </Shipper>
               <Receiver>
                  <cis:name1>[EmpfaengerName1]</cis:name1>
                  <Address>
                     <cis:name2>[EmpfaengerName2]</cis:name2>
                     <cis:name3>[EmpfaengerName3]</cis:name3>
                     <cis:streetName>[EmpfaengerStrasse]</cis:streetName>
                     <cis:streetNumber>[EmpfaengerHausnummer]</cis:streetNumber>
                     <cis:zip>[EmpfaengerPLZ]</cis:zip>
                     <cis:city>[EmpfaengerOrt]</cis:city>
                     <cis:Origin>
                        <cis:country></cis:country>
                        <cis:countryISOCode>DE</cis:countryISOCode>
                     </cis:Origin>
                  </Address>
               </Receiver>
            </Shipment>
            <PrintOnlyIfCodeable active="1"/>
         </ShipmentOrder>
         <labelResponseType>URL</labelResponseType>
         <groupProfileName></groupProfileName>
         <labelFormat>910-300-610</labelFormat>
         <labelFormatRetoure></labelFormatRetoure>
         <combinedPrinting>0</combinedPrinting>
      </ns:CreateShipmentOrderRequest>
   </soapenv:Body>
</soapenv:Envelope>
Der folgende Code ist zwar in C++, aber ich denke den kannst Du einfach in Delphi übersetzen :

Code:
IdHTTP1->Request->BasicAuthentication=true;
IdHTTP1->Request->Username=ApplicationsIDEdit->Text;
IdHTTP1->Request->Password=ApplicationsTokenEdit->Text;
IdHTTP1->Request->CustomHeaders->Clear();
IdHTTP1->Request->CustomHeaders->Add("SOAPAction: \"urn:createShipmentOrder\"");
Ergebnis=IdHTTP1->Post("https://cig.dhl.de/services/production/soap",StreamData);
Als Ergebnis erhälst Du die Paketnummer und einen Downloadurl des Labels.

MfG
Thorsten Uhr
  Mit Zitat antworten Zitat
Ykcim
Online

Registriert seit: 29. Dez 2006
Ort: NRW
843 Beiträge
 
Delphi 10.4 Sydney
 
#28

AW: DHL-API mit RESTClient

  Alt Heute, 09:58
Hallo Thorsten,
klasse! Vielen Dank!
Patrick
  Mit Zitat antworten Zitat
Ykcim
Online

Registriert seit: 29. Dez 2006
Ort: NRW
843 Beiträge
 
Delphi 10.4 Sydney
 
#29

AW: DHL-API mit RESTClient

  Alt Heute, 10:00
Hallo Zusammen,

ich habe soeben die API Shipment Tracking - Unified freigeschaltet bekommen. Mit folgendem Aufruf in der cmd-Konsole bekomme ich damit jetzt das richtige Ergebnis:
curl https://api-eu.dhl.com/track/shipments?trackingNumber=00341434296527125347 -H DHL-API-Key:xxXXXxxXXXXXxxXX Die xxXXXxxXXXXXxxXX gegen den API-Key tauschen.

Vielen Dank für Eure Unterstützung
Patrick
Patrick
  Mit Zitat antworten Zitat
Rollo62

Registriert seit: 15. Mär 2007
4.134 Beiträge
 
Delphi 12 Athens
 
#30

AW: DHL-API mit RESTClient

  Alt Heute, 10:21
ich habe soeben die API Shipment Tracking - Unified freigeschaltet bekommen.
Sorry wenn ich so blöd nachfrage, was war denn jetzt die Lösung?
- Fehlende Freischaltung im Dashboard?
- Die richtige curl URI?
- Das Demo was TUhr zuletzt für Delphi gepostet hat?
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 3 von 4     123 4      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:55 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz