Shoporama Apps

Herunder finder du information om hvordan du udvikler Shoporama Apps

Overblik

Overordnet set giver en Shoporama app adgang til to ting, når en bruger installerer den på sin shop:

  1. REST-interfacet, og
  2. at indsætte kode på udvalgte sider

Alle kan som udgangspunkt oprette apps, men for at andre shops kan bruge ens apps, kræver det at man godkendes.

Apps oprettes på denne side.

Download vores e-conomic app, for at se et eksempel på en app der bruger vores rest-interface.

Indstillinger

Indstillingsmulighederne for apps er

Felt Indhold
Navn Kort navn. Bruges i oversigter og mails.
Beskrivelse Længere beskrivelse af hvad din app gør. Det er ikke muligt at bruge HTML-koder. Kun a-tags til links.
Kategori Valgfri kategori
Adgang Fordi din app opretter en api-token i shoppen der installerer app'en kan du vælge om du vil have skrive, læse, eller alle rettigheder til den api-token.
Pris pr. måned En månedspris som din app koster. Der laves en 80/20 fordeling af beløbet, hvor Shoporama beholder de 20 %, og udbetaler resten. Når en app er skiftet til aktiv kan du ikke længere sætte prisen op. Kun ned.
Callback URL

Én URL som kan modtage alle callbacks og events. Der tilføjes argumentet ?type={type} og &webshop_id={id} til alle kald, hvor type er nedenstående events eller hooks, og webshop_id er et unikt id på den pågældende webshop. Der sendes også tre events når app'en installeres, brugeren opdaterer indstillinger, og når den slettes. Disse er install, update, og uninstall. Sidstnævnte tre vil indeholde følgende json:

{
    "webshop_id": 1,
    "webshop_url": "https://www.example.com/",
    "app_token": "dcbfe5ad9e8af3495ca4582e364c1bce",
    "app_token_daily_limit": 10000,
    "app_token_current_usage": 200,
    "installed": 1692857535,
    "fields": {
    }
}

Bruger din app felter, hvor brugeren selv kan indtaste oplysninger, vil disse komme med i feltet fields.

For events og webhooks vil kaldet indeholde de data som er indeholdt i vores events og webhooks. Disse varierer om det er events eller produkter, ordrer, m.m.

For at validere om et callback kommer fra Shoporama tilføjer vi headeren x-app-token: {din token} til alle vores kald. Hvis den token matcher din egen, kommer callback'et fra Shoporama. Desuden komme alle callbacks fra www.shoporama.dk, så du kan også checke på ip-adressen.

Tillad kun på følgende shops Mulighed for kun at tillade app'en på en serie af webshops.
Webhooks Her vælger du hvilke webhooks du vil modtage. Du kan modtage webhooks når der foretages ændringer på ordre (status, betalt, oprettet), produkter, eller lager.
Events Her vælger du hvilke events du vil modtage. Events har mulighed for at blive sendt noget oftere end webhooks. Fx når en bruger lægger noget i kurven, eller går til betaling. Vi har følgende events: add_to_basket, update_basket, view_basket, view_address, view_shipping, view_approve, view_thanks, approved, order_created, paid, add_label, og remove_label.

REST-adgang

Når en app installeres i en shop oprettes der en api-nøgle til app'en, og med den nøgle kan der tilgåes vores rest-interface for den pågeældende shop. Api-nøgles sendes med til din callback url som feltet app_token. Bemærk at der for den api-adgang gælder samme regler som ved almindelige api-nøgler ift. forbrug.

Ud over adgang til vores almindelige rest-interface er det muligt at trække en liste over webshops der har installeret din app ved at kalde:

    GET /REST/app-status HTTP/2
    Host: www.shoporama.dk
    Authorization: App {din token}

Bemærk at auth-scheme er App.

Indsæt kode

Det er muligt at indsætte kode fire steder på de shops der installerer app'en. Det er efter , efter , før og før . De forudsætter dog at de html-elementer er tilstede i den shop der installerer den. Det er muligt at indsætte kode på alle sider, eller kun produkter, landingssider, kategorier, statiske sider, blogindlæg, eller på /search, /basket, /address, /shipping, /approve, /thanks, /order, og /also.

Det er myligt at bruge Smarty-kode i den kode der indsættes, og det er muligt at tilgå de værdier brugeren har indtastet under felter som <{$app_vars.var_name}>.

Ovenstående kan kombineres på alle de måder man ønsker, så det er muligt at indsætte et stykke kode i på alle sider, men på /thanks vil man tilføje noget ekstra.

Felter

Felter gør det muligt for dig at oprette nogle input felter som dine brugere kan udfylder når de installerer app'en. Der kan oprettes så mange felter du ønsker. Værdierne kommer med i callbacks når brugeren opdaterer indstillingerne.

Vi understøtter følgende felttyper: text, integer, boolean, list, color, richtext, code.

For lister er det muligt at bruge eksterne lister. Dvs. når brugeren ser admin trækkes værdierne fra https://example.com/callback?type=field&name={name}, og den side skal returnerer json i key:value format. Fx:

{
    "key1": "value1",
    "key2": "value2"
}

Dette website bruger cookies

Vi benytter cookies til at tilpasse indhold og annoncer, vise sociale mediefunktioner, og analysere vores webtrafik.

Oplysninger om din brug af vores hjemmeside deles også med vores partnere inden for sociale medier, annoncering, og analyse, som kan kombinere dem med andre data fra dine interaktioner med deres tjenester.

Læs mere om vores cookies