Udviklere

PUT/tcr/v2/campaign/{campaignId}

Opdater en beskedkampagne

Ret kampagnens indhold, kontrollér det gemte resultat, og hold anmodninger om gennemgang og beslutninger om fornyelse udtrykkelige.

På denne side
  1. Ret en kampagne uden at oprette endnu en registrering
  2. Vælg de felter, der faktisk er ændret
  3. Indsend en målrettet rettelse
  4. Hent kampagnen igen
  5. Håndter begrænsninger og usikre resultater

Ret en kampagne uden at oprette endnu en registrering

Brug denne rute til at rette en eksisterende kampagnes beskrivelse, beskedeksempler, forklaring af samtykke eller understøttede indholdsegenskaber. Behold kampagnens ID og dens nuværende brand og anvendelsestilfælde. En ny registrering er ikke måden at gentage et forsøg på at rette en eksisterende kampagne på.

Godkend dig med en aktiveret API-konto via HTTPS fra en tilladt kilde-IP-adresse. Kun en kampagne, der tilhører den pågældende konto, er tilgængelig. Hent dens aktuelle tilstand, før du forbereder ændringer; udløbne kampagner kan ikke opdateres gennem denne arbejdsgang.

curl --silent --show-error --fail-with-body --user "$API_USER:$API_PASSWORD" \
  "https://api.multitel.net/tcr/v2/campaign/$CAMPAIGN_ID"

Vælg de felter, der faktisk er ændret

Klargør campaign-update.json med de understøttede ændringer. Den nuværende portal sender kun ændrede kampagnefelter og sender ikke brandId, usecase, campaignId eller statusoplysninger, som kun indgår i svar. Direkte API-opdateringer bruger også et JSON-objekt med felter, ikke portalens omsluttende changes/version-struktur.

Felter til opdatering af kampagner
FelterHvad du skal angive
description, messageFlowEn præcis beskrivelse af tjenesten og af, hvordan personer giver samtykke, modtager beskeder og trækker samtykket tilbage. Hvert felt tillader 40–4096 tegn.
sample1–sample5Realistiske eksempler for denne kampagne med 20–1024 tegn pr. eksempel, der ikke er tomt. Behold det antal eksempler, som det kvalificerede anvendelsestilfælde kræver; send ikke uvedkommende beskeder.
helpMessage, optinMessage, optoutMessageRelevante svar til modtagerne på op til 1024 tegn. Overhold minimumskravet på 20 tegn, når det er påkrævet, og forklar den faktiske tjeneste. Gennemgå de aktuelle samtykkekrav, før du tømmer et felt.
optinKeywords, optoutKeywords, helpKeywordsKommaseparerede nøgleord uden mellemrum på op til 255 tegn. Sørg for, at svarene stemmer overens med den faktiske håndtering af nøgleord.
privacyPolicyLink, termsAndConditionsLinkRelevante offentlige URL-adresser på op til 2048 tegn, som beskriver tjenestens faktiske praksis.
embeddedLinkSampleEt repræsentativt link, som beskederne vil indeholde, på op til 255 tegn.
numberPool, embeddedLink, embeddedPhone, ageGated, directLendingKampagnens faktiske egenskaber som booleske JSON-værdier. Brug false, ikke strengen "false", når du deaktiverer en af dem.
autoRenewalDet offentlige API-skema understøtter denne booleske JSON-værdi, selvom portalens almindelige editor til kampagneindhold ikke viser den. Deaktivering af fornyelse ophæver ikke en eksisterende minimumsforpligtelse og fjerner ikke beløb, der allerede er forfaldne.
resellerIdSkemaet giver også mulighed for tilknytning til en forhandler. Dette ligger uden for portalens almindelige formular til rettelse af indhold. Brug ikke dette felt til at flytte en kampagne mellem kunder, og antag ikke, at API konfigurerer operatørtjenester for en anden forhandler.

