Participants may associate email addresses with their account.
Email addresses are stored in an
emailstable in the database, which holds the addresses themselves as well as info related to address verification. While a participant may have multiple email addresses on file, verified or not, only one will be the primary email address: the one also recorded in
participants.email_address. It’s a bug for the primary address not to be verified, or for an address to be in
participants.email_addressbut not also in
Having a verified email is a prerequisite for certain other features on Gratipay, such as linking a PayPal account, or filing a national identity.
Add an email address for a participant.
This is called when adding a new email address, and when resending the verification email for an unverified email address.
email (unicode) – the email address to add
- EmailAlreadyVerified – if the email is already verified for this participant
- EmailTaken – if the email is verified for a different participant
- TooManyEmailAddresses – if the participant already has 10 emails
- Throttled – if the participant adds too many emails too quickly
Set the email address for the participant.
Return a record for a single email address on file for this participant.
Return a list of all email addresses on file for this participant.
Return a list of verified email addresses on file for this participant.
Remove the given email address from the participant’s account. Raises
CannotRemovePrimaryEmailif the address is primary. It’s a noop if the email address is not on file.
Given a language identifier, set it for the participant as their preferred language in which to receive email.