Every method
All 684, one row each, against the endpoint each one calls.
Every method
One method for every documented operation, and the package's parity check proves it. It reads the OpenAPI document, calls every method against a recording fetch, and fails when an operation has no method, when a method sends anything other than the exact request its row names, or when a row's scopes differ from the ones the operation requires.
listAll and iterate page through the same endpoint as the list beside them, and so do the other pairs named after the list they walk: listAllRuns and iterateRuns on rules, listAllDeliveries and iterateDeliveries on webhooks, listAllEvents and iterateEvents on emails and on calendar, listAllVersions and iterateVersions on templates, listAllOpens, iterateOpens, listAllClicks and iterateClicks on tracking, listAllContacts and iterateContacts on audiences, listAllInvitations and iterateInvitations on members, listAllLinks and iterateLinks on files, and listAllMessages and iterateMessages on tempMail. One request can therefore appear on more than one row.
| Call | Endpoint | Scope |
|---|---|---|
| me.get() | GET /keys/self | none |
| me.ping() | GET /ping | none |
| me.rotate() | POST /keys/self/rotate | keys:write |
| me.listRequests() | GET /keys/self/requests | none |
| me.listAllRequests() | GET /keys/self/requests | none |
| me.iterateRequests() | GET /keys/self/requests | none |
| me.listActivity() | GET /keys/self/activity | none |
| me.listAllActivity() | GET /keys/self/activity | none |
| me.iterateActivity() | GET /keys/self/activity | none |
| me.stats() | GET /keys/self/stats | none |
| security.stepUpStatus() | GET /security/step-up | none |
| security.beginStepUp() | POST /security/step-up | none |
| security.verifyStepUp() | POST /security/step-up/verify | none |
| security.listEvents() | GET /security/events | members:read |
| security.listAllEvents() | GET /security/events | members:read |
| security.iterateEvents() | GET /security/events | members:read |
| keys.list() | GET /keys | keys:read |
| keys.listAll() | GET /keys | keys:read |
| keys.iterate() | GET /keys | keys:read |
| keys.get() | GET /keys/{id} | keys:read |
| keys.create() | POST /keys | keys:manage |
| keys.update() | PATCH /keys/{id} | keys:manage |
| keys.delete() | DELETE /keys/{id} | keys:manage |
| keys.rotate() | POST /keys/{id}/rotate | keys:manage |
| keys.revoke() | POST /keys/{id}/revoke | keys:manage |
| keys.listRequests() | GET /keys/{id}/requests | keys:read |
| keys.listAllRequests() | GET /keys/{id}/requests | keys:read |
| keys.iterateRequests() | GET /keys/{id}/requests | keys:read |
| keys.listActivity() | GET /keys/{id}/activity | keys:read |
| keys.listAllActivity() | GET /keys/{id}/activity | keys:read |
| keys.iterateActivity() | GET /keys/{id}/activity | keys:read |
| keys.listWorkspaceRequests() | GET /keys/requests | keys:read |
| keys.listAllWorkspaceRequests() | GET /keys/requests | keys:read |
| keys.iterateWorkspaceRequests() | GET /keys/requests | keys:read |
| keys.listWorkspaceActivity() | GET /keys/activity | keys:read |
| keys.listAllWorkspaceActivity() | GET /keys/activity | keys:read |
| keys.iterateWorkspaceActivity() | GET /keys/activity | keys:read |
| keys.stats() | GET /keys/stats | keys:read + emails:read |
| addresses.list() | GET /addresses | emails:send |
| addresses.listAll() | GET /addresses | emails:send |
| addresses.iterate() | GET /addresses | emails:send |
| languages.list() | GET /languages | none |
| emails.send() | POST /emails | emails:send |
| emails.sendBatch() | POST /emails/batch | emails:send |
| emails.translate() | POST /emails/translate | emails:send |
| emails.check() | POST /emails/check | emails:send |
| emails.list() | GET /emails | emails:read |
| emails.listAll() | GET /emails | emails:read |
| emails.iterate() | GET /emails | emails:read |
| emails.get() | GET /emails/{id} | emails:read |
| emails.listEvents() | GET /emails/{id}/events | emails:read |
| emails.listAllEvents() | GET /emails/{id}/events | emails:read |
| emails.iterateEvents() | GET /emails/{id}/events | emails:read |
| emails.getTracking() | GET /emails/{id}/tracking | emails:read |
| emails.cancel() | POST /emails/{id}/cancel | emails:send |
| emails.reschedule() | PATCH /emails/{id} | emails:send |
| emails.update() | PATCH /emails/{id} | emails:send |
| emails.compose() | POST /emails/compose | emails:send |
| emails.rewrite() | POST /emails/rewrite | emails:send |
| emails.suggestSubject() | POST /emails/subject | emails:send |
| templates.list() | GET /templates | templates:read |
| templates.listAll() | GET /templates | templates:read |
| templates.iterate() | GET /templates | templates:read |
| templates.get() | GET /templates/{id} | templates:read |
| templates.create() | POST /templates | templates:write |
| templates.update() | PATCH /templates/{id} | templates:write |
| templates.duplicate() | POST /templates/{id}/duplicate | templates:write |
| templates.replaceContent() | POST /templates/{id}/content | templates:write |
| templates.delete() | DELETE /templates/{id} | templates:write |
| templates.listVersions() | GET /templates/{id}/versions | templates:read |
| templates.listAllVersions() | GET /templates/{id}/versions | templates:read |
| templates.iterateVersions() | GET /templates/{id}/versions | templates:read |
| templates.getVersion() | GET /templates/{id}/versions/{version} | templates:read |
| templates.publish() | POST /templates/{id}/versions | templates:write |
| templates.restoreVersion() | POST /templates/{id}/versions/{version}/restore | templates:write |
| templates.deleteVersion() | DELETE /templates/{id}/versions/{version} | templates:write |
| templates.listStarters() | GET /templates/starters | templates:read |
| templates.getStarter() | GET /templates/starters/{slug} | templates:read |
| templates.listFonts() | GET /templates/fonts | templates:read |
| templates.render() | POST /templates/render | templates:read |
| templates.preview() | POST /templates/{id}/preview | templates:read |
| templates.getAnalytics() | GET /templates/{id}/analytics | templates:read |
| templates.listSends() | GET /templates/{id}/sends | templates:read |
| templates.send() | POST /templates/{id}/send | templates:write + emails:send |
| templates.listImages() | GET /templates/images | templates:read |
| templates.listAllImages() | GET /templates/images | templates:read |
| templates.iterateImages() | GET /templates/images | templates:read |
| templates.uploadImage() | POST /templates/images | templates:write |
| templates.design() | POST /templates/design | templates:write |
| templates.redesign() | POST /templates/{id}/redesign | templates:write |
| tracking.list() | GET /tracking | emails:read |
| tracking.listAll() | GET /tracking | emails:read |
| tracking.iterate() | GET /tracking | emails:read |
| tracking.getStats() | GET /tracking/stats | emails:read |
| tracking.get() | GET /tracking/{id} | emails:read |
| tracking.listOpens() | GET /tracking/{id}/opens | emails:read |
| tracking.listAllOpens() | GET /tracking/{id}/opens | emails:read |
| tracking.iterateOpens() | GET /tracking/{id}/opens | emails:read |
| tracking.listClicks() | GET /tracking/{id}/clicks | emails:read |
| tracking.listAllClicks() | GET /tracking/{id}/clicks | emails:read |
| tracking.iterateClicks() | GET /tracking/{id}/clicks | emails:read |
| threads.list() | GET /threads | threads:read |
| threads.listAll() | GET /threads | threads:read |
| threads.iterate() | GET /threads | threads:read |
| threads.get() | GET /threads/{id} | threads:read |
| threads.update() | PATCH /threads/{id} | threads:write |
| threads.trash() | POST /threads/{id}/trash | threads:write |
| threads.snooze() | POST /threads/{id}/snooze | threads:write |
| threads.unsnooze() | POST /threads/{id}/unsnooze | threads:write |
| threads.mute() | POST /threads/{id}/mute | threads:write |
| threads.unmute() | POST /threads/{id}/unmute | threads:write |
| threads.listMessages() | GET /threads/{id}/messages | threads:read |
| threads.getMessage() | GET /threads/{id}/messages/{messageId} | threads:read |
| threads.listAttachments() | GET /threads/{id}/messages/{messageId}/attachments | threads:read |
| threads.listNotes() | GET /threads/{id}/notes | threads:read |
| threads.createNote() | POST /threads/{id}/notes | threads:write |
| threads.updateNote() | PATCH /threads/{id}/notes/{noteId} | threads:write |
| threads.deleteNote() | DELETE /threads/{id}/notes/{noteId} | threads:write |
| threads.reorderNotes() | POST /threads/{id}/notes/reorder | threads:write |
| threads.counts() | GET /threads/counts | threads:read |
| threads.summary() | GET /threads/{id}/summary | threads:read |
| threads.replySuggestions() | GET /threads/{id}/reply-suggestions | threads:read |
| threads.restore() | POST /threads/{id}/restore | threads:write |
| threads.delete() | DELETE /threads/{id} | threads:write |
| threads.unsubscribe() | POST /threads/{id}/unsubscribe | threads:write |
| threads.getEvent() | GET /threads/{id}/event | calendar:read |
| threads.listSenderCategories() | GET /sender-categories | threads:read |
| threads.setSenderCategory() | PUT /sender-categories/{email} | threads:write |
| threads.clearSenderCategory() | DELETE /sender-categories/{email} | threads:write |
| threads.getTeam() | GET /threads/{id}/team | threads:read |
| threads.assign() | PUT /threads/{id}/assignee | threads:write |
| threads.unassign() | DELETE /threads/{id}/assignee | threads:write |
| threads.markDone() | POST /threads/{id}/done | threads:write |
| threads.reopen() | POST /threads/{id}/reopen | threads:write |
| threads.listComments() | GET /threads/{id}/comments | threads:read |
| threads.createComment() | POST /threads/{id}/comments | threads:write |
| threads.updateComment() | PATCH /threads/{id}/comments/{commentId} | threads:write |
| threads.deleteComment() | DELETE /threads/{id}/comments/{commentId} | threads:write |
| followUps.list() | GET /follow-ups | threads:read |
| followUps.set() | POST /follow-ups | threads:write |
| followUps.cancel() | DELETE /follow-ups/{id} | threads:write |
| drafts.list() | GET /drafts | drafts:read |
| drafts.listAll() | GET /drafts | drafts:read |
| drafts.iterate() | GET /drafts | drafts:read |
| drafts.get() | GET /drafts/{id} | drafts:read |
| drafts.create() | POST /drafts | drafts:write |
| drafts.update() | PATCH /drafts/{id} | drafts:write |
| drafts.delete() | DELETE /drafts/{id} | drafts:write |
| labels.list() | GET /labels | labels:read |
| labels.listAll() | GET /labels | labels:read |
| labels.iterate() | GET /labels | labels:read |
| labels.listColors() | GET /labels/colors | labels:read |
| labels.get() | GET /labels/{id} | labels:read |
| labels.create() | POST /labels | labels:write |
| labels.update() | PATCH /labels/{id} | labels:write |
| labels.test() | POST /labels/{id}/test | labels:write + threads:read |
| labels.delete() | DELETE /labels/{id} | labels:write |
| contacts.list() | GET /contacts | contacts:read |
| contacts.listAll() | GET /contacts | contacts:read |
| contacts.iterate() | GET /contacts | contacts:read |
| contacts.get() | GET /contacts/{email} | contacts:read |
| contacts.create() | POST /contacts | contacts:write |
| contacts.update() | PATCH /contacts/{email} | contacts:write |
| contacts.delete() | DELETE /contacts/{email} | contacts:write |
| contacts.setAudiences() | PUT /contacts/{email}/audiences | audiences:write |
| contacts.listPeople() | GET /contacts/people | contacts:read |
| contacts.listAllPeople() | GET /contacts/people | contacts:read |
| contacts.iteratePeople() | GET /contacts/people | contacts:read |
| contacts.save() | PUT /contacts/{email} | contacts:write |
| contacts.deleteMany() | POST /contacts/batch-delete | contacts:write |
| contacts.setPhoto() | PUT /contacts/{email}/photo | contacts:write |
| contacts.removePhoto() | DELETE /contacts/{email}/photo | contacts:write |
| contacts.block() | POST /contacts/{email}/block | settings:write |
| contacts.unblock() | DELETE /contacts/{email}/block | settings:write |
| contacts.listThreads() | GET /contacts/{email}/threads | threads:read |
| contacts.listAllThreads() | GET /contacts/{email}/threads | threads:read |
| contacts.iterateThreads() | GET /contacts/{email}/threads | threads:read |
| contacts.activity() | GET /contacts/{email}/activity | threads:read |
| contacts.listEvents() | GET /contacts/{email}/events | contacts:read |
| contacts.listAllEvents() | GET /contacts/{email}/events | contacts:read |
| contacts.iterateEvents() | GET /contacts/{email}/events | contacts:read |
| contacts.listCards() | GET /contacts/cards | contacts:read |
| contacts.listAllCards() | GET /contacts/cards | contacts:read |
| contacts.iterateCards() | GET /contacts/cards | contacts:read |
| contacts.getCard() | GET /contacts/cards/{id} | contacts:read |
| contacts.createCard() | POST /contacts/cards | contacts:write |
| contacts.updateCard() | PATCH /contacts/cards/{id} | contacts:write |
| contacts.deleteCard() | DELETE /contacts/cards/{id} | contacts:write |
| contacts.findDuplicateCards() | GET /contacts/cards/duplicates | contacts:read |
| contacts.mergeCards() | POST /contacts/cards/{id}/merge | contacts:write |
| contacts.listBirthdays() | GET /contacts/birthdays | contacts:read |
| contacts.importVcf() | POST /contacts/imports | contacts:write |
| contacts.listImports() | GET /contacts/imports | contacts:read |
| contacts.listAllImports() | GET /contacts/imports | contacts:read |
| contacts.iterateImports() | GET /contacts/imports | contacts:read |
| contacts.getImport() | GET /contacts/imports/{id} | contacts:read |
| contacts.undoImport() | POST /contacts/imports/{id}/undo | contacts:write |
| audiences.list() | GET /audiences | audiences:read |
| audiences.listAll() | GET /audiences | audiences:read |
| audiences.iterate() | GET /audiences | audiences:read |
| audiences.growth() | GET /audiences/growth | audiences:read |
| audiences.get() | GET /audiences/{id} | audiences:read |
| audiences.create() | POST /audiences | audiences:write |
| audiences.update() | PATCH /audiences/{id} | audiences:write |
| audiences.delete() | DELETE /audiences/{id} | audiences:write |
| audiences.empty() | POST /audiences/{id}/empty | audiences:write |
| audiences.listContacts() | GET /audiences/{id}/contacts | audiences:read |
| audiences.listAllContacts() | GET /audiences/{id}/contacts | audiences:read |
| audiences.iterateContacts() | GET /audiences/{id}/contacts | audiences:read |
| audiences.addContact() | POST /audiences/{id}/contacts | audiences:write |
| audiences.removeContact() | DELETE /audiences/{id}/contacts/{email} | audiences:write |
| audiences.addContacts() | POST /audiences/{id}/contacts/batch | audiences:write |
| audiences.removeContacts() | POST /audiences/{id}/contacts/batch-remove | audiences:write |
| audiences.importContacts() | POST /audiences/{id}/import | audiences:write + contacts:write |
| segments.list() | GET /segments | audiences:read |
| segments.get() | GET /segments/{id} | audiences:read |
| segments.create() | POST /segments | audiences:write |
| segments.update() | PATCH /segments/{id} | audiences:write |
| segments.delete() | DELETE /segments/{id} | audiences:write |
| segments.preview() | POST /segments/preview | audiences:read |
| forms.list() | GET /forms | forms:read |
| forms.listAll() | GET /forms | forms:read |
| forms.iterate() | GET /forms | forms:read |
| forms.create() | POST /forms | forms:write |
| forms.design() | POST /forms/design | forms:write |
| forms.redesign() | POST /forms/{id}/redesign | forms:write |
| forms.listStarters() | GET /forms/starters | forms:read |
| forms.getStarter() | GET /forms/starters/{slug} | forms:read |
| forms.get() | GET /forms/{id} | forms:read |
| forms.update() | PATCH /forms/{id} | forms:write |
| forms.delete() | DELETE /forms/{id} | forms:write |
| forms.publish() | POST /forms/{id}/publish | forms:write |
| forms.pause() | POST /forms/{id}/pause | forms:write |
| forms.resume() | POST /forms/{id}/resume | forms:write |
| forms.duplicate() | POST /forms/{id}/duplicate | forms:write |
| forms.analytics() | GET /forms/{id}/analytics | forms:read |
| forms.listSubmissions() | GET /forms/{id}/submissions | forms:read |
| forms.listAllSubmissions() | GET /forms/{id}/submissions | forms:read |
| forms.iterateSubmissions() | GET /forms/{id}/submissions | forms:read |
| forms.getSubmission() | GET /forms/{id}/submissions/{submissionId} | forms:read |
| forms.deleteSubmission() | DELETE /forms/{id}/submissions/{submissionId} | forms:write |
| forms.deleteSubmissions() | POST /forms/{id}/submissions/batch-remove | forms:write |
| forms.approveSubmission() | POST /forms/{id}/submissions/{submissionId}/approve | forms:write + contacts:write |
| forms.resendConfirmation() | POST /forms/{id}/submissions/{submissionId}/resend | forms:write + emails:send |
| forms.subscribe() | POST /subscribe/{formId} | none |
| automations.list() | GET /automations | automations:read |
| automations.listAll() | GET /automations | automations:read |
| automations.iterate() | GET /automations | automations:read |
| automations.create() | POST /automations | automations:write |
| automations.listStarters() | GET /automations/starters | automations:read |
| automations.get() | GET /automations/{id} | automations:read |
| automations.update() | PATCH /automations/{id} | automations:write |
| automations.delete() | DELETE /automations/{id} | automations:write |
| automations.publish() | POST /automations/{id}/publish | automations:write + emails:send |
| automations.pause() | POST /automations/{id}/pause | automations:write |
| automations.resume() | POST /automations/{id}/resume | automations:write + emails:send |
| automations.archive() | POST /automations/{id}/archive | automations:write |
| automations.duplicate() | POST /automations/{id}/duplicate | automations:write |
| automations.sendTest() | POST /automations/{id}/test | automations:write + emails:send |
| automations.listVersions() | GET /automations/{id}/versions | automations:read |
| automations.restoreVersion() | POST /automations/{id}/versions/{version}/restore | automations:write |
| automations.stats() | GET /automations/{id}/stats | automations:read |
| automations.analytics() | GET /automations/analytics | automations:read |
| automations.listRuns() | GET /automations/{id}/runs | automations:read |
| automations.listAllRuns() | GET /automations/{id}/runs | automations:read |
| automations.iterateRuns() | GET /automations/{id}/runs | automations:read |
| automations.listEnrollments() | GET /automations/{id}/enrollments | automations:read |
| automations.listAllEnrollments() | GET /automations/{id}/enrollments | automations:read |
| automations.iterateEnrollments() | GET /automations/{id}/enrollments | automations:read |
| automations.getEnrollment() | GET /automations/{id}/enrollments/{enrollmentId} | automations:read |
| automations.enroll() | POST /automations/{id}/enrollments | automations:write |
| automations.exitEnrollment() | POST /automations/{id}/enrollments/{enrollmentId}/exit | automations:write |
| events.send() | POST /events | contacts:write |
| events.sendBatch() | POST /events/batch | contacts:write |
| events.listNames() | GET /events/names | automations:read |
| broadcasts.preview() | POST /broadcasts/preview | audiences:read |
| broadcasts.send() | POST /broadcasts | emails:send + audiences:read |
| broadcasts.list() | GET /broadcasts | emails:read |
| broadcasts.listAll() | GET /broadcasts | emails:read |
| broadcasts.iterate() | GET /broadcasts | emails:read |
| broadcasts.get() | GET /broadcasts/{id} | emails:read |
| broadcasts.stats() | GET /broadcasts/{id}/stats | emails:read |
| broadcasts.analytics() | GET /broadcasts/analytics | emails:read |
| broadcasts.listRecipients() | GET /broadcasts/{id}/recipients | emails:read |
| broadcasts.listAllRecipients() | GET /broadcasts/{id}/recipients | emails:read |
| broadcasts.iterateRecipients() | GET /broadcasts/{id}/recipients | emails:read |
| broadcasts.getRecipient() | GET /broadcasts/{id}/recipients/{emailId} | emails:read |
| broadcasts.cancel() | POST /broadcasts/{id}/cancel | emails:send |
| broadcasts.createDraft() | POST /broadcasts/drafts | emails:send + audiences:read |
| broadcasts.update() | PATCH /broadcasts/{id} | emails:send + audiences:read |
| broadcasts.sendDraft() | POST /broadcasts/{id}/send | emails:send + audiences:read |
| broadcasts.duplicate() | POST /broadcasts/{id}/duplicate | emails:send + audiences:read |
| broadcasts.resend() | POST /broadcasts/{id}/resend | emails:send + audiences:read |
| broadcasts.sendTest() | POST /broadcasts/test | emails:send |
| domains.list() | GET /domains | domains:read |
| domains.listAll() | GET /domains | domains:read |
| domains.iterate() | GET /domains | domains:read |
| domains.get() | GET /domains/{id} | domains:read |
| domains.create() | POST /domains | domains:write |
| domains.verify() | POST /domains/{id}/verify | domains:write |
| domains.update() | PATCH /domains/{id} | domains:write |
| domains.delete() | DELETE /domains/{id} | domains:write |
| domains.getLogo() | GET /domains/{id}/logo | domains:read |
| domains.setLogo() | PUT /domains/{id}/logo | domains:write |
| domains.removeLogo() | DELETE /domains/{id}/logo | domains:write |
| domains.setLogoCertificate() | PUT /domains/{id}/logo/certificate | domains:write |
| domains.removeLogoCertificate() | DELETE /domains/{id}/logo/certificate | domains:write |
| domains.listAddresses() | GET /domains/{id}/addresses | domains:read |
| domains.listAllAddresses() | GET /domains/{id}/addresses | domains:read |
| domains.iterateAddresses() | GET /domains/{id}/addresses | domains:read |
| domains.createAddress() | POST /domains/{id}/addresses | domains:write |
| domains.getAddress() | GET /domains/{id}/addresses/{addressId} | domains:read |
| domains.updateAddress() | PATCH /domains/{id}/addresses/{addressId} | domains:write |
| domains.setAddressPhoto() | PUT /domains/{id}/addresses/{addressId}/photo | domains:write |
| domains.removeAddressPhoto() | DELETE /domains/{id}/addresses/{addressId}/photo | domains:write |
| domains.deleteAddress() | DELETE /domains/{id}/addresses/{addressId} | domains:write |
| domains.listAddressForwards() | GET /domains/{id}/addresses/{addressId}/forwards | domains:read |
| domains.addAddressForwards() | POST /domains/{id}/addresses/{addressId}/forwards | domains:write |
| domains.updateAddressForward() | PATCH /domains/{id}/addresses/{addressId}/forwards/{forwardId} | domains:write |
| domains.deleteAddressForward() | DELETE /domains/{id}/addresses/{addressId}/forwards/{forwardId} | domains:write |
| domains.resendAddressForwardConsent() | POST /domains/{id}/addresses/{addressId}/forwards/{forwardId}/resend | domains:write |
| domains.listAddressMembers() | GET /domains/{id}/addresses/{addressId}/members | members:read |
| domains.getAddressLogin() | GET /domains/{id}/addresses/{addressId}/login | members:write |
| domains.setAddressLogin() | PUT /domains/{id}/addresses/{addressId}/login | members:write |
| domains.deleteAddressLogin() | DELETE /domains/{id}/addresses/{addressId}/login | members:write |
| domains.getMailAppSettings() | GET /domains/{id}/addresses/{addressId}/mail-apps | domains:read |
| domains.updateMailAppSettings() | PATCH /domains/{id}/addresses/{addressId}/mail-apps | domains:write |
| domains.listAppPasswords() | GET /domains/{id}/addresses/{addressId}/app-passwords | members:write |
| domains.createAppPassword() | POST /domains/{id}/addresses/{addressId}/app-passwords | members:write |
| domains.updateAppPassword() | PATCH /domains/{id}/addresses/{addressId}/app-passwords/{passwordId} | members:write |
| domains.deleteAppPassword() | DELETE /domains/{id}/addresses/{addressId}/app-passwords/{passwordId} | members:write |
| domains.sendMailAppSetup() | POST /domains/{id}/addresses/{addressId}/mail-app-setup | members:write |
| domains.getDns() | GET /domains/{id}/dns | domains:read |
| domains.setDnsZone() | PUT /domains/{id}/dns | domains:write |
| domains.syncDns() | POST /domains/{id}/dns/sync | domains:write |
| appHost.get() | GET /app-host | domains:read |
| appHost.set() | PUT /app-host | domains:write |
| appHost.verify() | POST /app-host/verify | domains:write |
| appHost.delete() | DELETE /app-host | domains:write |
| branding.get() | GET /branding | settings:read |
| branding.update() | PATCH /branding | settings:write |
| branding.uploadImage() | PUT /branding/images/{variant} | settings:write |
| branding.removeImage() | DELETE /branding/images/{variant} | settings:write |
| rules.list() | GET /rules | rules:read |
| rules.listAll() | GET /rules | rules:read |
| rules.iterate() | GET /rules | rules:read |
| rules.get() | GET /rules/{id} | rules:read |
| rules.create() | POST /rules | rules:write |
| rules.update() | PATCH /rules/{id} | rules:write |
| rules.delete() | DELETE /rules/{id} | rules:write |
| rules.reorder() | POST /rules/reorder | rules:write |
| rules.test() | POST /rules/{id}/test | rules:read |
| rules.listRuns() | GET /rules/runs | rules:read |
| rules.listAllRuns() | GET /rules/runs | rules:read |
| rules.iterateRuns() | GET /rules/runs | rules:read |
| webhooks.list() | GET /webhooks | webhooks:read |
| webhooks.listAll() | GET /webhooks | webhooks:read |
| webhooks.iterate() | GET /webhooks | webhooks:read |
| webhooks.get() | GET /webhooks/{id} | webhooks:read |
| webhooks.create() | POST /webhooks | webhooks:write |
| webhooks.update() | PATCH /webhooks/{id} | webhooks:write |
| webhooks.delete() | DELETE /webhooks/{id} | webhooks:write |
| webhooks.rotateSecret() | POST /webhooks/{id}/rotate-secret | webhooks:write |
| webhooks.test() | POST /webhooks/{id}/test | webhooks:write |
| webhooks.listDeliveries() | GET /webhooks/{id}/deliveries | webhooks:read |
| webhooks.listAllDeliveries() | GET /webhooks/{id}/deliveries | webhooks:read |
| webhooks.iterateDeliveries() | GET /webhooks/{id}/deliveries | webhooks:read |
| webhooks.getDelivery() | GET /webhooks/{id}/deliveries/{deliveryId} | webhooks:read |
| webhooks.replayDelivery() | POST /webhooks/{id}/deliveries/{deliveryId}/replay | webhooks:write |
| webhooks.listWorkspaceDeliveries() | GET /webhooks/deliveries | webhooks:read |
| webhooks.listAllWorkspaceDeliveries() | GET /webhooks/deliveries | webhooks:read |
| webhooks.iterateWorkspaceDeliveries() | GET /webhooks/deliveries | webhooks:read |
| webhooks.listActivity() | GET /webhooks/{id}/activity | webhooks:read |
| webhooks.listAllActivity() | GET /webhooks/{id}/activity | webhooks:read |
| webhooks.iterateActivity() | GET /webhooks/{id}/activity | webhooks:read |
| webhooks.listWorkspaceActivity() | GET /webhooks/activity | webhooks:read |
| webhooks.listAllWorkspaceActivity() | GET /webhooks/activity | webhooks:read |
| webhooks.iterateWorkspaceActivity() | GET /webhooks/activity | webhooks:read |
| webhooks.listEvents() | GET /webhooks/events | webhooks:read |
| webhooks.stats() | GET /webhooks/stats | webhooks:read |
| imports.list() | GET /imports | threads:read |
| imports.listAll() | GET /imports | threads:read |
| imports.iterate() | GET /imports | threads:read |
| imports.get() | GET /imports/{id} | threads:read |
| imports.create() | POST /imports | threads:write |
| imports.uploadState() | GET /imports/{id}/upload | threads:write |
| imports.uploadChunk() | PUT /imports/{id}/files/{file}/chunks/{chunk} | threads:write |
| imports.start() | POST /imports/{id}/start | threads:write |
| imports.cancel() | POST /imports/{id}/cancel | threads:write |
| imports.listFailures() | GET /imports/{id}/failures | threads:read |
| imports.deleteUpload() | DELETE /imports/{id}/upload | threads:write |
| imports.importFiles() | POST /imports | threads:write |
| imports.discoverMailbox() | GET /imports/mailbox-settings | threads:write |
| imports.checkMailbox() | POST /imports/mailbox/check | threads:write |
| imports.connectMailbox() | POST /imports/mailbox | threads:write |
| imports.resume() | POST /imports/{id}/resume | threads:write |
| providerImports.inspect() | POST /provider-imports/inspect | settings:write |
| providerImports.create() | POST /provider-imports | settings:write |
| providerImports.list() | GET /provider-imports | settings:read |
| providerImports.listAll() | GET /provider-imports | settings:read |
| providerImports.iterate() | GET /provider-imports | settings:read |
| providerImports.get() | GET /provider-imports/{id} | settings:read |
| providerImports.cancel() | POST /provider-imports/{id}/cancel | settings:write |
| calendar.listEvents() | GET /calendar/events | calendar:read |
| calendar.listAllEvents() | GET /calendar/events | calendar:read |
| calendar.iterateEvents() | GET /calendar/events | calendar:read |
| calendar.getEvent() | GET /calendar/events/{id} | calendar:read |
| calendar.getEventIcs() | GET /calendar/events/{id}/ics | calendar:read |
| calendar.createEvent() | POST /calendar/events | calendar:write |
| calendar.updateEvent() | PATCH /calendar/events/{id} | calendar:write |
| calendar.deleteEvent() | DELETE /calendar/events/{id} | calendar:write |
| calendar.cancelEvent() | POST /calendar/events/{id}/cancel | calendar:write |
| calendar.respondToEvent() | POST /calendar/events/{id}/respond | calendar:write + emails:send |
| calendar.declineProposal() | POST /calendar/events/{id}/decline-proposal | calendar:write + emails:send |
| calendar.hideEvent() | POST /calendar/events/{id}/hide | calendar:write |
| calendar.unhideEvent() | POST /calendar/events/{id}/unhide | calendar:write |
| calendar.freeBusy() | GET /calendar/free-busy | calendar:read |
| calendar.listFeeds() | GET /calendar/feeds | calendar:read |
| calendar.createFeed() | POST /calendar/feeds | calendar:write |
| calendar.resetFeed() | POST /calendar/feeds/{id}/reset | calendar:write |
| calendar.deleteFeed() | DELETE /calendar/feeds/{id} | calendar:write |
| calendar.listSubscriptions() | GET /calendar/subscriptions | calendar:read |
| calendar.createSubscription() | POST /calendar/subscriptions | calendar:write |
| calendar.updateSubscription() | PATCH /calendar/subscriptions/{id} | calendar:write |
| calendar.refreshSubscription() | POST /calendar/subscriptions/{id}/refresh | calendar:write |
| calendar.deleteSubscription() | DELETE /calendar/subscriptions/{id} | calendar:write |
| calendar.importIcs() | POST /calendar/imports | calendar:write |
| calendar.listImports() | GET /calendar/imports | calendar:read |
| calendar.listAllImports() | GET /calendar/imports | calendar:read |
| calendar.iterateImports() | GET /calendar/imports | calendar:read |
| calendar.getImport() | GET /calendar/imports/{id} | calendar:read |
| calendar.undoImport() | POST /calendar/imports/{id}/undo | calendar:write |
| settings.get() | GET /settings | settings:read |
| settings.update() | PATCH /settings | settings:write |
| outOfOffice.list() | GET /out-of-office | settings:read |
| outOfOffice.set() | PUT /out-of-office | settings:write |
| outOfOffice.clear() | DELETE /out-of-office | settings:write |
| roles.list() | GET /roles | roles:read |
| roles.listAll() | GET /roles | roles:read |
| roles.iterate() | GET /roles | roles:read |
| roles.get() | GET /roles/{id} | roles:read |
| roles.create() | POST /roles | roles:write |
| roles.update() | PATCH /roles/{id} | roles:write |
| roles.delete() | DELETE /roles/{id} | roles:write |
| roles.listPermissions() | GET /roles/permissions | roles:read |
| members.list() | GET /members | members:read |
| members.listAll() | GET /members | members:read |
| members.iterate() | GET /members | members:read |
| members.get() | GET /members/{userId} | members:read |
| members.add() | POST /members | members:write |
| members.update() | PATCH /members/{userId} | members:write |
| members.remove() | DELETE /members/{userId} | members:write |
| members.grantAddress() | POST /members/{userId}/addresses | members:write |
| members.revokeAddress() | DELETE /members/{userId}/addresses/{addressId} | members:write |
| members.grantDomain() | POST /members/{userId}/domains | members:write |
| members.revokeDomain() | DELETE /members/{userId}/domains/{domainId} | members:write |
| members.listInvitations() | GET /members/invitations | members:read |
| members.listAllInvitations() | GET /members/invitations | members:read |
| members.iterateInvitations() | GET /members/invitations | members:read |
| members.revokeInvitation() | DELETE /members/invitations/{invitationId} | members:write |
| members.resendInvitation() | POST /members/invitations/{invitationId}/resend | members:write |
| suppressions.list() | GET /suppressions | settings:read |
| suppressions.listAll() | GET /suppressions | settings:read |
| suppressions.iterate() | GET /suppressions | settings:read |
| suppressions.get() | GET /suppressions/{id} | settings:read |
| suppressions.add() | POST /suppressions | settings:write |
| suppressions.remove() | DELETE /suppressions/{id} | settings:write |
| suppressions.listUnsubscribes() | GET /suppressions/unsubscribes | settings:read |
| suppressions.addUnsubscribe() | POST /suppressions/unsubscribes | settings:write |
| suppressions.removeUnsubscribe() | DELETE /suppressions/unsubscribes/{email} | settings:write |
| sending.listStreams() | GET /sending/streams | emails:read |
| sending.resumeStream() | POST /sending/streams/{stream}/resume | domains:write |
| sending.listDedicatedIps() | GET /sending/dedicated-ips | domains:read |
| sending.getDedicatedIp() | GET /sending/dedicated-ips/{ip} | domains:read |
| files.list() | GET /files | files:read |
| files.listAll() | GET /files | files:read |
| files.iterate() | GET /files | files:read |
| files.get() | GET /files/{id} | files:read |
| files.stats() | GET /files/stats | files:read |
| files.download() | GET /files/{id}/content | files:read |
| files.listLinks() | GET /files/{id}/links | files:read |
| files.listAllLinks() | GET /files/{id}/links | files:read |
| files.iterateLinks() | GET /files/{id}/links | files:read |
| files.createLink() | POST /files/{id}/links | files:write |
| files.revokeLink() | DELETE /files/{id}/links/{linkId} | files:write |
| files.revokeAllLinks() | DELETE /files/{id}/links | files:write |
| files.upload() | POST /files | files:write |
| files.delete() | DELETE /files/{id} | files:write |
| files.deleteMany() | POST /files/batch-delete | files:write |
| knowledge.list() | GET /knowledge | knowledge:read |
| knowledge.listAll() | GET /knowledge | knowledge:read |
| knowledge.iterate() | GET /knowledge | knowledge:read |
| knowledge.levels() | GET /knowledge/levels | knowledge:read |
| knowledge.usage() | GET /knowledge/usage | knowledge:read |
| knowledge.search() | POST /knowledge/search | knowledge:read |
| knowledge.createNote() | POST /knowledge/notes | knowledge:write |
| knowledge.addLink() | POST /knowledge/links | knowledge:write |
| knowledge.uploadFile() | POST /knowledge/files | knowledge:write |
| knowledge.get() | GET /knowledge/{id} | knowledge:read |
| knowledge.update() | PATCH /knowledge/{id} | knowledge:write |
| knowledge.delete() | DELETE /knowledge/{id} | knowledge:write |
| knowledge.refresh() | POST /knowledge/{id}/refresh | knowledge:write |
| knowledge.stats() | GET /knowledge/stats | knowledge:read |
| knowledge.listSuggestions() | GET /knowledge/suggestions | knowledge:read |
| knowledge.listAllSuggestions() | GET /knowledge/suggestions | knowledge:read |
| knowledge.iterateSuggestions() | GET /knowledge/suggestions | knowledge:read |
| knowledge.acceptSuggestion() | POST /knowledge/suggestions/{id}/accept | knowledge:write |
| knowledge.dismissSuggestion() | POST /knowledge/suggestions/{id}/dismiss | knowledge:write |
| knowledge.listFlags() | GET /knowledge/flags | knowledge:read |
| knowledge.dismissFlag() | POST /knowledge/flags/{id}/dismiss | knowledge:write |
| knowledge.listConnectors() | GET /knowledge/connectors | knowledge:read |
| knowledge.addConnector() | POST /knowledge/connectors | knowledge:write |
| knowledge.getConnector() | GET /knowledge/connectors/{id} | knowledge:read |
| knowledge.updateConnector() | PATCH /knowledge/connectors/{id} | knowledge:write |
| knowledge.deleteConnector() | DELETE /knowledge/connectors/{id} | knowledge:write |
| knowledge.syncConnector() | POST /knowledge/connectors/{id}/sync | knowledge:write |
| knowledge.draftFromThread() | POST /knowledge/drafts | knowledge:write + threads:read |
| tempMail.listDomains() | GET /temp-mail/domains | none |
| tempMail.create() | POST /temp-mail/inboxes | none |
| tempMail.get() | GET /temp-mail/inboxes/{id} | inbox token |
| tempMail.extend() | POST /temp-mail/inboxes/{id}/extend | inbox token |
| tempMail.delete() | DELETE /temp-mail/inboxes/{id} | inbox token |
| tempMail.listMessages() | GET /temp-mail/inboxes/{id}/messages | inbox token |
| tempMail.listAllMessages() | GET /temp-mail/inboxes/{id}/messages | inbox token |
| tempMail.iterateMessages() | GET /temp-mail/inboxes/{id}/messages | inbox token |
| tempMail.getMessage() | GET /temp-mail/inboxes/{id}/messages/{messageId} | inbox token |
| tempMail.deleteMessage() | DELETE /temp-mail/inboxes/{id}/messages/{messageId} | inbox token |
| tempMail.listAttachments() | GET /temp-mail/inboxes/{id}/messages/{messageId}/attachments | inbox token |
| tools.checkDmarc() | GET /tools/dmarc | none |
| tools.checkBimi() | GET /tools/bimi | none |
| tools.checkDeliverability() | GET /tools/deliverability | none |
| tools.readVerificationCode() | POST /tools/verification-code | none |
| tools.estimateCost() | GET /tools/cost | none |
| tools.checkAddress() | GET /tools/address | none |
| tools.checkAddresses() | POST /tools/addresses | none |
| support.send() | POST /support | none |
| encryption.listKeys() | GET /encryption/keys | emails:read |
| encryption.publishKey() | POST /encryption/keys | emails:read |
| encryption.lookupKeys() | GET /encryption/keys/lookup | emails:send |
| senders.get() | GET /senders/{email} | threads:read |
| senders.research() | POST /senders/{email}/research | threads:read |
| chats.list() | GET /chats | threads:read |
| chats.listAll() | GET /chats | threads:read |
| chats.iterate() | GET /chats | threads:read |
| chats.get() | GET /chats/{id} | threads:read |
| chats.rename() | PATCH /chats/{id} | threads:write |
| chats.delete() | DELETE /chats/{id} | threads:write |
| analytics.mailbox() | GET /analytics/mailbox | threads:read |
| analytics.sending() | GET /analytics/sending | emails:read |
| subscriptions.list() | GET /subscriptions | threads:read |
| subscriptions.listDomains() | GET /subscriptions/domains | threads:read |
| subscriptions.keep() | POST /subscriptions/batch-keep | threads:write |
| subscriptions.unsubscribe() | POST /subscriptions/{id}/unsubscribe | threads:write |
| subscriptions.unsubscribeMany() | POST /subscriptions/batch-unsubscribe | threads:write |
| subscriptions.unsubscribeDomain() | POST /subscriptions/domains/{domain}/unsubscribe | threads:write |
| subscriptions.move() | POST /subscriptions/{id}/move | threads:write |
| subscriptions.moveMany() | POST /subscriptions/batch-move | threads:write |
| exports.preview() | GET /exports/preview | threads:read + emails:read + drafts:read + files:read + labels:read + contacts:read + audiences:read + calendar:read + templates:read + rules:read |
| exports.list() | GET /exports | threads:read + emails:read + drafts:read + files:read + labels:read + contacts:read + audiences:read + calendar:read + templates:read + rules:read |
| exports.get() | GET /exports/{id} | threads:read + emails:read + drafts:read + files:read + labels:read + contacts:read + audiences:read + calendar:read + templates:read + rules:read |
| exports.start() | POST /exports | threads:read + emails:read + drafts:read + files:read + labels:read + contacts:read + audiences:read + calendar:read + templates:read + rules:read |
| exports.download() | GET /exports/{id}/content | threads:read + emails:read + drafts:read + files:read + labels:read + contacts:read + audiences:read + calendar:read + templates:read + rules:read |
| dnsConnections.list() | GET /dns-connections | domains:read |
| dnsConnections.get() | GET /dns-connections/{id} | domains:read |
| dnsConnections.delete() | DELETE /dns-connections/{id} | domains:write |
| billing.get() | GET /billing | billing:read |
| billing.listPlans() | GET /billing/plans | billing:read |
| billing.getUsage() | GET /billing/usage | billing:read |
| billing.listAlerts() | GET /billing/alerts | billing:read |
| billing.listCountries() | GET /billing/countries | billing:read |
| billing.getPayAsYouGo() | GET /billing/pay-as-you-go | billing:read |
| billing.setPayAsYouGo() | PATCH /billing/pay-as-you-go | billing:write |
| billing.setPayAsYouGoLimit() | PUT /billing/pay-as-you-go/limit | billing:write |
| billing.confirmPayAsYouGo() | POST /billing/pay-as-you-go/confirm | billing:write |
| billing.startCheckout() | POST /billing/checkout | billing:write |
| billing.openPortal() | POST /billing/portal | billing:write |
| billing.listInvoices() | GET /billing/invoices | billing:read |
| billing.getInvoice() | GET /billing/invoices/{orderId} | billing:read |
| billing.saveInvoiceDetails() | PUT /billing/invoices/{orderId}/details | billing:write |
| billing.listAddOns() | GET /billing/add-ons | billing:read |
| billing.startAddOnCheckout() | POST /billing/add-ons/checkout | billing:write |
| billing.cancelAddOn() | DELETE /billing/add-ons/{addOn} | billing:write |
| workspaces.list() | GET /workspaces | account:read |
| workspaces.create() | POST /workspaces | account:write |
| workspaces.getActive() | GET /workspaces/active | account:read |
| workspaces.setActive() | PUT /workspaces/active | account:write |
| workspaces.delete() | DELETE /workspaces/{id} | account:write |
| account.getNotifications() | GET /account/notifications | account:read |
| account.setEmailNotification() | PUT /account/notifications/email/{category} | account:write |
| account.setPushMuted() | PUT /account/notifications/push/{workspaceId} | account:write |
| account.setPhoto() | PUT /account/photo | account:write |
| account.removePhoto() | DELETE /account/photo | account:write |
| account.getUsername() | GET /account/username | account:read |
| account.checkUsername() | GET /account/username/availability | account:read |
| account.setUsername() | PUT /account/username | account:write |
| account.listConnectedApps() | GET /account/connected-apps | account:read |
| account.listConnectedAppRequests() | GET /account/connected-apps/{clientId}/requests | account:read |
| account.listAllConnectedAppRequests() | GET /account/connected-apps/{clientId}/requests | account:read |
| account.iterateConnectedAppRequests() | GET /account/connected-apps/{clientId}/requests | account:read |
| account.revokeConnectedApp() | DELETE /account/connected-apps/{clientId} | account:write |
| account.listSessions() | GET /account/sessions | account:read |
| account.revokeSession() | DELETE /account/sessions/{sessionId} | account:write |
| account.revokeSessions() | DELETE /account/sessions | account:write |
| account.listSecurityEvents() | GET /account/security-events | account:read |
| account.listAllSecurityEvents() | GET /account/security-events | account:read |
| account.iterateSecurityEvents() | GET /account/security-events | account:read |
| account.listPasskeys() | GET /account/passkeys | account:read |
| account.renamePasskey() | PATCH /account/passkeys/{passkeyId} | account:write |
| account.removePasskey() | DELETE /account/passkeys/{passkeyId} | account:write |
| account.listInvitations() | GET /account/invitations | account:read |
| account.acceptInvitation() | POST /account/invitations/{invitationId}/accept | account:write |
| account.declineInvitation() | POST /account/invitations/{invitationId}/decline | account:write |
| signatures.list() | GET /signatures | settings:read |
| signatures.listAll() | GET /signatures | settings:read |
| signatures.iterate() | GET /signatures | settings:read |
| signatures.get() | GET /signatures/{id} | settings:read |
| signatures.create() | POST /signatures | settings:write |
| signatures.update() | PATCH /signatures/{id} | settings:write |
| signatures.delete() | DELETE /signatures/{id} | settings:write |
| signatures.copy() | POST /signatures/{id}/copy | settings:write |
| tasks.list() | GET /tasks | tasks:read + threads:read + emails:read |
| tasks.listAll() | GET /tasks | tasks:read + threads:read + emails:read |
| tasks.iterate() | GET /tasks | tasks:read + threads:read + emails:read |
| tasks.get() | GET /tasks/{id} | tasks:read + threads:read + emails:read |
| tasks.create() | POST /tasks | tasks:write + threads:read + threads:write + emails:read + emails:send + labels:write |
| tasks.update() | PATCH /tasks/{id} | tasks:write + threads:read + threads:write + emails:read + emails:send + labels:write |
| tasks.delete() | DELETE /tasks/{id} | tasks:write |
| tasks.pause() | POST /tasks/{id}/pause | tasks:write |
| tasks.resume() | POST /tasks/{id}/resume | tasks:write + threads:read + threads:write + emails:read + emails:send + labels:write |
| tasks.run() | POST /tasks/{id}/run | tasks:write + threads:read + threads:write + emails:read + emails:send + labels:write |
| tasks.listRuns() | GET /task-runs | tasks:read + threads:read + emails:read |
| tasks.listAllRuns() | GET /task-runs | tasks:read + threads:read + emails:read |
| tasks.iterateRuns() | GET /task-runs | tasks:read + threads:read + emails:read |
| tasks.getRun() | GET /task-runs/{id} | tasks:read + threads:read + emails:read |
| tasks.startRun() | POST /task-runs | tasks:write + threads:read + threads:write + emails:read + emails:send + labels:write |
| tasks.cancelRun() | POST /task-runs/{id}/cancel | tasks:write |
| tasks.listApprovals() | GET /task-approvals | tasks:read + threads:read + emails:read |
| tasks.listAllApprovals() | GET /task-approvals | tasks:read + threads:read + emails:read |
| tasks.iterateApprovals() | GET /task-approvals | tasks:read + threads:read + emails:read |
| tasks.getApproval() | GET /task-approvals/{id} | tasks:read + threads:read + emails:read |
| tasks.approve() | POST /task-approvals/{id}/approve | tasks:write + threads:read + threads:write + emails:read + emails:send + labels:write |
| tasks.deny() | POST /task-approvals/{id}/deny | tasks:write |
| bookings.listPages() | GET /booking-pages | calendar:read |
| bookings.getPage() | GET /booking-pages/{id} | calendar:read |
| bookings.createPage() | POST /booking-pages | calendar:write + emails:send |
| bookings.updatePage() | PATCH /booking-pages/{id} | calendar:write + emails:send |
| bookings.uploadBackground() | PUT /booking-pages/{id}/background | calendar:write + emails:send |
| bookings.removeBackground() | DELETE /booking-pages/{id}/background | calendar:write + emails:send |
| bookings.deletePage() | DELETE /booking-pages/{id} | calendar:write |
| bookings.listTimes() | GET /booking-pages/{id}/times | calendar:read |
| bookings.list() | GET /bookings | calendar:read |
| bookings.listAll() | GET /bookings | calendar:read |
| bookings.iterate() | GET /bookings | calendar:read |
| bookings.get() | GET /bookings/{id} | calendar:read |
| bookings.approve() | POST /bookings/{id}/approve | calendar:write + emails:send |
| bookings.decline() | POST /bookings/{id}/decline | calendar:write + emails:send |
| bookings.cancel() | POST /bookings/{id}/cancel | calendar:write + emails:send |
| bookings.resendEmail() | POST /bookings/{id}/resend | calendar:write + emails:send |
| bookings.analytics() | GET /bookings/analytics | calendar:read |
| bookings.reschedule() | POST /bookings/{id}/reschedule | calendar:write + emails:send |
| connectors.listApps() | GET /connector-apps | connectors:read |
| connectors.listAllApps() | GET /connector-apps | connectors:read |
| connectors.iterateApps() | GET /connector-apps | connectors:read |
| connectors.getApp() | GET /connector-apps/{slug} | connectors:read |
| connectors.listCategories() | GET /connector-categories | connectors:read |
| connectors.list() | GET /connectors | connectors:read |
| connectors.get() | GET /connectors/{id} | connectors:read |
| connectors.connect() | POST /connectors | connectors:write |
| connectors.update() | PATCH /connectors/{id} | connectors:write |
| connectors.disconnect() | DELETE /connectors/{id} | connectors:write |
| connectors.reconnect() | POST /connectors/{id}/reconnect | connectors:write |
| connectors.listActions() | GET /connectors/{id}/actions | connectors:use |
| connectors.getAction() | GET /connectors/{id}/actions/{action} | connectors:use |
| connectors.runAction() | POST /connectors/{id}/actions/{action}/run | connectors:use |
| connectors.listCalls() | GET /connector-calls | connectors:read |
| connectors.listAllCalls() | GET /connector-calls | connectors:read |
| connectors.iterateCalls() | GET /connector-calls | connectors:read |
| connectedMailboxes.list() | GET /connected-mailboxes | threads:read |
| connectedMailboxes.get() | GET /connected-mailboxes/{id} | threads:read |
| connectedMailboxes.discover() | GET /connected-mailboxes/settings | domains:write |
| connectedMailboxes.connect() | POST /connected-mailboxes | domains:write |
| connectedMailboxes.update() | PATCH /connected-mailboxes/{id} | domains:write |
| connectedMailboxes.sync() | POST /connected-mailboxes/{id}/sync | threads:write |
| connectedMailboxes.disconnect() | DELETE /connected-mailboxes/{id} | domains:write |
The tempMail rows say "inbox token" where every other row names a scope, and that is not shorthand for one. Disposable inboxes are the only resource on the API that authenticates with something other than a key: listDomains and create send no credential at all, like forms.subscribe, and the other nine authenticate with the oe_inbox_ token that create returned, or with the newer one that extend returns, since only the new token carries the later expiry. Pass it as inboxToken on each call, or build a client for that inbox with createTempMail({ inboxToken }). Without one, a workspace client falls back to its API key, which the API refuses with 401 missing_inbox_token rather than silently accepting.
The logs page the same way. On webhooks, listWorkspaceDeliveries, listActivity and listWorkspaceActivity each walk with a listAll… and an iterate… of the same name, and on keys so do list, listRequests, listActivity, listWorkspaceRequests and listWorkspaceActivity. On me, listRequests and listActivity do too.
The three security rows were added in 0.0.6. They need no scope because they answer an OAuth access token only, and an API key calling one gets 400 step_up_not_applicable.