# Search for Outreach Emails Use the Search for Outreach Emails endpoint to find emails that your team has created and sent as part of Apollo sequences.

To protect Apollo's performance for all users, this endpoint has a display limit of 50,000 records (100 records per page, up to 500 pages). Add more filters to narrow your search results as much as possible. This limitation does not restrict your access to Apollo's database; you just need to access the data in batches.

This endpoint requires a master API key. If you attempt to call the endpoint without a master key, you will receive a `403` response. Refer to Create API Keys to learn how to create a master API key. # OpenAPI definition ```json { "openapi": "3.1.0", "info": { "title": "apollo-rest-api", "version": "1.0" }, "servers": [ { "url": "https://api.apollo.io/api/v1" } ], "components": { "securitySchemes": { "apiKey": { "type": "apiKey", "in": "header", "name": "x-api-key", "description": "API key" }, "bearerAuth": { "type": "http", "scheme": "bearer", "bearerFormat": "JWT", "description": "[Recommended] OAuth Access token" } } }, "security": [ { "bearerAuth": [] }, { "apiKey": [] } ], "paths": { "/emailer_messages/search": { "get": { "description": "", "operationId": "emailer_messages/search", "responses": { "200": { "description": "OK", "content": { "application/json": { "examples": { "OK": { "summary": "OK", "value": "{\n {\n \"breadcrumbs\": [],\n \"emailer_messages\": [\n {\n \"id\": \"684b2203a2ce950021cbf730\",\n \"user_id\": \"66302798d03b9601c7934ebf\",\n \"status\": \"failed\",\n \"time_zone\": \"America/Los_Angeles\",\n \"provider_message_id\": null,\n \"to_name\": \"Paige York\",\n \"due_at\": \"2025-06-12T18:57:08.553+00:00\",\n \"completed_at\": null,\n \"emailer_touch_id\": \"684b216ec95a4f001d968d1b\",\n \"emailer_campaign_id\": \"684b215edf80730019db612c\",\n \"emailer_step_id\": \"684b216ec95a4f001d968d19\",\n \"failed_at\": \"2025-06-12T19:04:06.820+00:00\",\n \"failure_reason\": \"Account stage is Active Opportunity. Change stage for account or adjust settings under Sequence => Settings and retry.\",\n \"attachment_ids\": [],\n \"enable_tracking\": true,\n \"type\": \"outreach_automatic_email\",\n \"contact_id\": \"66ad20ab23d5d40001c8d07d\",\n \"provider_thread_id\": null,\n \"schedule_delayed_reason\": null,\n \"demoed\": null,\n \"email_account_id\": \"6633baaece5fbd01c791d7ca\",\n \"due_at_manually_changed\": true,\n \"not_sent_reason\": \"account_stage_safeguard\",\n \"bounce\": null,\n \"spam_blocked\": null,\n \"tracking_disabled_reason\": null,\n \"created_at\": \"2025-06-12T18:52:51.021Z\",\n \"async_sending\": true,\n \"due_at_source\": \"Email was sent using Send Now action\",\n \"crm_id\": null,\n \"replied\": null,\n \"needs_dynamic_assemble\": true,\n \"personalized_opener\": null,\n \"reply_class\": null,\n \"schedule_delayed_limit_reason\": null,\n \"schedule_delayed_reason_details\": null,\n \"sensitive_info_redacted\": null,\n \"account_id\": \"6518c6184f20350001a0b9c0\",\n \"recipients\": [\n {\n \"email\": \"paige.york@apollo.io\",\n \"raw_name\": \"Paige York\",\n \"recipient_type_cd\": \"to\",\n \"contact_id\": \"66ad20ab23d5d40001c8d07d\",\n \"user_id\": null\n }\n ],\n \"send_from\": {\n \"email\": \"test.brandan.blevins@apollomail.io\",\n \"raw_name\": \"David Smith\",\n \"recipient_type_cd\": null,\n \"contact_id\": null,\n \"user_id\": null\n },\n \"from_email\": \"test.brandan.blevins@apollomail.io\",\n \"to_email\": \"paige.york@apollo.io\",\n \"from_name\": \"David Smith\",\n \"bcc_emails\": [],\n \"cc_emails\": [],\n \"send_from_info\": \"6633baaece5fbd01c791d7ca***test.brandan.blevins@apollomail.io\",\n \"body_text\": \"Check out my email now!David SmithApollo Knowledge Base \",\n \"body_html\": \"
Check out my email now!

