
Med app callback kan din app spara data, uppdatera loggen och notifiera användare utifrån alla anrop från Upsales som den tar emot.
Anrop med app callback
Du vet att app callback är tillgänglig om anropets body har en callbackUrl-egenskap.
Nästan alla anrop, utom statusanrop, stöder app callback.
Skicka app callback
Det finns två sätt att skicka app callback: svara på anropet eller posta till callbackUrl senare.
Svara på anropet
Svara med 200 OK och ett app callback-objekt som egenskapen callback i json-bodyn, t.ex.
{
"callback": {"notify": "Hello!"},
"maybeSomeOtherStuff": true
}
Men skynda dig! Du har 30 sekunder på dig innan anropet når tidsgränsen ⏱
Posta till callbackUrl senare
Behöver du räkna på siffror, synka massor av företag eller göra något annat som tar 30 sekunder eller mer?
Posta ett app callback-objekt till callbackUrl när du är redo 😴
curl -H "Content-Type: application/json" -X POST -d '{"notify": "Hello!"}' "<callbackUrl>"
Obs! En callbackUrl kan bara användas en gång, och bara om du inte har svarat på anropet med en callback-egenskap.
App callback-objekt
App callback-objektet har följande egenskaper.
status(number) valfri
Anger en status för anropets loggpost. Standardvärdet är 1 så fort du använder app callback. Använd 0 för pågående och 1 för lyckad. Alla andra värden visas som misslyckade.
message (String) valfri
Anger ett meddelande för anropets loggpost.
appData (Object) valfri
Sparar appdata för den här kunden. Den skickas med i bodyn i framtida appanrop.
userAppData (Object) valfri
Samma som appData, men för användaren. Skickas med i framtida appanrop. Bara tillgänglig om din app är inställd som userConfigurable.
notify (String) valfri
Skickar en notis i Upsales. Mottagare är användaren som startade appkörningen, vilket kan åsidosättas med notifyUserIds eller notifyAll.
Bra att veta
När användaren klickar på notisen kan du visa en widget med mer information. Scrolla ned till avsnittet ”Notismodal” för att läsa mer.
notifyUserIds (Array) valfri
Anger Upsales-id:n för de användare som ska få notisen.
notifyAll (true/false) valfri
Skickar notisen till alla användare i det här kontot.
notifyAdmins (true/false) valfri
Skickar notisen till alla administratörer i det här kontot.
type (String) valfri
Sätt till "error" för att visa notisen som ett fel.
from (String) valfri
Avsändarnamnet som visas på notisen. Standardvärdet är appens namn.
data (Object) valfri
Detaljer som visas när användaren klickar på notisen. Upsales listar varje nyckel med dess värde i en modal. När du skickar data visas den här modalen i stället för notismodalen som beskrivs nedan.
Exempelobjekt
{
"appData": {"externalId": "abc123"},
"userAppData": {"externalId": "user1"},
"status": 1,
"message": "A message for the log",
"notify": "Hello from my app"
}
Notismodal
Om din app callback skickade en notis utan data och användaren klickar på notisen gör vi ett anrop till appens endpoint /widget/notification, och du kan visa mer information för användaren.
https://yourapp.com/widget/notification
Egenskapen data.object i anropets body innehåller loggposten för det anrop som du skickade notisen från.
Svara med ett widget-objekt, t.ex.
{
"type": "widget",
"rows": [
{
"type": "markdown",
"markdown": "**Hello!**"
}
]
}
Om du svarar med 404 Not Found visar vi i stället platshållartexten ”Det finns ingen mer information tillgänglig.”