Libreria di queries
Libreria di queriesInviare un'email di addio agli utenti che si cancellano da ConvertKit (tramite un webhook)

Inviare un'email di addio agli utenti che si cancellano da ConvertKit (tramite un webhook)

Quando un utente attiva un evento su ConvertKit (come l'iscrizione o la cancellazione), il servizio chiamerà un webhook trasmettendo i dati dell'evento. Possiamo configurare una Persisted Query come webhook che elabora questi dati in arrivo ed esegue un'azione con essi.

Questa query invia un'email di addio (che include un link a un modulo per richiedere feedback) alla persona che si è cancellata da ConvertKit.

query ExtractPayloadData {
  body: _httpRequestBody
  bodyJSONObject: _strDecodeJSONObject(string: $__body)
 
  subscriberFirstName: _objectProperty(
    object: $__bodyJSONObject,
    by: { path: "subscriber.first_name" }
  )
    @export(as: "subscriberFirstName")
  
  subscriberEmail: _objectProperty(
    object: $__bodyJSONObject,
    by: { path: "subscriber.email_address" }
  )
    @export(as: "subscriberEmail")
}
 
query CreateEmailMessage(
  $formURL: URL!
)
  @depends(on: "ExtractPayloadData")
{
  emailMessageTemplate: _strConvertMarkdownToHTML(
    text: """
 
Hey {$subscriberFirstName}, it's sad to let you go!
 
Please be welcome to complete [this form]({$formURL}) and let us know if there is anything we can do better.
 
Thanks. Hope to see you back!
 
    """
  )
  emailMessage: _strReplaceMultiple(
    search: ["{$subscriberFirstName}", "{$formURL}"],
    replaceWith: [$subscriberFirstName, $formURL],
    in: $__emailMessageTemplate
  )
    @export(as: "emailMessage")
}
 
mutation SendFarewellEmailToUnsubscribingUsersFromConvertKit
  @depends(on: "CreateEmailMessage")
{
  _sendEmail(
    input: {
      to: $subscriberEmail
      subject: "Would you like to give us feedback on how we can improve?"
      messageAs: {
        html: $emailMessage
      }
    }
  ) {
    status
  }
}