API reference / Email
Connect a mailbox
Connects a mailbox on the business's own domain to send outreach from, with an app password (Google Workspace, Zoho and Fastmail; Microsoft 365 connects by signing in, in the app). Troopy finds its provider from the domain's MX records, signs in to send and to read before keeping anything, checks the domain's SPF, DKIM and DMARC, and seals the password, which never comes back out. Connecting an address again puts it back to work with the new password. Owners and admins only.
/api/v1/mailboxesOther ways to call it
troopy mailboxes connectIdempotency-Key header. A retry with the same key gets the first answer back, and the operation runs one time.Body
application/jsonaddress*stringAt least 3 characters · At most 254 characters
password*stringAn app password made for Troopy, never the account's own password. From the CLI, pass @- to read it from standard input
At least 1 characters · At most 200 characters
namestringThe From name people see
At most 80 characters
signaturestringAt most 1000 characters
Response
201 · application/jsondata*object15 properties
id*stringA 24-character id
address*stringname*stringThe From name people see
signature*stringprovider*enum<string>googlemicrosoftzohozoho_euzoho_infastmail
providerName*stringstatus*enum<string>activepauseddisconnected
why*string | nullWhy it isn't active
dailyCap*integerThe most it sends a day, once ramped up
gapMinutes*integerMinutes between its sends, at least
readAll*booleanRead all: Troopy keeps every new mail of its inbox for 30 days, and everyone in the workspace reads it. For a shared address.
dns*object | nullIts domain's SPF, DKIM and DMARC as last checked: a campaign needs SPF or DKIM
4 properties
spf*enum<string>pass: one SPF record naming its provider; other: one that doesn't name it directly; many: more than one
passothermissingmany
dkim*enum<string>found at its provider's usual selector; unknown: not there
foundunknown
dmarc*object | null1 properties
policy*stringcheckedAt*stringISO 8601 date and time
test*object | nullIts last test send
4 properties
to*stringThe teammate's inbox it went to
sentAt*stringISO 8601 date and time
receivedAt*string | nullverdicts*object | nullWhat the receiving side said: pass, fail or gray each
4 properties
spf*string | nulldkim*string | nulldmarc*string | nullspam*string | nullcreatedBy*objectWho wrote it
3 properties
type*enum<string>personagentapi
id*stringname*stringcreatedAt*stringISO 8601 date and time