Hopp til innhold
skribbskribb

Utviklere

Kampanjer

Nettbutikk

Rabattkodene og tilbudene i butikken. Én regel dekker alle formene: en kode kunden skriver inn, et tilbud som slår inn av seg selv, fri frakt over et beløp, en pris bare for abonnenter. Lesing og skriving er to ulike tilganger, fordi en rabattkode er penger.

Krever at nettbutikken er slått på.

Alle sidene

Kodeeksemplene kaller en skribb-funksjon du setter opp selv. Hent klienten for språket ditt og lim den inn én gang, så kan eksemplene under limes rett etter.

GET/v1/shop/campaigns

campaigns:read

Hent alle kampanjene

Aktive først, så alfabetisk. Hver regel har med hvor mange ganger den er brukt, og hvor mange engangskoder som er laget og brukt opp.

Svaret · 200

campaignsCampaign[]
Alle reglene i butikken.
Svar
{
  "campaigns": [
    {
      "id": "b1f2…",
      "code": "SOMMER",
      "kind": "code",
      "effect": "percent",
      "value": 20,
      "min_subtotal_ore": 50000,
      "subscribers_only": false,
      "scope": null,
      "times_redeemed": 12,
      "issued": null,
      "is_active": true
    }
  ]
}
# Kaller skribb-klienten: https://skribb.no/utviklere/autentisering#klient
skribb "/shop/campaigns"

POST/v1/shop/campaigns

campaigns:write

Lag en kampanje

Samme regler som skjemaet i dashbordet: en regel som slår inn av seg selv må ha en betingelse (minste kjøp, minste antall varer eller «bare abonnenter»), og en kode som allerede finnes gir 409.

Bodyen du sender

codestringpåkrevd
Bokstaver, tall og bindestrek. Lagres og matches med store bokstaver.
kindstring
«code» (standard) eller «automatic».
effectstringpåkrevd
«percent», «amount» eller «free_shipping». Fri frakt må være «automatic».
valueinteger
Prosent 1–100, eller øre av varene.
min_subtotal_oreinteger
Minste kjøp, i øre.
min_quantityinteger
Minste antall varer.
subscribers_onlyboolean
Bare for abonnenter.
scopeobject
Se Campaign.scope.
starts_atstring
ISO-8601.
ends_atstring
ISO-8601.
max_redemptionsinteger
Tak for hele butikken.
max_per_buyerinteger
Tak per kunde.
is_activeboolean
Utelatt betyr på.

Svaret · 200

campaignCampaign
Regelen slik den ble lagret.
Bare for abonnenter, uten kode
{
  "code": "ABONNENT",
  "kind": "automatic",
  "effect": "percent",
  "value": 15,
  "subscribers_only": true
}
# Kaller skribb-klienten: https://skribb.no/utviklere/autentisering#klient
skribb "/shop/campaigns" \
  -X POST \
  -H "content-type: application/json" \
  -d '{
    "code": "SOMMER",
    "effect": "percent",
    "value": 20,
    "min_subtotal_ore": 50000
  }'

GET/v1/shop/campaigns/{id}

campaigns:read

Hent én kampanje

Svaret · 200

campaignCampaign
Regelen.
# Kaller skribb-klienten: https://skribb.no/utviklere/autentisering#klient
campaign_id="abc123"

skribb "/shop/campaigns/$campaign_id"

PATCH/v1/shop/campaigns/{id}

campaigns:write

Endre en kampanje

Felt du ikke sender, står igjen som de var. Send null for å tømme et felt som har lov til å stå tomt, for eksempel ends_at hvis kampanjen skal vare til du selv stopper den, eller max_per_buyer hvis taket skal bort. Vil du avslutte en kampanje, send is_active: false, så beholder du regelen og engangskodene til neste gang.

Bodyen du sender

codestring
Ny kode.
valueinteger
Ny prosent eller nytt beløp.
min_subtotal_oreinteger
Nytt minste kjøp.
ends_atstring
Ny sluttdato, ISO-8601.
max_per_buyerinteger
Nytt tak per kunde.
is_activeboolean
false avslutter kampanjen.

Svaret · 200

campaignCampaign
Regelen slik den nå er.
# Kaller skribb-klienten: https://skribb.no/utviklere/autentisering#klient
campaign_id="abc123"

skribb "/shop/campaigns/$campaign_id" \
  -X PATCH \
  -H "content-type: application/json" \
  -d '{
    "is_active": false
  }'

DELETE/v1/shop/campaigns/{id}

campaigns:write

Slett en kampanje

Sletter regelen og engangskodene som hører til. Bestillingene som brukte den, står urørt: de tok vare på både koden og beløpet da de ble betalt, så et gammelt salg går fortsatt opp.

Svaret · 200

# Kaller skribb-klienten: https://skribb.no/utviklere/autentisering#klient
campaign_id="abc123"

skribb "/shop/campaigns/$campaign_id" \
  -X DELETE

Objekter

Campaign

En rabattregel, slik den er lagret.

Felter

idstring
Vår id.
codestring
Koden kunden skriver inn. På en regel som slår inn av seg selv er dette bare navnet du kjenner den på.
kindstring
«code» skrives inn i kurven. «automatic» slår inn av seg selv.
effectstring
«percent», «amount» eller «free_shipping».
valueinteger
Prosent (1–100) eller øre av varene. 0 på fri frakt.
min_subtotal_oreinteger | null
Hva kurven må komme opp i. Gjelder hele kurven, også på en regel med scope.
min_quantityinteger | null
Hvor mange varer kurven må ha.
subscribers_onlyboolean
Bare for abonnenter av publikasjonen. Sjekkes på e-posten i kassen.
scopeobject | null
Hvilke varer regelen gjelder: {"kind":"category","slug":"boker"} eller {"kind":"products","ids":[…]}. null er hele kurven.
starts_atstring | null
ISO-8601. null = med en gang.
ends_atstring | null
ISO-8601. null = til du slår den av.
max_redemptionsinteger | null
Taket for hele butikken. Telles når en bestilling blir betalt.
max_per_buyerinteger | null
Hvor mange ganger én kunde.
times_redeemedinteger
Hvor mange ganger den er brukt.
issuedobject | null
Engangskoder laget på denne regelen: { total, used }. null når det ikke er laget noen.
is_activeboolean
Om den er i bruk.
created_atstring
ISO-8601.
updated_atstring
ISO-8601.

← Alle rutene