ContextIO
Context.IO is a modern, scalable email API that brings IMAP into the 21st century.Enrich your application with email data: contacts, attachments, receipts, reservations, travel information, and much more.Context.IO can connect to any IMAP enabled email including Gmail, Google Apps, Outlook, Yahoo, AOL, and more.Get near real-time notifications for new and sent messages via webhooks. We offer…
ContextIO endpoints
| Method | Endpoint | Description |
|---|---|---|
| POST |
connectTokensWizard /connectTokensWizard |
Connect tokens are a feature we provide to facilitate account creation. |
| POST |
createAccount /createAccount |
You can create an account with no source by only passing in the email param. If you choose this option, you will need to add a source later. |
| POST |
createApplicationLevelWebhook /createApplicationLevelWebhook |
Webhooks set at the application level apply to all users in your userbase.Application level webhooks encourage a more DRY approach to using the Context.IO API. |
| POST |
createOauthProvider /createOauthProvider |
Add an oauth provider. |
| POST |
createSources /createSources |
Use this endpoint to add a source to an existing account. An account id is required to add a source to an existing account. |
| POST |
createUserLevelWebhook /createUserLevelWebhook |
Webhooks set at the user level are applicable only to the user on which the webhook is set. User level webhooks should be used for cases when you will be monitoring things that… |
| POST |
deleteAccount /deleteAccount |
If you need to delete an account, you can do so by using this endpoint. This will delete the account and all sources associated with it. |
| POST |
deleteApplicationLevelWebhook /deleteApplicationLevelWebhook |
Delete a specific user level webhook. |
| POST |
deleteOauthProvider /deleteOauthProvider |
Delete an oauth provider. |
| POST |
deleteSource /deleteSource |
If you wish to only delete a certain source from the account, but not delete the account itself. |
| POST |
deleteUserLevelWebhook /deleteUserLevelWebhook |
Delete a specific user level webhook. |
| POST |
discoveringImapSettings /discoveringImapSettings |
If you prefer to handle your own authentication and add accounts or sources manually, you may want to check for IMAP configuration settings to add users. The Discovery endpoint… |
| POST |
downloadFilesContents /downloadFilesContents |
There are a couple ways you can download the file itself from the API.Get the file itself in the response;Get an AWS link you can use to download the file; |
| POST |
getAccountDetails /getAccountDetails |
Getting details at the account level will give you:Account creation date;List all sources linked to the account;Number of messages currently in the mailbox; |
| POST |
getAllApplicationWebhooks /getAllApplicationWebhooks |
List all application level webhooks. |
| POST |
getAllConnectTokensForAccount /getAllConnectTokensForAccount |
Use this call to list all connect tokens associated with an account (used or unused). |
| POST |
getAllConnectTokensForSource /getAllConnectTokensForSource |
Use this call to list all connect tokens associated with a source (used or unused). |
| POST |
getAllContacts /getAllContacts |
There are several ways you can interact with a user’s contacts. |
| POST |
getAllFiles /getAllFiles |
The name of a source in Context.IO is called a “label”. The label will be included in the response when you get account or source details and looks something like… |
| POST |
getAllMessages /getAllMessages |
List all messages in the account (including all sources associated with the account). This call hits our cache of metadata for the account, so this call should be faster than… |
| POST |
getAllOauthProviders /getAllOauthProviders |
List all oauth providers linked to your Context.IO API key. |
| POST |
getAllSourceFolders /getAllSourceFolders |
List folders for a given source (email address). |
| POST |
getAllSources /getAllSources |
If the account has more than once source, this endpoint will list all sources associated with the account. Optional parameters will allow you to filter by source status. |
| POST |
getAllUserWebhooks /getAllUserWebhooks |
List all webhooks set on a specific user. |
| POST |
getApplicationWebhookDetails /getApplicationWebhookDetails |
Get information about a single application level webhook, such whether it is active and what filters are set on the webhook. |
| POST |
getConnectTokenDetails /getConnectTokenDetails |
Getting data about connect token will tell you:If the connect token was used;It not used, you will see when it will expire;If the connect token was used, you will see data about… |
| POST |
getContactDetails /getContactDetails |
Get information about a given contact such as when a message was last sent or last received, as well as how many messages have been sent to this contact, or received from this… |
| POST |
getFileDetails /getFileDetails |
Get details about a specific file. |
| POST |
getFilesSharedWithContact /getFilesSharedWithContact |
List files shared with a specific contact(s). |
| POST |
getFolderMessages /getFolderMessages |
Listing messages from a specific folder. |
| POST |
getListMessagesExchange /getListMessagesExchange |
Get a list of email messages exchanged with one or more email addresses. This includes messages sent by a contact, received from a contact, or where both the contact and mailbox… |
| POST |
getListThreadsIncludeContact /getListThreadsIncludeContact |
List threads where a specific contact(s) is present in the recipient list. |
| POST |
getMessage /getMessage |
Get an individual message based on a `messageId`. You can use either a `messageId` or `emailMessageId` |
| POST |
getMessageBody /getMessageBody |
The name of a source in Context.IO is called a “label”. The label will be included in the response when you get account or source details and looks something like… |
| POST |
getMessageFlags /getMessageFlags |
This call lists all flags currently applied to this message. |
| POST |
getMessageFolders /getMessageFolders |
This call returns the folder(s) a message appears in. |
| POST |
getMessageHeaders /getMessageHeaders |
This call returns only the headers for this message. We send a parsed response by default, but you can also choose to get the raw RFC 822 headers. |
| POST |
getMessageRawSource /getMessageRawSource |
This endpoint returns the raw RFC 822 source message. |
| POST |
getMessageThread /getMessageThread |
This endpoint returns the the entire thread of messages a message is in that Context.IO has access to. Replies in the thread from accounts not in Context.Io would not appear here. |
| POST |
getOauthProviderDetails /getOauthProviderDetails |
Get information about an oauth provider. |
| POST |
getSourceDetail /getSourceDetail |
The name of a source in Context.IO is called a “label”. The label will be included in the response when you get account or source details and looks something like… |
| POST |
getSourceFolder /getSourceFolder |
Get information about a given folder such as number of messages, number of unseen messages, and other attributes. |
| POST |
getUserWebhookDetail /getUserWebhookDetail |
Get information about a single user level webhook, such whether it is active and what filters are set on the webhook. |
| POST |
moveMessage /moveMessage |
This call allows you to move a message between folders, or also change the message’s flags all at once. If there are more than one source on the account, you can use this call to… |
| POST |
updateApplicationLevelWebhook /updateApplicationLevelWebhook |
Edit an existing webhook. Please note changes to an existing webhook are not appended but overwritten.To update the user webhook, you must specify one of the optional parameters. |
| POST |
updateMessage /updateMessage |
This call allows you to copy or move a message between folders, or also change the message’s flags all at once. If there are more than one source on the account, you can use this… |
| POST |
updateMessageFlags /updateMessageFlags |
This call will allow you to set or unset flags for a specific message.To update the Messagge Flags, you must specify one of the parameters - seen,answered,flagged,deleted,draft. |
| POST |
updateUserLevelWebhook /updateUserLevelWebhook |
Webhooks set at the user level are applicable only to the user on which the webhook is set. User level webhooks should be used for cases when you will be monitoring things that… |
| POST |
webhookEvent /webhookEvent |
The Todoist Webhooks API allows applications to receive real-time notification (in the form of HTTP POST payload) on the subscribed user events. Notice that once you have a… |
ContextIO pricing
| Plan | Price | Rate limit | Quotas |
|---|---|---|---|
| BASIC | Free | — | — |