Creates a member in the community associated with your API key. A member is uniquely identified by the combination of communication_channel and communication_channel_id.
On success, the response is a Member object, the same one returned by GET /members/{member_id}. A newly created member has no subcommunities and no activity.
When the member already exists
If a member with the same communication_channel and communication_channel_id already exists, the request returns 409 Conflict with one of these error codes:
member_already_exists: the member isnewor live. On a retry, treat it as success and find the member withGET /members.member_not_live: the member left, for exampleopted_outorblocked. The person must opt back in on their own.member_deleted: the member was deleted. The person can join again on their own.
Retries and errors
All validation runs before anything is written, so any 4xx response means no member was created.
If you get a 500 or the request times out, send the same request again. If the retry returns member_already_exists, your original request succeeded.
Custom data
If you include custom_data and the response comes back with an empty custom_data object, the member was created but the custom data wasn’t saved. Resend it with PATCH /members/{member_id}.
WhatsApp members and phone numbers
When you create a WhatsApp member using a phone number, we check for an existing member with that number, including members whose WhatsApp address has since changed to a WhatsApp user ID. If a match is found, you’ll get a 409 as described above.