# API Schnittstelle aufrufen mit WebRequest (VBA)

**URL:** <https://forum.shopware.com/t/api-schnittstelle-aufrufen-mit-webrequest-vba/44230>\
**Category:** Programmierung\
**Created:** [4. März 2017 um 09:25 UTC](https://forum.shopware.com/t/api-schnittstelle-aufrufen-mit-webrequest-vba/44230 "2017-03-04T09:25:48Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![korobasti](https://avatars.discourse-cdn.com/v4/letter/k/3bc359/32.png) [@korobasti](https://forum.shopware.com/u/korobasti)\
**Post date:** [4. März 2017 um 09:25 UTC](https://forum.shopware.com/t/api-schnittstelle-aufrufen-mit-webrequest-vba/44230/1 "2017-03-04T09:25:48Z")

</div>

Hallo alle zusammen,

ich quäle jetzt solange schon rum mit der Nutzung der API Schnittstelle.

Ich bekomme beim Ausführen der WebRequest in VBA diese Fehlermeldung: {“success”:false,“message”:“Invalid or missing auth”}

Und das obwohl es im Browser eigentlich funktioniert.

- Im Browser funktioniert der Aufruf [http://BENUTZERNAME:API-KEY@DOMAIN/api/articles](http://BENUTZERNAME:API-KEY@DOMAIN/api/articles)
- RewriteRule .\* - [E=HTTP\_AUTHORIZATION:%{HTTP:Authorization}] ist in der .htaccess eingetragen

Im folgenden findet ihr den VBA Code den ich nutzen möchte, um auf die Shopware-Artikeldaten zuzugreifen.

```
Private Sub ImportData()

Dim winHttpReq As Object
Set winHttpReq = CreateObject("WinHttp.WinHttpRequest.5.1")
Dim myURL As String

  myURL = "http://BENUTZERNAME:API-KEY@SHOPDOMAIN/api/articles"

  winHttpReq.Open "GET", myURL
  winHttpReq.Send
  MsgBox winHttpReq.ResponseText
    
End Sub

```

Was muss ich ändern, damit ich endlich die Daten in meine Tabelle bekomme?

Liebe Grüße

Basti

---

<div class="post-metadata">

**Author:** ![NextMike](https://avatars.discourse-cdn.com/v4/letter/n/838e76/32.png) [@NextMike](https://forum.shopware.com/u/NextMike)\
**Post date:** [4. März 2017 um 12:48 UTC](https://forum.shopware.com/t/api-schnittstelle-aufrufen-mit-webrequest-vba/44230/2 "2017-03-04T12:48:26Z")

</div>

Ich glaube Dein Thema ist&nbsp;XHR cookie

---

<div class="post-metadata">

**Author:** ![korobasti](https://avatars.discourse-cdn.com/v4/letter/k/3bc359/32.png) [@korobasti](https://forum.shopware.com/u/korobasti)\
**Post date:** [4. März 2017 um 13:20 UTC](https://forum.shopware.com/t/api-schnittstelle-aufrufen-mit-webrequest-vba/44230/3 "2017-03-04T13:20:22Z")

</div>

> [@NextMike schrieb:](https://forum.shopware.com/profile/19433/NextMike "NextMike")
> 
> Ich glaube Dein Thema ist&nbsp;XHR cookie

Hm, also geht es darum einen Cookie über VBA zu senden? Scheint wieder ein neues Gebiet zu sein. Sicher dass es dann geht?

Kann mir nicht jemand kurz helfen und mir den entsprechenden Code schreiben? Komme auch für den Zeitaufwand auf. Einfach PN schicken.

---

<div class="post-metadata">

**Author:** ![WillemMeert](https://avatars.discourse-cdn.com/v4/letter/w/5daacb/32.png) [@WillemMeert](https://forum.shopware.com/u/WillemMeert)\
**Post date:** [5. März 2017 um 14:23 UTC](https://forum.shopware.com/t/api-schnittstelle-aufrufen-mit-webrequest-vba/44230/4 "2017-03-05T14:23:33Z")

</div>

Ich glaube es ist nicht möglich dich zu autorisieren mit&nbsp;Benutzernahme und Api-key in dem Url.

Das geht in VBA über WinHttpSetCredentials und als Authentication Scheme “Digest”.

---

<div class="post-metadata">

**Author:** ![Tinklohl](https://avatars.discourse-cdn.com/v4/letter/t/45deac/32.png) [@Tinklohl](https://forum.shopware.com/u/Tinklohl)\
**Post date:** [9. März 2017 um 13:24 UTC](https://forum.shopware.com/t/api-schnittstelle-aufrufen-mit-webrequest-vba/44230/5 "2017-03-09T13:24:30Z")

</div>

Ich kenn mich mit VBA nicht aus, aber ich denke dass “Digest”-Authentifizierung Dein Problem sein dürfte.  
Wir mussten für die Anbindung an unser WWS auch auf die “Basic”-Authentifizerung umstellen, was durch Änderungen an drei Zeilen im Shopware-Code möglich ist.

Ich habe nach folgendem Forumeintrag umgestellt und kann bezeugen, dass es funktioniert:&nbsp;

[https://forum.shopware.com/discussion/30178/api-aufruf-per-basicauth-statt-digest#Comment\_177719](https://forum.shopware.com/discussion/30178/api-aufruf-per-basicauth-statt-digest#Comment_177719)

---

<div class="post-metadata">

**Author:** ![korobasti](https://avatars.discourse-cdn.com/v4/letter/k/3bc359/32.png) [@korobasti](https://forum.shopware.com/u/korobasti)\
**Post date:** [12. März 2017 um 19:11 UTC](https://forum.shopware.com/t/api-schnittstelle-aufrufen-mit-webrequest-vba/44230/6 "2017-03-12T19:11:52Z")

</div>

Hi Tinklohl, danke für die Info. Ich kam leider noch nicht dazu deinen Tipp auszuprobieren, werde dich aber auf dem Laufenden halten.

---

<div class="post-metadata">

**Author:** ![frimipiso](https://avatars.discourse-cdn.com/v4/letter/f/a587f6/32.png) [@frimipiso](https://forum.shopware.com/u/frimipiso)\
**Post date:** [12. August 2018 um 23:19 UTC](https://forum.shopware.com/t/api-schnittstelle-aufrufen-mit-webrequest-vba/44230/7 "2018-08-12T23:19:05Z")

</div>

Hi,

ich würde auch gerne über das SW Api Daten in Excel importieren.

Seid Ihr mit dem Thema schon weitergekommen?

Danke und viele Grüsse

Jens

---

<div class="post-metadata">

**Author:** ![volkerstraehle](https://avatars.discourse-cdn.com/v4/letter/v/e47c2d/32.png) [@volkerstraehle](https://forum.shopware.com/u/volkerstraehle)\
**Post date:** [23. August 2018 um 13:25 UTC](https://forum.shopware.com/t/api-schnittstelle-aufrufen-mit-webrequest-vba/44230/8 "2018-08-23T13:25:45Z")

</div>

Ein halbwegs aktuels Excel kann .NET-dll’s einbinden. In so einer dll kann man den ganzen Zugriff auf die REST-API kapseln und die entsprechenden Funktionen aufrufen. mal nach Shopdoktor suchen, da gibt es .NET-Code dazu.
