{"_id":"55f2ea90525cb12300c6c56c","parentDoc":null,"user":"55dd9841cafe7221002a4c62","project":"55dd9f2e0efd5821000d54d9","version":{"_id":"55dd9f4dab0e4d210045aae9","__v":39,"project":"55dd9f2e0efd5821000d54d9","createdAt":"2015-08-26T11:13:17.024Z","releaseDate":"2015-08-26T11:13:17.024Z","categories":["55dd9f4dab0e4d210045aaea","55ddb5fa9067202b00ddff6f","55e0472c6bad670d0081f213","55e04764a44fae0d00214671","55e047a9a44fae0d00214672","55e047b258c5460d0076a9a7","55e95e337fc27b2d00d32cf2","55e979bda7ca823900ad549a","55edb8c18dcb210d0056900b","55f0365c8563861700a33765","55f03677d58f9b1900acf996","55f036938eeefc23001ea5de","55f036a38563861700a33767","55f036c08563861700a33769","55f036d02911b72100482cd7","55f036e92911b72100482cd9","55f036fa8563861700a3376b","55f0370ee507711900e58c69","55f0371df6101b1900c70700","55f0374f2911b72100482cdb","55f0375e2911b72100482cdc","560eb0f659cb8d0d0015cd52","560eb25239fad419002ae1e0","561fb64d4d67490d00804b2a","562b9f775a39cd0d009aff22","562ba0505a39cd0d009aff23","562ba149d56bc30d00f0cb18","562ba595f68a5f0d007b1f3b","562ba78fd56bc30d00f0cb1b","562ba8b95a39cd0d009aff27","562baadf6562140d001501d2","562bab37f68a5f0d007b1f3d","562bc1bf9ebc950d000f7523","562bc99ced4bea0d00c11dfa","562bd29c1b98640d00714520","562bd5875a39cd0d009aff60","562bdfabff2da50d002c0aaf","562be0bd5a39cd0d009aff75","57a0b476d8313e1900454439"],"is_deprecated":false,"is_hidden":false,"is_beta":false,"is_stable":true,"codename":"","version_clean":"2.0.0","version":"2"},"__v":4,"category":{"_id":"55e047b258c5460d0076a9a7","__v":24,"project":"55dd9f2e0efd5821000d54d9","version":"55dd9f4dab0e4d210045aae9","pages":["55ed71142bdb6a2d0064f216","55ed71e1a872a80d00acff1a","55ed72a8df21af2b009e215f","55ef03aae7f5490d000c0dfd","55f1872e5fe76419007dc703","55f2af86d1c4c7170033df2b","55f2d812525cb12300c6c517","55f2db08c93a2d230062f971","55f2deaacb01c71900c8e218","55f2e024fb7aad2300bf1823","55f2e1f6525cb12300c6c554","55f2e47ffb7aad2300bf182b","55f2ea90525cb12300c6c56c","55f2ed9ecb01c71900c8e24a","55f2f26f71c6462100e0fdf1","55f2f2e3c93a2d230062f9af","55f2f3bdc93a2d230062f9b1","55fc1d6ae013770d008fcbf3","55fc249ff4dbbf0d008f43ef","55fc2bd3e013770d008fcc0b","55ffda3d8c0c9d0d00dcacb4","55ffdf828c0c9d0d00dcacba","55ffe1a56932a00d00ba7abc","560d322c3616cf0d00a8cc97"],"sync":{"url":"","isSync":false},"reference":false,"createdAt":"2015-08-28T11:36:18.041Z","from_sync":false,"order":5,"slug":"contacts","title":"Contacts"},"editedParams2":true,"editedParams":true,"updates":["5630c314c3a8150d00fb794a"],"next":{"pages":[],"description":""},"createdAt":"2015-09-11T14:52:00.111Z","link_external":false,"link_url":"","githubsync":"","sync_unique":"","hidden":false,"api":{"examples":{"codes":[{"name":"","code":"var url = \"/v2/contacts/import\";\nvar filePath = :::at:::\"FileName.csv\";\nusing (var multipartFormDataContent = new MultipartFormDataContent())\nusing (var fileContent = new ByteArrayContent(File.ReadAllBytes(filePath)))\nusing (var httpClient = new HttpClient())\n{\n\tfileContent.Headers.ContentType = MediaTypeHeaderValue.Parse(\"text/csv\");\n\tfileContent.Headers.ContentDisposition = new ContentDispositionHeaderValue(\"attachment\")\n\t\t{\n\t\t\tFileName = \"FileName.csv\",\n\t\t\tDispositionType = DispositionTypeNames.Attachment,\n\t\t\tName = \"fileData\"\n\t\t};\n\tmultipartFormDataContent.Add(fileContent);\n\thttpClient.BaseAddress = new Uri(\"https://api.dotmailer.com\");\n\tvar credentials = Encoding.ASCII.GetBytes(\"username:password\");\n\thttpClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue(\"Basic\", Convert.ToBase64String(credentials));\n\tvar result = httpClient.PostAsync(url, multipartFormDataContent).Result;\n}","language":"csharp"},{"language":"json","code":""},{"code":"$baseUrl = 'https://api.dotmailer.com';\n$url = $baseUrl . \"/v2/contacts/import\";\n$filename = 'FileName.csv';\n$ch = curl_init();\ncurl_setopt($ch, CURLOPT_URL, $url);\ncurl_setopt($ch, CURLOPT_RETURNTRANSFER, true);\ncurl_setopt(\n    $ch, CURLOPT_HTTPHEADER, array(\n        'Content-Type: multipart/form-data')\n);\ncurl_setopt($ch, CURLAUTH_BASIC, CURLAUTH_DIGEST);\ncurl_setopt(\n    $ch, CURLOPT_USERPWD,\n    $apiUsername . ':' . $apiPassword\n);\ncurl_setopt($ch, CURLOPT_CUSTOMREQUEST, \"POST\");\ncurl_setopt($ch, CURLOPT_SAFE_UPLOAD, false);\n$args['file'] = curl_file_create(\n    $filename, 'text/csv'\n);\ncurl_setopt($ch, CURLOPT_POSTFIELDS, $args);\n$response = json_decode(curl_exec($ch));","language":"php"}]},"method":"post","results":{"codes":[{"name":"","code":"{\n  \"id\": \"af4ac4bc-e1e7-4817-8a66-73fb59e91ce6\",\n  \"status\": \"NotFinished\"\n}","language":"json","status":202}]},"settings":"","auth":"required","params":[{"_id":"55deede1ddfb40170061cebc","ref":"","in":"body","required":true,"desc":"The CSV or Excel file to upload","default":"","type":"file","name":"FileData"}],"url":"/v:version/contacts/import"},"isReference":false,"order":12,"body":"This operation bulk creates, or bulk updates, contacts in the import file. \n\nThe import format can either be CSV or Excel. It must include one column called 'Email' or the translated equivalent if your account is using a language other than English. Any other columns will attempt to map to your custom contact data fields.\n\nThere is a 10MB file upload limit; if your file is larger than this, please break your upload into separate files.  \n\nThe ID of the returned object can be used to query import progress.\n\nThe possible status types are:\n\n* 'Finished' - The import has been accepted and has successfully imported \n* 'NotFinished' - The import has been accepted, but has not yet finished.\n* 'RejectedByWatchdog' - The import was rejected by Watchdog due to concerns with the quality of your email data; please contact support\n* 'InvalidFileFormat' - The file imported was not in the advised CSV or Excel format\n* 'Unknown' - The import has an unknown state which could indicate an invalid import ID; please contact support \n* 'Failed' - The import has failed; please contact support\n* 'ExceedsAllowedContactLimit' - The contacts you're trying to import exceeds your account's contact limit\n* 'NotAvailableInThisVersion' - This feature is not available in the version of the API you're using","excerpt":"Bulk creates, or bulk updates, contacts","slug":"bulk-create-contacts","type":"endpoint","title":"Bulk create contacts"}

postBulk create contacts

Bulk creates, or bulk updates, contacts

Definition

{{ api_url }}{{ page_api_url }}

Parameters

Body Params

FileData:
required
file
The CSV or Excel file to upload

Examples


Result Format


Documentation

This operation bulk creates, or bulk updates, contacts in the import file. The import format can either be CSV or Excel. It must include one column called 'Email' or the translated equivalent if your account is using a language other than English. Any other columns will attempt to map to your custom contact data fields. There is a 10MB file upload limit; if your file is larger than this, please break your upload into separate files. The ID of the returned object can be used to query import progress. The possible status types are: * 'Finished' - The import has been accepted and has successfully imported * 'NotFinished' - The import has been accepted, but has not yet finished. * 'RejectedByWatchdog' - The import was rejected by Watchdog due to concerns with the quality of your email data; please contact support * 'InvalidFileFormat' - The file imported was not in the advised CSV or Excel format * 'Unknown' - The import has an unknown state which could indicate an invalid import ID; please contact support * 'Failed' - The import has failed; please contact support * 'ExceedsAllowedContactLimit' - The contacts you're trying to import exceeds your account's contact limit * 'NotAvailableInThisVersion' - This feature is not available in the version of the API you're using