Opdateringsskemaet tilbyder ikke brandId, usecase, subscriberOptin, subscriberOptout eller subscriberHelp som felter, der kan ændres. Kopiér ikke et komplet datasæt til oprettelse af en kampagne ind i en opdatering. Se den aktuelle kvalifikation ved gennemgang af kravene til beskeder.

Indsend en målrettet rettelse

Dette eksempel illustrerer en tjeneste til påmindelser om aftaler. Tilpas det til kampagnens faktiske tjeneste og samtykkeforløb, før du bruger det.

{
  "description": "Appointment reminders requested by customers of the registered business.",
  "sample1": "Example business: Your requested appointment reminder is ready. Reply STOP to opt out."
}
curl --silent --show-error --fail-with-body --user "$API_USER:$API_PASSWORD" \
  --request PUT \
  --header 'Content-Type: application/json' \
  --header "Idempotency-Key: $IDEMPOTENCY_KEY" \
  --data-binary @campaign-update.json \
  "https://api.multitel.net/tcr/v2/campaign/$CAMPAIGN_ID"

Behold den samme nøgle og nøjagtig samme metode, sti, forespørgselsparametre og byte i forespørgslens indhold for den samme tilsigtede indsendelse. Ændret indhold kræver en særskilt gennemgået forespørgsel; udskift ikke nøgler i blinde efter en timeout. En afsluttet forespørgsel kan returnere en cachelagret fejl igen, og en dublet af en forespørgsel, der er under behandling, kan returnere 409 med Retry-After.

Hent kampagnen igen

HTTP 200 returnerer kampagnen direkte som et JSON-objekt. Kontrollér campaignId, hent derefter den samme kampagne med GET, og sammenlign de tilsigtede felter. En vellykket lagring anmoder ikke i sig selv om en ny operatørgennemgang, ændrer ikke nummertilknytninger, aktiverer ikke afsendelse og sender ikke en besked.

Portalen kontrollerer formularens version før lagring og henter kampagnen igen bagefter. Det offentlige PUT-endepunkt håndhæver ikke denne portalversion: Koordinér samtidige redigeringer. En idempotensnøgle registrerer ikke en anden brugers opdatering.

Hvis portalen viser en uafklaret afvisning efter gennemgang, skal du først rette indholdet og derefter bruge portalens særskilte handling til at anmode om gennemgang, når den er tilgængelig. Denne handling kontrollerer den aktuelle kampagne i produktion og delingstilstanden. Lagring af indhold alene udløser ikke handlingen, og et kampagne-ID er ikke bevis for godkendelse.

Almindelige kampagneopdateringer med PUT udløser ikke en særskilt debitering for kampagneregistrering i den nuværende tjeneste. Eksisterende månedlige gebyrer, minimumsforpligtelser, nummerleje og beskedforbrug gælder fortsat. Se de aktuelt konfigurerede kampagnetakster under kampagnegebyrer.

Håndter begrænsninger og usikre resultater

Ved HTTP 400 skal du læse fejlen for det enkelte felt og kontrollere længder, samtykketekst og kampagnens tilstand. Ved 401, 403 eller 404 skal du kontrollere API-loginoplysninger, tilladt kilde-IP og ejerskab. Ved 429 skal du følge Retry-After. Ved 500, 502 eller en afbrudt forespørgsel skal du bevare kampagnens ID og et eventuelt requestId og derefter afstemme den eksisterende post, før du indsender igen.

Det lokale øjebliksbillede afhænger af det returnerede svarindhold. Et delvist svar, der ikke er tomt, kan udelade ældre felter, herunder metadata om fornyelse; et tomt svar kan bevare forældede værdier. Kontrollér det fulde GET-resultat i stedet for at betragte en vellykket forespørgsel alene som bevis for, at alle felter er bevaret. Indberet uafklarede forskelle til support. Denne rute opdaterer ikke operatørtilknytninger atomisk og tilbyder ikke en generel handling til genopretning af operatøraktivering.