> For a complete page index, fetch https://developer.close.com/llms.txt # Initiate a new bulk email POST https://api.close.com/api/v1/bulk_action/email/ Content-Type: application/json `contact_preference` can be set to `lead` (only email the primary/first contact email of the lead) or `contact` (email the first contact email of each contact of the lead). Reference: https://developer.close.com/api/resources/bulk-actions/email/create ## Authentication - `Authorization` header (basic auth, required) — Use your API key as the username and leave the password empty. - `Authorization` header (bearer token, required) — Bearer authentication of the form `Bearer `, where token is your auth token. ## Request ### Body (application/json) This endpoint expects an any. - `any` ## Response ### 200 Successful response - `contact_preference` (enum, required, nullable) - Allowed values: `lead`, `contact`, `all` - `created_by` (string, required, nullable) - `date_created` (datetime, required, nullable) - `date_updated` (datetime, required, nullable) - `email_account_id` (string, required, nullable) - `id` (string, required) - `n_leads` (integer, required, nullable) - `n_leads_processed` (integer, required) - `n_objects` (integer, required, nullable) - `n_objects_processed` (integer, required) - `organization_id` (string, required) - `query` (string, required, nullable) - `results_limit` (integer, required, nullable) - `s_query` (map from string to any, required) - `send_done_email` (boolean, required) - `sender` (string, required, nullable) - `sort` (list of map from string to any, required) - `status` (enum, required, nullable) - Allowed values: `created`, `loading`, `processing`, `done`, `paused`, `resuming`, `error` - `template_id` (string, required, nullable) - `updated_by` (string, required, nullable) ## Errors ### 400 Bad Request Error Bad request - `any` ### 401 Unauthorized Error Unauthorized - `any` ### 404 Not Found Error Not found - `any` ## Examples **Request** ```json { "contact_preference": "lead", "results_limit": null, "s_query": { "queries": [ { "object_type": "lead", "type": "object_type" }, { "condition": { "mode": "full_words", "type": "text", "value": "ACME Inc." }, "field": { "field_name": "name", "object_type": "lead", "type": "regular_field" }, "type": "field_condition" } ], "type": "and" }, "send_done_email": false, "sort": [ { "direction": "desc", "field": { "field_name": "date_created", "object_type": "lead", "type": "regular_field" } } ], "template_id": "tmpl_00jcushDRuoBBS5sSTUAbNt4dPpBUhlJqQafVfzzRJn" } ``` **Response** ```json { "contact_preference": "lead", "created_by": "user_N6KhMpzHRCYQHdn4gRNIFNN5JExnsrprKA6ekxM63XA", "date_created": "2013-12-05T18:34:41.753000+00:00", "date_updated": "2013-12-05T19:33:29.357000+00:00", "email_account_id": "emailacct_qwSIFLEjbJXBJOGb0KsqSvnxX5P9DTXUMnb6mFBLxNt", "id": "bulkemail_qmjJY85TSmMBqw1MKgL5o3LdSJkvklqfAwfdcjiRYCy", "n_leads": null, "n_leads_processed": 0, "n_objects": null, "n_objects_processed": 0, "organization_id": "orga_RbREgmiiwcr1w2b4cOnCMQaQPSIFxMqAD2Dh243uxcH", "query": "lead_status:Potential", "results_limit": null, "s_query": { "queries": [ { "object_type": "lead", "type": "object_type" }, { "condition": { "mode": "full_words", "type": "text", "value": "ACME Inc." }, "field": { "field_name": "name", "object_type": "lead", "type": "regular_field" }, "type": "field_condition" } ], "type": "and" }, "send_done_email": false, "sender": "sender@example.com", "sort": [ { "direction": "desc", "field": { "field_name": "date_created", "object_type": "lead", "type": "regular_field" } } ], "status": "created", "template_id": "tmpl_00jcushDRuoBBS5sSTUAbNt4dPpBUhlJqQafVfzzRJn", "updated_by": "user_N6KhMpzHRCYQHdn4gRNIFNN5JExnsrprKA6ekxM63XA" } ``` **SDK Code** ```python import requests url = "https://api.close.com/api/v1/bulk_action/email/" payload = { "contact_preference": "lead", "results_limit": None, "s_query": { "queries": [ { "object_type": "lead", "type": "object_type" }, { "condition": { "mode": "full_words", "type": "text", "value": "ACME Inc." }, "field": { "field_name": "name", "object_type": "lead", "type": "regular_field" }, "type": "field_condition" } ], "type": "and" }, "send_done_email": False, "sort": [ { "direction": "desc", "field": { "field_name": "date_created", "object_type": "lead", "type": "regular_field" } } ], "template_id": "tmpl_00jcushDRuoBBS5sSTUAbNt4dPpBUhlJqQafVfzzRJn" } headers = { "Content-Type": "application/json" } response = requests.post(url, json=payload, headers=headers, auth=("", "")) print(response.json()) ``` ```javascript const url = 'https://api.close.com/api/v1/bulk_action/email/'; const credentials = btoa(":"); const options = { method: 'POST', headers: {Authorization: `Basic ${credentials}`, 'Content-Type': 'application/json'}, body: '{"contact_preference":"lead","results_limit":null,"s_query":{"queries":[{"object_type":"lead","type":"object_type"},{"condition":{"mode":"full_words","type":"text","value":"ACME Inc."},"field":{"field_name":"name","object_type":"lead","type":"regular_field"},"type":"field_condition"}],"type":"and"},"send_done_email":false,"sort":[{"direction":"desc","field":{"field_name":"date_created","object_type":"lead","type":"regular_field"}}],"template_id":"tmpl_00jcushDRuoBBS5sSTUAbNt4dPpBUhlJqQafVfzzRJn"}' }; try { const response = await fetch(url, options); const data = await response.json(); console.log(data); } catch (error) { console.error(error); } ``` ```go package main import ( "fmt" "strings" "net/http" "io" ) func main() { url := "https://api.close.com/api/v1/bulk_action/email/" payload := strings.NewReader("{\n \"contact_preference\": \"lead\",\n \"results_limit\": null,\n \"s_query\": {\n \"queries\": [\n {\n \"object_type\": \"lead\",\n \"type\": \"object_type\"\n },\n {\n \"condition\": {\n \"mode\": \"full_words\",\n \"type\": \"text\",\n \"value\": \"ACME Inc.\"\n },\n \"field\": {\n \"field_name\": \"name\",\n \"object_type\": \"lead\",\n \"type\": \"regular_field\"\n },\n \"type\": \"field_condition\"\n }\n ],\n \"type\": \"and\"\n },\n \"send_done_email\": false,\n \"sort\": [\n {\n \"direction\": \"desc\",\n \"field\": {\n \"field_name\": \"date_created\",\n \"object_type\": \"lead\",\n \"type\": \"regular_field\"\n }\n }\n ],\n \"template_id\": \"tmpl_00jcushDRuoBBS5sSTUAbNt4dPpBUhlJqQafVfzzRJn\"\n}") req, _ := http.NewRequest("POST", url, payload) req.SetBasicAuth("", "") req.Header.Add("Content-Type", "application/json") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := io.ReadAll(res.Body) fmt.Println(res) fmt.Println(string(body)) } ``` ```ruby require 'uri' require 'net/http' url = URI("https://api.close.com/api/v1/bulk_action/email/") http = Net::HTTP.new(url.host, url.port) http.use_ssl = true request = Net::HTTP::Post.new(url) request.basic_auth("", "") request["Content-Type"] = 'application/json' request.body = "{\n \"contact_preference\": \"lead\",\n \"results_limit\": null,\n \"s_query\": {\n \"queries\": [\n {\n \"object_type\": \"lead\",\n \"type\": \"object_type\"\n },\n {\n \"condition\": {\n \"mode\": \"full_words\",\n \"type\": \"text\",\n \"value\": \"ACME Inc.\"\n },\n \"field\": {\n \"field_name\": \"name\",\n \"object_type\": \"lead\",\n \"type\": \"regular_field\"\n },\n \"type\": \"field_condition\"\n }\n ],\n \"type\": \"and\"\n },\n \"send_done_email\": false,\n \"sort\": [\n {\n \"direction\": \"desc\",\n \"field\": {\n \"field_name\": \"date_created\",\n \"object_type\": \"lead\",\n \"type\": \"regular_field\"\n }\n }\n ],\n \"template_id\": \"tmpl_00jcushDRuoBBS5sSTUAbNt4dPpBUhlJqQafVfzzRJn\"\n}" response = http.request(request) puts response.read_body ``` ```java import com.mashape.unirest.http.HttpResponse; import com.mashape.unirest.http.Unirest; HttpResponse response = Unirest.post("https://api.close.com/api/v1/bulk_action/email/") .basicAuth("", "") .header("Content-Type", "application/json") .body("{\n \"contact_preference\": \"lead\",\n \"results_limit\": null,\n \"s_query\": {\n \"queries\": [\n {\n \"object_type\": \"lead\",\n \"type\": \"object_type\"\n },\n {\n \"condition\": {\n \"mode\": \"full_words\",\n \"type\": \"text\",\n \"value\": \"ACME Inc.\"\n },\n \"field\": {\n \"field_name\": \"name\",\n \"object_type\": \"lead\",\n \"type\": \"regular_field\"\n },\n \"type\": \"field_condition\"\n }\n ],\n \"type\": \"and\"\n },\n \"send_done_email\": false,\n \"sort\": [\n {\n \"direction\": \"desc\",\n \"field\": {\n \"field_name\": \"date_created\",\n \"object_type\": \"lead\",\n \"type\": \"regular_field\"\n }\n }\n ],\n \"template_id\": \"tmpl_00jcushDRuoBBS5sSTUAbNt4dPpBUhlJqQafVfzzRJn\"\n}") .asString(); ``` ```php request('POST', 'https://api.close.com/api/v1/bulk_action/email/', [ 'body' => '{ "contact_preference": "lead", "results_limit": null, "s_query": { "queries": [ { "object_type": "lead", "type": "object_type" }, { "condition": { "mode": "full_words", "type": "text", "value": "ACME Inc." }, "field": { "field_name": "name", "object_type": "lead", "type": "regular_field" }, "type": "field_condition" } ], "type": "and" }, "send_done_email": false, "sort": [ { "direction": "desc", "field": { "field_name": "date_created", "object_type": "lead", "type": "regular_field" } } ], "template_id": "tmpl_00jcushDRuoBBS5sSTUAbNt4dPpBUhlJqQafVfzzRJn" }', 'headers' => [ 'Content-Type' => 'application/json', ], 'auth' => ['', ''], ]); echo $response->getBody(); ``` ```csharp using RestSharp; using RestSharp.Authenticators; var client = new RestClient("https://api.close.com/api/v1/bulk_action/email/"); client.Authenticator = new HttpBasicAuthenticator("", ""); var request = new RestRequest(Method.POST); request.AddHeader("Content-Type", "application/json"); request.AddParameter("application/json", "{\n \"contact_preference\": \"lead\",\n \"results_limit\": null,\n \"s_query\": {\n \"queries\": [\n {\n \"object_type\": \"lead\",\n \"type\": \"object_type\"\n },\n {\n \"condition\": {\n \"mode\": \"full_words\",\n \"type\": \"text\",\n \"value\": \"ACME Inc.\"\n },\n \"field\": {\n \"field_name\": \"name\",\n \"object_type\": \"lead\",\n \"type\": \"regular_field\"\n },\n \"type\": \"field_condition\"\n }\n ],\n \"type\": \"and\"\n },\n \"send_done_email\": false,\n \"sort\": [\n {\n \"direction\": \"desc\",\n \"field\": {\n \"field_name\": \"date_created\",\n \"object_type\": \"lead\",\n \"type\": \"regular_field\"\n }\n }\n ],\n \"template_id\": \"tmpl_00jcushDRuoBBS5sSTUAbNt4dPpBUhlJqQafVfzzRJn\"\n}", ParameterType.RequestBody); IRestResponse response = client.Execute(request); ```