{"activeVersionTag":"latest","latestAvailableVersionTag":"latest","collection":{"info":{"_postman_id":"cdd8d958-807a-4079-96ff-8121a5f91fde","name":"Symplify API Documentation","description":"## Symplify API REST Documentation\n\n---\n\nThis document describes the Symplify public API and how to get started trying it out. Readers are assumed to have some familiarity with Symplify's graphical interface.\n\nThe API uses the REST methodology. A brief overview of RESTful web services can be found here:  \n[http://net.tutsplus.com/tutorials/other/a-beginners-introduction-to-http-and-rest/](http://net.tutsplus.com/tutorials/other/a-beginners-introduction-to-http-and-rest/)\n\nWhile you're looking into integration options, please also take a moment to read about our [Event Hub](https://help.symplify.com/hc/en-us/articles/360011841579), which is our prefered method for real time data updates.\n\n## About Postman\n\nSymplify uses Postman as a third-party library to document the REST API. You can preferably test using Postman or you can copy the resources to whatever environment your are using.\n\nYou can select your prefered language in the top.\n\n<img src=\"https://content.pstmn.io/4023cfb4-754e-41b6-be6a-59aadf5ada21/aW1hZ2UucG5n\" width=\"512\" height=\"230\">\n\nPlease note that when testing, it is your live data you're working with so any updates you make will alter settings for other users of your account so use **POST**/**PUT** and **DELETE** with care.\n\nAll examples in this documentation is prepared so that you can use a Postman environment where some static parameters are predefined, these are:\n\n- **`token`**  \n    Value: Your Symplify API token\n    \n- **`url`**  \n    server+rest:  \n    Value: \\[\\[\\[[https://eu-proxy-\\[x].symplifymail.com/rest](https://eu-proxy-\\[x].symplifymail.com/rest)](https://eu-proxy-\\[x].symplifymail.com/rest](https://eu-proxy-\\[x].symplifymail.com/rest)](https://eu-proxy-\\[x].symplifymail.com/rest](https://eu-proxy-\\[x].symplifymail.com/rest)](https://eu-proxy-\\[x].symplifymail.com/rest](https://eu-proxy-\\[x].symplifymail.com/rest)](https://eu-proxy-\\[x].symplifymail.com/rest](https://eu-proxy-\\[x].symplifymail.com/rest)](https://eu-proxy-\\[x].symplifymail.com/rest](https://eu-proxy-\\[x].symplifymail.com/rest)](https://eu-proxy-\\[x].symplifymail.com/rest](https://eu-proxy-\\[x].symplifymail.com/rest)](https://eu-proxy-\\[x].symplifymail.com/rest](https://eu-proxy-\\[x].symplifymail.com/rest))))  \n    (learn more below)\n    \n- **`customerId`**  \n    Value: Your customer ID\n    \n- **`listId`**  \n    Value: Your database ID\n    \n\n## Evolution of the API\n\nWe will strive to keep the API backward compatible. This means that:\n\n1. Resource URIs not will not change\n    \n2. Names of data fields in message body requests and responses will not change\n    \n3. Data fields in message body requests and responses will not be removed\n    \n4. New optional fields in message body requests and responses may be added in the future. Integrating systems should take this account, particularly when consuming responses from the REST API.\n    \n5. New resources will be added as new functionality is made publicly available\n    \n6. If incompatible changes are required in existing resources, the old ones will still be left available, unless the conditions under 7 apply.\n    \n7. In some very unusual cases, internal changes in the system may render existing resources obsolete or insufficient for the task they were originally intended. In these cases the original resource will be left in place, but will be modified to return the HTTP response code 410 (Gone), with a response body including information on the reason.\n    \n\n## ​\n\n### Customer ID\n\nYou must always include your customerId when calling a Symplify resource. Log in to Symplify and find your customer ID in the main menu bottom\n\n### Syntax\n\nFor most resources there are five methods you can call; get all, get one, create one, update one and delete one The syntax is mostly the same for all resources so you should be able to pick up the general idea pretty quick.\n\nThe URI structure generally looks like this:\n\n`{{server}}/rest/{{customerid}}/{{resource}}/{{id}}`\n\n**server**: `https://eu-proxy-\\[x].symplifymail.com` where \\[x\\] is the number of your server, e.g. \"2\" (can be verified on _Account settings > Symplify API_)\n\n**customerId**: your customer ID.\n\n**resource**: the resource you want to use\n\n**id**: the ID (if any) of the item you want to add/update/get/delete.\n\nExample:\n\n`{{server}}/rest/{{customerid}}/reports/campaigns/{{id}}`\n\nExample request in the documentation:\n\n`{{url}}/{{customerid}}/{apiResource}`\n\n## Media Type\n\nAll data supplied to and received from the REST API uses the **application/json** media type. To ensure full compatibility, please make sure that:​\n\n**All GET requests include the header:**\n\nAccept: application/json\n\n**All PUT and POST request include the following headers:**\n\nAccept: application/json  \nContent-Type: application/json\n\nAll data sent to the API is expected to be in the standard application/json charset UTF-8, unless explicitly stated otherwise as a charset parameter in the _Content-Type header_. All data sent as responses from the API will be in the UTF-8 charset.\n\n​\n\n## Types of Requests\n\n### ​Get All\n\nTo get all data, issue a GET request without id, e.g.\n\n```\nGET  https://eu-proxy-{{server}}.symplifymail.com/rest/{{customerId}}/projects\nAccept: application/json\n\n ```\n\n​\n\n### Get One\n\nTo get one data, issue a GET reqest with an id, e.g.​\n\n```\nGET https://eu-proxy-{{server}}.symplifymail.com/rest/{{customerId}}/projects/{{projId}}\n​Accept: application/json\n\n ```\n\n​\n\n### Create One\n\nTo create a new data, issue a POST request without id. Usually creation of a new entity will require data for the entity to be included in the message body, e.g.:\n\n```\nPOST https://eu-proxy-{{server}}.symplifymail.com/rest/{{customerId}}/projects\nAccept: application/json\nContent-Type: application/json\nContent-Length: …\n{{entity to create as JSON}}\n\n ```\n\n​\n\n### Update One\n\nTo update one data, issue a PUT request with id and the data required to be used for updating the entity:\n\n```\nPUT https://eu-proxy-{{server}}.symplifymail.com/rest/{{customerId}}/projects/{{projId}}\nAccept: application/json\nContent-Type: application/json\nContent-Length: …\n{{entity to create as JSON}}\n\n ```\n\n​\n\n### Delete one\n\nTo delete, issue a DELETE request with an id, i.e.\n\n```\nDELETE https://eu-proxy-{{server}}.symplifymail.com/rest/{{customerId}}/projects/{{projectId}}\n\n ```\n\n## Testing Requests\n\nYou can test a request by copying the code in this document and add it to your HTTP client.\n\n<img src=\"https://content.pstmn.io/c027d5b9-847c-4deb-9f78-9dba43f973f9/aW1hZ2UucG5n\" width=\"728\" height=\"259\">\n\n### Credentials\n\nFor testing you can use the same credentials that you use to log into Symplify. For security reasons we recommend not using your own credentials in production. The recommendation for production is to get a special API user for your account and use these credentials. These are managed by an account administrator of your Symplify account.\n\n​\n\n## GET Requests\n\nGET requests are used to retrieve data from the system.\n\n### POST Requests\n\n**POST** requests are used to create data in the system.\n\n_Note! You should not include the “id”, “dateCreated”or “dateModified” fields as they are created automatically by the server. You can safely remove fields that you do not have data for, e.g. if you do not have data for Contact.MiddleName, that field can be removed from the input JSON structure. You will get a validation error if you remove a mandatory field._\n\n### ​PUT Requests\n\nPUT requests are used for updating data in the database. The message body should include data required for updating the entity. For some resources you only need to specify the fields that you are changing, but usually you should make sure to include all fields as received from a previous GET request (once again, the id, dateCreated and dateModified fields are not required. The Id field this is specified in the URI and the other are created/updated automatically).\n\n### DELETE Requests\n\nTo delete an entry you supply the customer id and the id of the data to be deleted.","schema":"https://schema.getpostman.com/json/collection/v2.0.0/collection.json","isPublicCollection":false,"owner":"3123","team":986301,"collectionId":"cdd8d958-807a-4079-96ff-8121a5f91fde","publishedId":"TVRd9Wxp","public":true,"publicUrl":"https://apidocs.symplify.com","privateUrl":"https://go.postman.co/documentation/3123-cdd8d958-807a-4079-96ff-8121a5f91fde","customColor":{"top-bar":"FFFFFF","right-sidebar":"303030","highlight":"EF5B25"},"documentationLayout":"classic-double-column","customisation":null,"version":"8.10.0","publishDate":"2020-09-30T13:33:31.000Z","activeVersionTag":"latest","documentationTheme":"light","metaTags":{},"logos":{}},"statusCode":200},"environments":[],"user":{"authenticated":false,"permissions":{"publish":false}},"run":{"button":{"js":"https://run.pstmn.io/button.js","css":"https://run.pstmn.io/button.css"}},"web":"https://www.getpostman.com/","team":{"logo":"https://res.cloudinary.com/postman/image/upload/t_team_logo_pubdoc/v1/team/80e955b4527d2fa53b0159ea6f7f3af62d4e8614d5648f110bafc5f98c3125ea","favicon":"https://res.cloudinary.com/postman/image/upload/v1591213210/team/xhe8akpy9pzo9eocaz5l.ico"},"isEnvFetchError":false,"languages":"[{\"key\":\"csharp\",\"label\":\"C#\",\"variant\":\"HttpClient\"},{\"key\":\"csharp\",\"label\":\"C#\",\"variant\":\"RestSharp\"},{\"key\":\"curl\",\"label\":\"cURL\",\"variant\":\"cURL\"},{\"key\":\"dart\",\"label\":\"Dart\",\"variant\":\"http\"},{\"key\":\"go\",\"label\":\"Go\",\"variant\":\"Native\"},{\"key\":\"http\",\"label\":\"HTTP\",\"variant\":\"HTTP\"},{\"key\":\"java\",\"label\":\"Java\",\"variant\":\"OkHttp\"},{\"key\":\"java\",\"label\":\"Java\",\"variant\":\"Unirest\"},{\"key\":\"javascript\",\"label\":\"JavaScript\",\"variant\":\"Fetch\"},{\"key\":\"javascript\",\"label\":\"JavaScript\",\"variant\":\"jQuery\"},{\"key\":\"javascript\",\"label\":\"JavaScript\",\"variant\":\"XHR\"},{\"key\":\"c\",\"label\":\"C\",\"variant\":\"libcurl\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Axios\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Native\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Request\"},{\"key\":\"nodejs\",\"label\":\"NodeJs\",\"variant\":\"Unirest\"},{\"key\":\"objective-c\",\"label\":\"Objective-C\",\"variant\":\"NSURLSession\"},{\"key\":\"ocaml\",\"label\":\"OCaml\",\"variant\":\"Cohttp\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"cURL\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"Guzzle\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"HTTP_Request2\"},{\"key\":\"php\",\"label\":\"PHP\",\"variant\":\"pecl_http\"},{\"key\":\"powershell\",\"label\":\"PowerShell\",\"variant\":\"RestMethod\"},{\"key\":\"python\",\"label\":\"Python\",\"variant\":\"http.client\"},{\"key\":\"python\",\"label\":\"Python\",\"variant\":\"Requests\"},{\"key\":\"r\",\"label\":\"R\",\"variant\":\"httr\"},{\"key\":\"r\",\"label\":\"R\",\"variant\":\"RCurl\"},{\"key\":\"ruby\",\"label\":\"Ruby\",\"variant\":\"Net::HTTP\"},{\"key\":\"shell\",\"label\":\"Shell\",\"variant\":\"Httpie\"},{\"key\":\"shell\",\"label\":\"Shell\",\"variant\":\"wget\"},{\"key\":\"swift\",\"label\":\"Swift\",\"variant\":\"URLSession\"}]","languageSettings":[{"key":"csharp","label":"C#","variant":"HttpClient"},{"key":"csharp","label":"C#","variant":"RestSharp"},{"key":"curl","label":"cURL","variant":"cURL"},{"key":"dart","label":"Dart","variant":"http"},{"key":"go","label":"Go","variant":"Native"},{"key":"http","label":"HTTP","variant":"HTTP"},{"key":"java","label":"Java","variant":"OkHttp"},{"key":"java","label":"Java","variant":"Unirest"},{"key":"javascript","label":"JavaScript","variant":"Fetch"},{"key":"javascript","label":"JavaScript","variant":"jQuery"},{"key":"javascript","label":"JavaScript","variant":"XHR"},{"key":"c","label":"C","variant":"libcurl"},{"key":"nodejs","label":"NodeJs","variant":"Axios"},{"key":"nodejs","label":"NodeJs","variant":"Native"},{"key":"nodejs","label":"NodeJs","variant":"Request"},{"key":"nodejs","label":"NodeJs","variant":"Unirest"},{"key":"objective-c","label":"Objective-C","variant":"NSURLSession"},{"key":"ocaml","label":"OCaml","variant":"Cohttp"},{"key":"php","label":"PHP","variant":"cURL"},{"key":"php","label":"PHP","variant":"Guzzle"},{"key":"php","label":"PHP","variant":"HTTP_Request2"},{"key":"php","label":"PHP","variant":"pecl_http"},{"key":"powershell","label":"PowerShell","variant":"RestMethod"},{"key":"python","label":"Python","variant":"http.client"},{"key":"python","label":"Python","variant":"Requests"},{"key":"r","label":"R","variant":"httr"},{"key":"r","label":"R","variant":"RCurl"},{"key":"ruby","label":"Ruby","variant":"Net::HTTP"},{"key":"shell","label":"Shell","variant":"Httpie"},{"key":"shell","label":"Shell","variant":"wget"},{"key":"swift","label":"Swift","variant":"URLSession"}],"languageOptions":[{"label":"C# - HttpClient","value":"csharp - HttpClient - C#"},{"label":"C# - RestSharp","value":"csharp - RestSharp - C#"},{"label":"cURL - cURL","value":"curl - cURL - cURL"},{"label":"Dart - http","value":"dart - http - Dart"},{"label":"Go - Native","value":"go - Native - Go"},{"label":"HTTP - HTTP","value":"http - HTTP - HTTP"},{"label":"Java - OkHttp","value":"java - OkHttp - Java"},{"label":"Java - Unirest","value":"java - Unirest - Java"},{"label":"JavaScript - Fetch","value":"javascript - Fetch - JavaScript"},{"label":"JavaScript - jQuery","value":"javascript - jQuery - JavaScript"},{"label":"JavaScript - XHR","value":"javascript - XHR - JavaScript"},{"label":"C - libcurl","value":"c - libcurl - C"},{"label":"NodeJs - Axios","value":"nodejs - Axios - NodeJs"},{"label":"NodeJs - Native","value":"nodejs - Native - NodeJs"},{"label":"NodeJs - Request","value":"nodejs - Request - NodeJs"},{"label":"NodeJs - Unirest","value":"nodejs - Unirest - NodeJs"},{"label":"Objective-C - NSURLSession","value":"objective-c - NSURLSession - Objective-C"},{"label":"OCaml - Cohttp","value":"ocaml - Cohttp - OCaml"},{"label":"PHP - cURL","value":"php - cURL - PHP"},{"label":"PHP - Guzzle","value":"php - Guzzle - PHP"},{"label":"PHP - HTTP_Request2","value":"php - HTTP_Request2 - PHP"},{"label":"PHP - pecl_http","value":"php - pecl_http - PHP"},{"label":"PowerShell - RestMethod","value":"powershell - RestMethod - PowerShell"},{"label":"Python - http.client","value":"python - http.client - Python"},{"label":"Python - Requests","value":"python - Requests - Python"},{"label":"R - httr","value":"r - httr - R"},{"label":"R - RCurl","value":"r - RCurl - R"},{"label":"Ruby - Net::HTTP","value":"ruby - Net::HTTP - Ruby"},{"label":"Shell - Httpie","value":"shell - Httpie - Shell"},{"label":"Shell - wget","value":"shell - wget - Shell"},{"label":"Swift - URLSession","value":"swift - URLSession - Swift"}],"layoutOptions":[{"value":"classic-single-column","label":"Single Column"},{"value":"classic-double-column","label":"Double Column"}],"versionOptions":[],"environmentOptions":[{"value":"0","label":"No Environment"}],"canonicalUrl":"https://apidocs.symplify.com/view/metadata/TVRd9Wxp"}