David Smith
Apollo Knowledge Base
\",\n \"body_html_loaded\": true,\n \"appendment_html\": \"\",\n \"appendment_html_loaded\": true,\n \"subject\": \"Stats for you\",\n \"campaign_name\": \"Stats Sequences DO NOT USE\",\n \"campaign_max_emails_per_day\": null,\n \"campaign_position\": 1,\n \"step_max_emails_per_day\": null\n },\n {\n \"id\": \"684b2203a2ce950021cbf72d\",\n \"user_id\": \"66302798d03b9601c7934ebf\",\n \"status\": \"failed\",\n \"time_zone\": \"America/Los_Angeles\",\n \"provider_message_id\": null,\n \"to_name\": \"Justin Keith\",\n \"due_at\": \"2025-06-12T18:57:14.197+00:00\",\n \"completed_at\": null,\n \"emailer_touch_id\": \"684b216ec95a4f001d968d1b\",\n \"emailer_campaign_id\": \"684b215edf80730019db612c\",\n \"emailer_step_id\": \"684b216ec95a4f001d968d19\",\n \"failed_at\": \"2025-06-12T19:04:09.180+00:00\",\n \"failure_reason\": \"Contact stage is Interested. Change stage for contact or adjust settings under Sequence => Settings and retry.\",\n \"attachment_ids\": [],\n \"enable_tracking\": true,\n \"type\": \"outreach_automatic_email\",\n \"contact_id\": \"6601a68fca35d8000718d42b\",\n \"provider_thread_id\": null,\n \"schedule_delayed_reason\": null,\n \"demoed\": null,\n \"email_account_id\": \"6633baaece5fbd01c791d7ca\",\n \"due_at_manually_changed\": true,\n \"not_sent_reason\": \"contact_stage_safeguard\",\n \"bounce\": null,\n \"spam_blocked\": null,\n \"tracking_disabled_reason\": null,\n \"created_at\": \"2025-06-12T18:52:51.021Z\",\n \"async_sending\": true,\n \"due_at_source\": \"Email was sent using Send Now action\",\n \"crm_id\": null,\n \"replied\": null,\n \"needs_dynamic_assemble\": true,\n \"personalized_opener\": null,\n \"reply_class\": null,\n \"schedule_delayed_limit_reason\": null,\n \"schedule_delayed_reason_details\": null,\n \"sensitive_info_redacted\": null,\n \"account_id\": \"6518c6184f20350001a0b9c0\",\n \"recipients\": [\n {\n \"email\": \"justin.k@ymail.org\",\n \"raw_name\": \"Justin Keith\",\n \"recipient_type_cd\": \"to\",\n \"contact_id\": \"6601a68fca35d8000718d42b\",\n \"user_id\": null\n }\n ],\n \"send_from\": {\n \"email\": \"test.brandan.blevins@apollomail.io\",\n \"raw_name\": \"David Smith\",\n \"recipient_type_cd\": null,\n \"contact_id\": null,\n \"user_id\": null\n },\n \"from_email\": \"test.brandan.blevins@apollomail.io\",\n \"to_email\": \"justin.k@ymail.org\",\n \"from_name\": \"David Smith\",\n \"bcc_emails\": [],\n \"cc_emails\": [],\n \"send_from_info\": \"6633baaece5fbd01c791d7ca***test.brandan.blevins@apollomail.io\",\n \"body_text\": \"Check out my email now!David SmithApollo Knowledge Base \",\n \"body_html\": \"
Check out my email now!

