Liebes Campai-Team,
Besteht die Möglichkeit eine Rundmail per API zu versenden?
Das OutgoingMessages Objekt hat u.a. folgende Attribute:
- receiverNameString
- receiverAddress
- contact Contact
- receiver Contact
Es sieht so aus, dass eine Nachricht einzeln pro Mitglied versendet werden muss.
Gibt es keine Möglichkeit eine Rundmail per API an alle Mitglieder, Kontakte oder Liste zu Versenden?
Grüß
Gregor
Hallo Gregor,
kannst du uns sagen, was und warum du das genau machen möchtest, damit wir den Usecase besser verstehen können?
Grundsätzlich ist das schon möglich. Ich hab von unserem Entwickler folgende Antwort bekommen:
Ihr müsstet die Kontakte/Mitglieder mit dem /contacts Entpoint abrufen und dann folgende Dokumentation benutzen:
# Sending e-mails using the API
1 - First, you'll need a member/contact created on your Campai organization, with a valid E-Mail address set. Then, you can get the information of your member/contact using the following request:
`
curl -H "Authorization: ${apiKey}" https://api.campai.com/contacts/${contactId}
`
Where `apiKey` is your API key and `contactId` is the ID of the member/contact you are searching. You can get the ID of the member/contact by opening the member/contact details on the UI and copying the ID from the url resulting.
2 - Now, you need to create a new `OutgoingMessage`. Currently, using solely the API, it is only possible to send e-mail messages using pure HTML or plain text. If you want to send letters/sms or messages with templates, then you must do it from the UI.
To create a new e-mail message, a POST request must be made to the following URL: https://api.campai.com/outgoingMessages?organisation=${organisationId} with the following body:
```
{
bodyText: 'string', // This is the plain text/html which is the content of the e-mail.
receiver: { $oid: "contactId" }, // The _id of the contact/member that should receive the e-mail.
description: "string", // The description which is shown on the UI. It is not sent to the e-mail itself.
contact: { $oid: "contactId" }, // The _id of the contact/member. 99% of the times will be the same value as the "receiver" field.
receiverAddress: "string", // the e-mail of the receiver.
receiverName: "string", // The name of the receiver.
sendMethod: "email", // The send method. Always e-mail. Any other will fail.
sendMode: "automatic", // The mode to send the e-mail. Always keep "automatic".
status: "pending", // The status of the message. Always keep "pending" since any other status won't send the e-mail.
subject: "string", // The subject of the e-mail.
type: "message", // The type of message. The only supported type for API usage is "message"
}
```
A final cURL POST request would look like this:
`
curl -H "Authorization: ${apiKey}" -H 'Content-Type: application/json' -X POST "https://api.campai.com/outgoingMessages?organisation=${organisationId}" -d '{"bodyText":"string","contact":{"$oid":"contactId"},"description":"string","receiver":{"$oid":"contactId"},"receiverAddress":"string","receiverName":"string","sendMethod":"email","sendMode":"automatic","status":"pending","subject":"string","type":"message"}'
`
If everything was correctly done, you should receive as response of the POST request the newly created message, and should be able to see the message on the UI like any other message.
Hallo Oliver,
Danke für die Antwort.
Das eine Nachricht/Mail einzeln an einen Mitglied/Kontakt versenden werden kann haben wir Bereits herausgefunden. Die Frage war:
Ob es eine Möglichkeit gibt eine Rundmail per API an alle Mitglieder, Kontakte oder Liste zu Versenden? (Keine Schleife)
Wir haben mehrere Use-Cases, wo wir eine Rundmail an alle Mitglieder per API versenden möchten. Eine davon, wäre nach eine Veröffentlichung eines Papers oder Events direkt von unserem CMS die Mitglieder darüber zu Informieren.
Liebe Grüße
Gregor
Hallo Greger,
das ist aktuell die einzige Möglichkeit. Wir überlegen, wenn wir in Zukunft das Kommunikationsmodul überarbeiten, so eine Möglichkeit zu schaffen.
Kannst du dazu bitte ein Ticket in Feedback machen, mit Link auf diesen Thread?