clientId = '1b6430c8cc94b5e58716235abd9bbd73'; $this->clientSecret = config('services.shopify.webhook_secret'); $this->shop = 'bluefootedboobyspices.myshopify.com'; } public function install() { $callback = 'https://sms.spices.blue/shopify/callback'; $url = "https://{$this->shop}/admin/oauth/authorize" . "?client_id={$this->clientId}" . "&scope={$this->scopes}" . "&redirect_uri=" . urlencode($callback) . "&state=spicesetup"; return redirect($url); } public function callback(Request $request) { $code = $request->query('code'); if (!$code) { return response('Kein Code empfangen. ' . $request->getQueryString(), 400); } $response = Http::post("https://{$this->shop}/admin/oauth/access_token", [ 'client_id' => $this->clientId, 'client_secret' => $this->clientSecret, 'code' => $code, ]); if ($response->failed()) { return response('Token-Exchange fehlgeschlagen: ' . $response->body(), 500); } $token = $response->json('access_token'); return response("
SHOPIFY_ACCESS_TOKEN={$token}
"); } }