David Smith
Apollo Knowledge Base
\",\n \"body_html_loaded\": true,\n \"appendment_html\": \"\",\n \"appendment_html_loaded\": true,\n \"subject\": \"Stats for you\",\n \"campaign_name\": \"Stats Sequences DO NOT USE\",\n \"campaign_max_emails_per_day\": null,\n \"campaign_position\": 1,\n \"step_max_emails_per_day\": null\n }\n ],\n \"emailer_steps\": [\n {\n \"id\": \"684b216ec95a4f001d968d19\",\n \"emailer_campaign_id\": \"684b215edf80730019db612c\",\n \"wait_time\": 0,\n \"wait_mode\": \"minute\",\n \"max_emails_per_day\": null,\n \"exact_datetime\": null,\n \"auto_skip_in_x_days\": null,\n \"position\": 1\n },\n {\n \"id\": \"684886e2e7c9bd0011e0b239\",\n \"emailer_campaign_id\": \"6848868536ec86001d300ce6\",\n \"wait_time\": 30,\n \"wait_mode\": \"minute\",\n \"max_emails_per_day\": null,\n \"exact_datetime\": null,\n \"auto_skip_in_x_days\": null,\n \"position\": 1\n },\n {\n \"id\": \"67bde6d5b5eeec0021ad09c4\",\n \"emailer_campaign_id\": \"67bde6d5b5eeec0021ad09c2\",\n \"wait_time\": 20,\n \"wait_mode\": \"day\",\n \"max_emails_per_day\": null,\n \"exact_datetime\": null,\n \"auto_skip_in_x_days\": null,\n \"position\": 1\n }\n ],\n \"num_fetch_result\": null\n}" } } } } }, "401": { "description": "Unauthorized", "content": { "text/plain": { "examples": { "Check API Key": { "value": "Invalid access credentials.", "summary": "Check API Key" } } } } }, "403": { "description": "Forbidden", "content": { "application/json": { "examples": { "Need Master API Key": { "value": "{\n \"error\": \"api/v1/usage_stats/api_usage_stats is not accessible with this api_key\",\n \"error_code\": \"API_INACCESSIBLE\"\n}", "summary": "Need Master API Key" } } } } } }, "parameters": [ { "name": "emailer_message_stats[]", "in": "query", "required": false, "description": "Find emails based on their current status, such as whether they were delivered or opened. You can add multiple statuses.

Possible values include: ", "schema": { "type": "array", "default": "", "items": { "type": "string" } } }, { "name": "emailer_message_reply_classes[]", "in": "query", "required": false, "description": "Find emails based on the response sentiment of the recipient. This can include the recipient expressing interest in meeting or having a follow-up question. You can add multiple values.

Possible values include: ", "schema": { "type": "array", "default": "", "items": { "type": "string" } } }, { "name": "user_ids[]", "in": "query", "required": false, "description": "Find emails sent by specific users in your team's Apollo account. You can add multiple users.

Use the Get a List of Users endpoint to retrieve IDs for all of the users within your Apollo account.

Example: `66302798d03b9601c7934ebf`", "schema": { "type": "array", "default": "", "items": { "type": "string" } } }, { "name": "email_account_id_and_aliases", "in": "query", "required": false, "description": "", "schema": { "type": "string", "default": "" } }, { "name": "emailer_campaign_ids[]", "in": "query", "required": false, "description": "Search for emails that are included in specific sequences in your Apollo account. You can search multiple sequences. Any sequence not included in this parameter will be exclude from search results.

To find sequence IDs, call the Search for Sequences endpoint and identify the `id` value for the sequence.

Example: `66e9e215ece19801b219997f`", "schema": { "type": "array", "default": "", "items": { "type": "string" } } }, { "name": "not_emailer_campaign_ids[]", "in": "query", "required": false, "description": "Exclude emails from specific sequences in your Apollo account. You can exclude multiple sequences. Any sequence not excluded using this parameter will be included in search results.

To find sequence IDs, call the Search for Sequences endpoint and identify the `id` value for the sequence.

Example: `66e9e215ece19801b219997f`", "schema": { "type": "array", "default": "", "items": { "type": "string" } } }, { "name": "emailer_message_date_range_mode", "in": "query", "required": false, "description": "Use this parameter in combination with the `emailer_message_date_range[max]` and `emailer_message_date_range[min]` parameters. Find emails based on 1 of the following options: ", "schema": { "type": "string", "default": "" } }, { "name": "emailer_message_date_range[max]", "in": "query", "required": false, "description": "Set the upper bound of the date range you want to search.

Use this parameter in combination with the `emailer_message_date_range[min]` and `emailer_message_date_range_mode` parameters. This date should fall after the `emailer_message_date_range[min]` date.

The date should be formatted as `YYYY-MM-DD`.

Example: `2025-10-30`", "schema": { "type": "string", "format": "date", "default": "" } }, { "name": "emailer_message_date_range[min]", "in": "query", "required": false, "description": "Set the lower bound of the date range you want to search.

Use this parameter in combination with the `emailer_message_date_range[max]` and `emailer_message_date_range_mode` parameters. This date should fall before the `emailer_message_date_range[max]` date.

The date should be formatted as `YYYY-MM-DD`.

Example: `2025-10-30`", "schema": { "type": "string", "format": "date", "default": "" } }, { "name": "not_sent_reason_cds[]", "in": "query", "required": false, "description": "Find emails based on the reason they were not sent. You can add multiple values.

Possible values include: ", "schema": { "type": "array", "default": "", "items": { "type": "string" } } }, { "name": "q_keywords", "in": "query", "required": false, "description": "Add keywords to narrow the search of the emails in your team's Apollo account.

Keywords should directly match at least part of an email's content. For example, searching the keyword `James` might return emails that were sent by `James Smith`.

Example: `Jane`", "schema": { "type": "string", "default": "" } }, { "name": "page", "in": "query", "description": "The page number of the Apollo data that you want to retrieve.

Use this parameter in combination with the `per_page` parameter to make search results for navigable and improve the performance of the endpoint.

Example: `4`", "schema": { "type": "integer", "format": "int32" } }, { "name": "per_page", "in": "query", "description": "The number of search results that should be returned for each page. Limiting the number of results per page improves the endpoint's performance.

Use the `page` parameter to search the different pages of data.

Example: `10`", "schema": { "type": "integer", "format": "int32" } } ] } } }, "x-readme": { "headers": [ { "key": "Cache-Control", "value": "no-cache" }, { "key": "Content-Type", "value": "application/json" } ], "explorer-enabled": true, "proxy-enabled": true }, "x-readme-fauxas": true } ```