Rigel's inbox: its addresses and custom domains, the messages that arrive, what Rigel did with them, drafts, and a connected Gmail.
Commands
- PostRename an email address or make it the default
email.address.updateChanges the name shown on mail sent from the address, or makes it the default from address (the previous default stops being it). - PostChoose which Gmail mail Rigel reads
email.connection.set_filterSets the Gmail labels and sender addresses or domains whose mail Rigel reads from a connected Gmail account; mail that matches neither is never read. - PostCheck a custom domain now
email.domain.checkAsks for the domain's DNS records and sending verification to be checked right away. - PostThrow a draft away
email.draft.discardDeletes a draft that hasn't been sent. - PostSend a draft
email.draft.sendSends the draft to its recipients: this reaches people outside the household, so a person must say yes first. - PostWrite an email draft, or change one
email.draft.writeCreates a draft when email_draft_id is left out, otherwise changes that draft (only while it is a draft or failed; a failed draft becomes a draft again). - PostSay how an email should be treated
email.message.markA person sets an email's state: handled (done, or not suspicious after all), no_action (nothing needed), new (have Rigel read it again) or suspicious. - PostRecord what was done with an email
email.message.record_handlingRigel records what it made of an email: its state, a one or two sentence summary for the routing slip, the actions it took, and whether a person has to do something.
Queries
- GetRigel's email addresses
email.address.listThe addresses Rigel receives at and sends from, the default first, each with its display name and, for a custom domain, the domain's state in words. - GetThe DNS records for a custom domain
email.domain.recordsA custom domain's state in words and the DNS records its owner must add, each with whether it checks out. - GetDrafts waiting to be sent
email.draft.listDrafts that are being written, on their way (sending) or failed, most recently changed first. - GetOne email in full
email.message.getAn email with its text, attachments, what Rigel did about it and the conversation's other messages, or null when there is no such email. - GetThe inbox
email.message.listEmails that came in, newest first. - GetA conversation of emails
email.thread.getA conversation with its messages, in and out, oldest first, each with its text.
Routes
- PostGet the household's email address, making it if needed
email.setupReturns the household's default email address. - PostAdd an email address
email.addresses_createClaims an address for the household, on Rigel's domain or one of its custom domains, and records it. - DeleteRemove an email address
email.addresses_deleteRemoves the address and gives it up, so anyone can claim it. - PostAdd a custom domain
email.domains_createClaims the domain for the household, has the mail service verify it for sending, and records it with the DNS records its owner must add. - DeleteRemove a custom domain
email.domains_deleteRemoves the domain and its addresses, gives them up, and deletes the domain from the mail service. - GetAn email's HTML body
email.messages_htmlThe email's HTML body as JSON, for the sandboxed frame that shows it.