Bestill en samtale

Fyll ut skjemaet, så ringer vi deg tilbake så snart som mulig

Nødsituasjon

I nødstilfeller eller ved driftsstans kan du sende en SMS til vår nødtelefon

Vakttelefon (kun SMS)

+45 29 70 15 95

Send en SMS med følgende informasjon:

  • Ditt navn og nettbutikk
  • Beskrivelse av problemet
  • Telefonnummeret ditt for tilbakeringing

Notater: Denne tjenesten er kun for kritiske situasjoner der nettbutikken din er nede eller har alvorlige problemer. For vanlig support, vennligst bruk våre normale supportkanaler.

OAuth Integration

Byg sikre integrationer med Shoporama API ved hjælp af OAuth 2.0

Hvad er OAuth?

OAuth gør det muligt for eksterne applikationer at få sikker adgang til Shoporama API'et på vegne af dine brugere, uden at de skal dele deres login-oplysninger.

Trygt og sikkert

Ingen deling af passwords. Brugerne logger ind direkte hos Shoporama

Nem integration

Standard OAuth 2.0 flow som du kender fra andre tjenester

Fleksibel

Vælg præcist hvilke rettigheder din app skal have

OAuth Flow - Trin for trin

1

Send bruger til Shoporama

Appen din sender brukeren til Shoporamas OAuth-sluttpunkt

https://www.shoporama.dk/admin/oauth/login?
  client_id=Din_App_Navn
  redirect_uri=https://example.com/callback
  state=unik_session_id
2

Bruker logger inn

Brukeren logger inn med Shoporama-legitimasjonen sin og velger:

  • Hvilken butikk du skal gi tilgang til
  • Tilgangsnivå (lese-, skrive- eller full tilgang)
3

Motta API-token

Etter autentisering sendes brukeren tilbake til appen din med tokenet:

https://example.com/callback?
  token=3035a113a0d324783628...
  shop_url=demo.shoporama.dk
  shop_name=Demo Shop
  api_endpoint=https://www.shoporama.dk/REST
  webshop_id=1
  access_level=all
  state=unik_session_id
4

Bruk API-et

Bruk tokenet til å ringe Shoporama API:

curl -H "Authorization: 3035a113a0d324783628..." \
     https://www.shoporama.dk/REST/product

Klar til at komme i gang?

Begynn med å teste OAuth-flyten, eller les mer om API-et

Komplette Implementeringseksempler

Fuld OAuth flow implementation - klar til copy/paste

Vanilla PHP Implementation

Ren PHP uden frameworks - en enkelt fil der håndterer hele OAuth flowet

<?php
// oauth.php - Gem denne fil på din server
session_start();

// Konfiguration - RET DISSE VÆRDIER
$CLIENT_ID = "Dit App Navn";
$REDIRECT_URI = "https://din-side.dk/oauth.php";
$OAUTH_URL = "https://www.shoporama.dk/admin/oauth/login";

// Start OAuth
if (isset($_GET["login"])) {
    $_SESSION["state"] = bin2hex(random_bytes(16));
    $url = $OAUTH_URL . "?" . http_build_query([
        "client_id" => $CLIENT_ID,
        "redirect_uri" => $REDIRECT_URI,
        "state" => $_SESSION["state"]
    ]);
    header("Location: $url");
    exit;
}

// Modtag token
if (isset($_GET["token"]) && $_GET["state"] === $_SESSION["state"]) {
    $_SESSION["token"] = $_GET["token"];
    $_SESSION["api_url"] = $_GET["api_endpoint"];
    echo "Success! Token gemt.";
    echo "
Test API"; exit; } // Test API if (isset($_GET["test"]) && isset($_SESSION["token"])) { $ch = curl_init($_SESSION["api_url"] . "/product?limit=1"); curl_setopt($ch, CURLOPT_HTTPHEADER, ["Authorization: " . $_SESSION["token"]]); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); $result = curl_exec($ch); echo "
" . htmlspecialchars($result) . "
"; exit; } // Start side echo "Login med Shoporama"; ?>

Sådan bruger du det:

  1. Kopier koden til en fil kaldet oauth.php
  2. Ret $CLIENT_ID og $REDIRECT_URI
  3. Upload filen til din server
  4. Besøg siden og klik "Login med Shoporama"

Feilsøking og vanlige problemer

Vanlige OAuth-feil

access_denied

Brukeren ble nektet tilgang. Vis en vennlig melding og la dem prøve igjen.

invalid_client

Ukjent client_id. Kontroller at appnavnet ditt er riktig.

invalid_redirect_uri

Omdirigerings-URI samsvarer ikke. Må være nøyaktig samme URL.

state_mismatch

Statusparameteren stemmer ikke overens. Mulig CSRF-angrep eller tidsavbrudd i økten.

API-feil

401 Unauthorized

Tokenet er ugyldig eller utløpt. Be brukeren om å logge på igjen.

403 Forbidden

Tokenet har ikke de nødvendige rettighetene. Sjekk tilgangsnivået.

429 Too Many Requests

Takstgrensen er nådd. Vennligst vent til neste forespørsel.

500 Server Error

Intern feil. Vennligst prøv igjen senere eller kontakt kundestøtte.

Tips om feilsøking

Test med OAuth Test Client

Bruk testklienten vår for å bekrefte at OAuth-flyten fungerer som den skal.

Test OAuth Flow →

Loggfør alle parametere

Loggstatus, token og andre parametere for å feilsøke problemer.

Sikkerhet og beste praksis

Token-lagring

  • • Aldri lagre tokens i informasjonskapsler eller localStorage
  • • Bruk økter på serversiden eller kryptert database
  • • Krypter tokens før lagring
  • • Slett tokens når de ikke lenger er i bruk

CSRF-beskyttelse

  • • Bruk alltid tilstandsparameteren
  • • Generer unik tilstand for hver økt
  • • Bekreft tilstand i tilbakeringing
  • • Timeout-tilstand etter kort tid

HTTPS kreves

  • • Bruk kun HTTPS for redirect_uri
  • • Alle API-kall må gå via HTTPS
  • • Unntak: localhost for utvikling
  • • Sjekk gyldigheten til SSL-sertifikatet

Forklaring av tilgangsnivåer

Nivå Beskrivelse Tillatt Ikke tillatt
read Lesetilgang til alle data GET-forespørsler til alle endepunkter POST-, PUT- og DELETE-forespørsler
write Lese og skrive data Alle HTTP-metoder Slett nettbutikk, endre eierskap
all Full administratortilgang Alt, inkludert farlige operasjoner Ingenting - full kontroll

Anbefaling: Begynn med "lesetilgang" under utviklingen, og oppgrader til "skrivetilgang" eller "alle" bare når det er nødvendig for funksjonaliteten i applikasjonen.

Komplett API-dokumentasjon

Se alle tilgjengelige endepunkter, metoder og parametere i vår REST API-dokumentasjon

Se API-dokumentasjon