it-frosch
Goto Top

Powershell REST API - Bearer Frage

Guten Morgen Kollegen,

ich möchte per Powershell mit einer REST API arbeiten. Ich habe vom Anbieter einen Bearer Token bekommen und das was ich machen will bereits erfolgreich mit Postman getestet.

Jetzt will ich bestimmte Änderungen aber mit Powershell skripten.

Aktuell scheitere ich schon an der Bearer Authentitication. Trotz verschiedener Beispiele habe ich einen Fehler drin den ich einfach nicht finde. Wäre schön wenn mir jemand auf's Pferd helfen könnte.

$Token = "-iro-8e9xG8orIzGt8fTLzULbo842gjAtE7t4"  
$url = "https://api.beispiel.de/api/data/subdata/"  
$method = "GET"  

$response = Invoke-RestMethod -Uri $url -Method $method -Authentication "Bearer"  

Als Antwort bekomme ich: 
$response = Invoke-RestMethod -Uri $url -Method $method -Authentication "Bearer"  
Invoke-RestMethod : Es wurde kein Parameter gefunden, der dem Parameternamen "Authentication" entspricht.  
In Zeile:9 Zeichen:57
+ ... = Invoke-RestMethod -Uri $url -Method $method -Authentication "Bearer ...  
+                                                  ~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidArgument: (:) [Invoke-RestMethod], ParameterBindingException
    + FullyQualifiedErrorId : NamedParameterNotFound,Microsoft.PowerShell.Commands.InvokeRestMethodCommand

Das verstehe ich nicht, da ich doch den Parameter -Authentication angegeben und Token auch definiert habe.

Grüße vom it-frosch

Content-Key: 42235969328

Url: https://administrator.de/contentid/42235969328

Printed on: April 27, 2024 at 08:04 o'clock

Member: michi1983
michi1983 Feb 02, 2024 at 08:05:07 (UTC)
Goto Top
Hallo,

du hast ihn zwar angegeben, aber es sieht so aus als dass die Methode oder Funktion die du verwendest in Powershell diesen Parameter nicht kennt.

Gruß
Mitglied: 11078840001
Solution 11078840001 Feb 02, 2024 updated at 08:30:22 (UTC)
Goto Top
Mit Powershell 5 musst du den "Authorization" Header setzen das kennt noch keinen Authentication Parameter.
# ....
$response = Invoke-RestMethod -Uri $url -Method $method -Headers @{"Authorization" = "Bearer $token"}  
RTFM

da ich doch den Parameter -Authentication angegeben und Token auch definiert habe.
Nö hast du nicht, du hast nur ne Variable mit dem Token gesetzt aber ihn gar nicht genutzt , und nen Parameter "Authentication" gibbet ned in der PS 5 erst ab PowerShell 6.0!!


https://learn.microsoft.com/en-us/powershell/module/microsoft.powershell ...
This feature was added in PowerShell 6.0.0.

☠️
Member: it-frosch
it-frosch Feb 02, 2024 at 09:07:14 (UTC)
Goto Top
@abamakabra

Genial ! Das war es. Vielen lieben Dank.

Grüße vom it-frosch