Get-ShopifyOAuthToken

EulandaXtools — Funktionsreferenz

Get-ShopifyOAuthToken

ÜBERSICHT

Ruft einen Shopify Offline Access Token per OAuth ab (einmalig, interaktiv).

SYNTAX

Get-ShopifyOAuthToken [-Shop] <string> [-ClientId] <string> [-ClientSecret] <string> [[-Port]
    <int>] [[-Scopes] <string>] [<CommonParameters>]

BESCHREIBUNG

Startet einen lokalen HTTP-Listener, öffnet den Browser mit der Shopify- Autorisierungs-URL, fängt den Callback ab und tauscht den Authorization Code gegen einen permanenten Offline Access Token.

Der Token ist NICHT an die Maschine gebunden. Er kann auf jedem Rechner, Server oder Scheduled Task verwendet werden. Er läuft nicht ab, solange die App im Shop installiert bleibt.

WICHTIG: Diese Funktion ist interaktiv und erfordert einen Browser. Sie wird einmalig pro Shop ausgeführt, nicht im Batch-Betrieb.

Seit Januar 2026 können keine neuen Admin Custom Apps mehr im Shopify-Admin erstellt werden. Partner Dashboard Apps mit OAuth sind der einzige Weg für neue Installationen.

== EINRICHTUNG IM SHOPIFY PARTNER DASHBOARD ==

1. https://partners.shopify.com öffnen und einloggen (oder Account anlegen)

2. "Apps" -> "App erstellen" klicken

3. App-Name vergeben (z.B. "Eulanda-ERP")

4. "Konfiguration" -> neue Version erstellen

5. App-URL: beliebig (z.B. http://example.com)

6. "Allowed redirection URL(s)": http://localhost:3017/callback (muss mit dem -Port Parameter übereinstimmen, Standard 3017)

7. Bei "API-Zugriff" die benötigten Bereiche ankreuzen:

8. Version speichern und veröffentlichen (Release)

9. Unter "Überblick" -> "Client-Anmeldedaten": Client-ID und Client-Schlüssel (Client Secret) notieren

== EMPFOHLENE SCOPES ==

Die Standard-Scopes dieser Funktion decken alle EulandaXtools-Funktionen ab: Artikel-Export, Bestellimport, Kunden-Sync, Dokumenten-Upload, Theme-Anpassung, Collection-Verwaltung und Metafield-Operationen.

PARAMETER

-Shop

Type: string

Shopify-Shop-Domain, z.B. 'mein-shop.myshopify.com'.

-ClientId

Type: string

Client-ID aus dem Partner Dashboard (unter "Client-Anmeldedaten").

-ClientSecret

Type: string

Client Secret (Schlüssel) aus dem Partner Dashboard.

-Port

Type: int
Default: 3017

Lokaler Port für den HTTP-Listener (Standard: 3017). Muss mit der "Allowed redirection URL" in der App-Konfiguration übereinstimmen.

-Scopes

Type: string
Default: 'read_all_orders

Komma-separierte Liste der angeforderten Scopes. Standard: Umfassende Liste für alle EulandaXtools-Funktionen. write-Scopes beinhalten automatisch den zugehörigen read-Scope.

AUSGABEN

pscustomobject -- Objekt mit AccessToken, GrantedScopes und Shop.

BEISPIELE

# Token für einen Shop abrufen
$result = Get-ShopifyOAuthToken -Shop 'mein-shop.myshopify.com' `
  -ClientId '5d473945d182428a...' -ClientSecret 'shpss_1f7df11f...'
$result.AccessToken  # shpat_... -- diesen in Konfiguration eintragen
# Mit benutzerdefiniertem Port (muss in App-Konfiguration übereinstimmen)
$result = Get-ShopifyOAuthToken -Shop 'mein-shop.myshopify.com' `
  -ClientId '...' -ClientSecret '...' -Port 8080