This method unsubscribes the contact(s) with the given external ID. Since the external ID does not need to be unique, all contacts with the given external ID will be removed.
Please note: as XQueue takes correct handling of contact data very serious, we anonymize all data of unsubscribed contacts, which implies anonymizing clicks, opens, contact events, etc.. To avoid ubsubscription pages having long loading times, this is an asynchronous call, which means if you ask for the contact immediatelly after unsubscribing, there is a chance, that it is still there. If you ask a couple of seconds later, it will be gone.  So if this call does not return an error code, you should display that the contact has been unsubscribed, as once the call is registered, it is immediatelly persisted and will be processed in parallel.


Parameter Default Description
mailingId Optional parameter. If filled, the unsubscription event will be counted for the mailing with the given ID and will be visible in the reports. Note, that you will get an error ‚400 – Bad Request', if you specify a mailing that has not been sent yet (i.e. has not the state 'sealed' and is still a draft).
reason Optional multivalued array. If filled, the unsubscription reason will be submitted to maileon and saved in an anonymized table for reporting purposes. Unsubscription reasons have two layers of information (separated by a |, see examples): types and messages
  1. Reason-Type. Valid values are:
    • too_many_messages
    • no_demand
    • change_of_channel
    • change_of_interest
    • technical_reasons
    • other
  2. Reason-Message. Here you can provide a custom message, especially used for tyoe ‚other‘ as e.g. type too_many_messages is automatically translated to a sounding representation in the report.

Hint: for easing you evaluating your results we suggest to limit the amount of possible values e.g. by providing a dropdown box with predefined values only.