Add email addresses to your suppression list to prevent future emails from being sent. This is essential for maintaining sender reputation and compliance.
When to Use Each Type:
Type
Use When
hardBounce
You know an address is permanently invalid
manual
Processing do-not-contact requests from support
unsubscribe
Syncing unsubscribes from external systems
spamComplaint
Importing complaints from other providers
Common Use Cases:
Migration: Import suppression list from previous email provider
CRM Sync: Add unsubscribes from your marketing platform
Bulk Cleanup: Add known invalid addresses from data cleaning
Support Tickets: Honor do-not-contact requests
Best Practices:
Import historical bounce data when migrating providers
Sync unsubscribes immediately when received from external sources
Process support-requested suppressions within 24 hours
Use manual for addresses you want to suppress without categorization
UNIX epoch timestamp in nanoseconds when the suppression was added
Example:
1704067200000000000
Was this page helpful?
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"SendPost Docs","colors":{"primary":"#5750EC","light":"#5750EC","dark":"#5750EC"},"logo":{"light":"https://mintcdn.com/sendx-43e2b6a9/xWJ6M32vFagLUxJg/logo/sendpost.svg?fit=max\u0026auto=format\u0026n=xWJ6M32vFagLUxJg\u0026q=85\u0026s=fc1d92fba901bca2cbab1ee394bc02ed","dark":"https://mintcdn.com/sendx-43e2b6a9/xWJ6M32vFagLUxJg/logo/sendpost.svg?fit=max\u0026auto=format\u0026n=xWJ6M32vFagLUxJg\u0026q=85\u0026s=fc1d92fba901bca2cbab1ee394bc02ed"},"favicon":"https://mintcdn.com/sendx-43e2b6a9/xWJ6M32vFagLUxJg/favicon.svg?fit=max\u0026auto=format\u0026n=xWJ6M32vFagLUxJg\u0026q=85\u0026s=49e9debc4f6238bdb21ed33aa69238f1","navbar":{"links":[{"href":"mailto:dev@sendpost.io","label":"Support"}],"primary":{"type":"button","label":"SendPost","href":"https://app.sendpost.io/"}},"footer":{"socials":{"github":"https://github.com/sendpost","linkedin":"https://www.linkedin.com/company/sendpost"}},"integrations":{"intercom":{"appId":"APP_ID"}},"styling":{"latex":false},"navigation":{"global":{"anchors":[]},"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"sendx-43e2b6a9","hasAudioNarration":false,"actualSubdomain":"sendx-43e2b6a9","customDomains":["docs.sendpost.io"],"gitSource":{"type":"github","owner":"sendpost","repo":"sendpost-api-docs","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":""},"feedback":{"thumbs":true},"entitlements":{},"buildId":"6aec41183744ce14d0837e22","clientVersion":"0.0.4094","searchFilterCounts":[{"language":"default","tag":"Welcome","count":68},{"language":"default","tag":"API Reference","count":49},{"language":"default","tag":"Guides","count":39},{"language":"default","tag":"Quickstarts","count":22},{"language":"default","tag":"Webhook","count":10},{"language":"default","tag":"Amazon SES","count":7},{"language":"default","tag":"Custom SMTP","count":7},{"language":"default","tag":"SendGrid","count":7},{"language":"default","tag":"Common Use Cases","count":6},{"language":"default","tag":"IPPools","count":6}]},"assistantConfig":{},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-metadata","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"comment-mode","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"api-reference/suppression/create-new-suppressions","slug":"/api-reference/suppression/create-new-suppressions","pageMetadata":{"openapi":"post /subaccount/suppression","title":"Create Suppressions","description":"Add email addresses to your suppression list to prevent future emails from being sent. This is essential for maintaining sender reputation and compliance.\n\n**When to Use Each Type:**\n| Type | Use When |\n|------|----------|\n| `hardBounce` | You know an address is permanently invalid |\n| `manual` | Processing do-not-contact requests from support |\n| `unsubscribe` | Syncing unsubscribes from external systems |\n| `spamComplaint` | Importing complaints from other providers |\n\n**Common Use Cases:**\n- **Migration:** Import suppression list from previous email provider\n- **CRM Sync:** Add unsubscribes from your marketing platform\n- **Bulk Cleanup:** Add known invalid addresses from data cleaning\n- **Support Tickets:** Honor do-not-contact requests\n\n**Best Practices:**\n- Import historical bounce data when migrating providers\n- Sync unsubscribes immediately when received from external sources\n- Process support-requested suppressions within 24 hours\n- Use `manual` for addresses you want to suppress without categorization\n","href":"/api-reference/suppression/create-new-suppressions"},"description":{"compiledSource":"\"use strict\";\nconst {Fragment: _Fragment, jsx: _jsx, jsxs: _jsxs} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n code: \"code\",\n li: \"li\",\n p: \"p\",\n strong: \"strong\",\n table: \"table\",\n tbody: \"tbody\",\n td: \"td\",\n th: \"th\",\n thead: \"thead\",\n tr: \"tr\",\n ul: \"ul\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsxs(_Fragment, {\n children: [_jsx(_components.p, {\n children: \"Add email addresses to your suppression list to prevent future emails from being sent. This is essential for maintaining sender reputation and compliance.\"\n }), \"\\n\", _jsx(_components.p, {\n children: _jsx(_components.strong, {\n children: \"When to Use Each Type:\"\n })\n }), \"\\n\", _jsxs(_components.table, {\n children: [_jsx(_components.thead, {\n children: _jsxs(_components.tr, {\n children: [_jsx(_components.th, {\n children: \"Type\"\n }), _jsx(_components.th, {\n children: \"Use When\"\n })]\n })\n }), _jsxs(_components.tbody, {\n children: [_jsxs(_components.tr, {\n children: [_jsx(_components.td, {\n children: _jsx(_components.code, {\n children: \"hardBounce\"\n })\n }), _jsx(_components.td, {\n children: \"You know an address is permanently invalid\"\n })]\n }), _jsxs(_components.tr, {\n children: [_jsx(_components.td, {\n children: _jsx(_components.code, {\n children: \"manual\"\n })\n }), _jsx(_components.td, {\n children: \"Processing do-not-contact requests from support\"\n })]\n }), _jsxs(_components.tr, {\n children: [_jsx(_components.td, {\n children: _jsx(_components.code, {\n children: \"unsubscribe\"\n })\n }), _jsx(_components.td, {\n children: \"Syncing unsubscribes from external systems\"\n })]\n }), _jsxs(_components.tr, {\n children: [_jsx(_components.td, {\n children: _jsx(_components.code, {\n children: \"spamComplaint\"\n })\n }), _jsx(_components.td, {\n children: \"Importing complaints from other providers\"\n })]\n })]\n })]\n }), \"\\n\", _jsx(_components.p, {\n children: _jsx(_components.strong, {\n children: \"Common Use Cases:\"\n })\n }), \"\\n\", _jsxs(_components.ul, {\n children: [\"\\n\", _jsxs(_components.li, {\n children: [_jsx(_components.strong, {\n children: \"Migration:\"\n }), \" Import suppression list from previous email provider\"]\n }), \"\\n\", _jsxs(_components.li, {\n children: [_jsx(_components.strong, {\n children: \"CRM Sync:\"\n }), \" Add unsubscribes from your marketing platform\"]\n }), \"\\n\", _jsxs(_components.li, {\n children: [_jsx(_components.strong, {\n children: \"Bulk Cleanup:\"\n }), \" Add known invalid addresses from data cleaning\"]\n }), \"\\n\", _jsxs(_components.li, {\n children: [_jsx(_components.strong, {\n children: \"Support Tickets:\"\n }), \" Honor do-not-contact requests\"]\n }), \"\\n\"]\n }), \"\\n\", _jsx(_components.p, {\n children: _jsx(_components.strong, {\n children: \"Best Practices:\"\n })\n }), \"\\n\", _jsxs(_components.ul, {\n children: [\"\\n\", _jsx(_components.li, {\n children: \"Import historical bounce data when migrating providers\"\n }), \"\\n\", _jsx(_components.li, {\n children: \"Sync unsubscribes immediately when received from external sources\"\n }), \"\\n\", _jsx(_components.li, {\n children: \"Process support-requested suppressions within 24 hours\"\n }), \"\\n\", _jsxs(_components.li, {\n children: [\"Use \", _jsx(_components.code, {\n children: \"manual\"\n }), \" for addresses you want to suppress without categorization\"]\n }), \"\\n\"]\n })]\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){return _jsx(_Fragment,{})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"openapi":"post /subaccount/suppression","title":"Create Suppressions","description":"Add email addresses to your suppression list to prevent future emails from being sent. This is essential for maintaining sender reputation and compliance.\n\n**When to Use Each Type:**\n| Type | Use When |\n|------|----------|\n| `hardBounce` | You know an address is permanently invalid |\n| `manual` | Processing do-not-contact requests from support |\n| `unsubscribe` | Syncing unsubscribes from external systems |\n| `spamComplaint` | Importing complaints from other providers |\n\n**Common Use Cases:**\n- **Migration:** Import suppression list from previous email provider\n- **CRM Sync:** Add unsubscribes from your marketing platform\n- **Bulk Cleanup:** Add known invalid addresses from data cleaning\n- **Support Tickets:** Honor do-not-contact requests\n\n**Best Practices:**\n- Import historical bounce data when migrating providers\n- Sync unsubscribes immediately when received from external sources\n- Process support-requested suppressions within 24 hours\n- Use `manual` for addresses you want to suppress without categorization\n","href":"/api-reference/suppression/create-new-suppressions"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"summary":"Create Suppressions","description":"Add email addresses to your suppression list to prevent future emails from being sent. This is essential for maintaining sender reputation and compliance.\n\n**When to Use Each Type:**\n| Type | Use When |\n|------|----------|\n| `hardBounce` | You know an address is permanently invalid |\n| `manual` | Processing do-not-contact requests from support |\n| `unsubscribe` | Syncing unsubscribes from external systems |\n| `spamComplaint` | Importing complaints from other providers |\n\n**Common Use Cases:**\n- **Migration:** Import suppression list from previous email provider\n- **CRM Sync:** Add unsubscribes from your marketing platform\n- **Bulk Cleanup:** Add known invalid addresses from data cleaning\n- **Support Tickets:** Honor do-not-contact requests\n\n**Best Practices:**\n- Import historical bounce data when migrating providers\n- Sync unsubscribes immediately when received from external sources\n- Process support-requested suppressions within 24 hours\n- Use `manual` for addresses you want to suppress without categorization\n","operationId":"createSuppression","tags":["Suppression"],"security":["a7bb7940-6469-46e7-8678-feca9311a547"],"requestBody":"e34f0050-e461-429b-a483-a0ddf9e5b968","responses":{"200":"a5b402a1-52d8-4008-b7a2-ed94f76964c9"},"method":"post","type":"path","servers":["3e2bf5d9-3b9c-4724-ba94-ee3efb46f2dc"],"path":"/subaccount/suppression","baseUrlOptions":["https://api.sendpost.io/api/v1"],"title":"Create Suppressions","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"hardBounce":{"type":"array","description":"Email addresses with known permanent delivery issues (invalid, non-existent domains).","items":{"type":"object","properties":{"email":{"type":"string","format":"email","example":"invalid-user@deleted-domain.com","uniqueKey":"hardBounce.items.[INDEX].email","typeLabel":"string\u003cemail>"}},"uniqueKey":"hardBounce.items.[INDEX]","typeLabel":"object"},"uniqueKey":"hardBounce","typeLabel":"object[]"},"manual":{"type":"array","description":"Email addresses to suppress without specific categorization (do-not-contact requests, etc.).","items":{"type":"object","properties":{"email":{"type":"string","format":"email","example":"contact-support@company.com","uniqueKey":"manual.items.[INDEX].email","typeLabel":"string\u003cemail>"}},"uniqueKey":"manual.items.[INDEX]","typeLabel":"object"},"uniqueKey":"manual","typeLabel":"object[]"},"unsubscribe":{"type":"array","description":"Email addresses of users who opted out via external unsubscribe mechanisms.","items":{"type":"object","properties":{"email":{"type":"string","format":"email","example":"opted-out-user@example.com","uniqueKey":"unsubscribe.items.[INDEX].email","typeLabel":"string\u003cemail>"}},"uniqueKey":"unsubscribe.items.[INDEX]","typeLabel":"object"},"uniqueKey":"unsubscribe","typeLabel":"object[]"},"spamComplaint":{"type":"array","description":"Email addresses that reported spam via external feedback loops.","items":{"type":"object","properties":{"email":{"type":"string","format":"email","example":"complained-user@example.com","uniqueKey":"spamComplaint.items.[INDEX].email","typeLabel":"string\u003cemail>"}},"uniqueKey":"spamComplaint.items.[INDEX]","typeLabel":"object"},"uniqueKey":"spamComplaint","typeLabel":"object[]"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"hardBounce":[{"email":"invalid-user@deleted-domain.com"}],"manual":[{"email":"contact-support@company.com"}],"unsubscribe":[{"email":"opted-out-user@example.com"}],"spamComplaint":[{"email":"complained-user@example.com"}]}}},"exampleType":"generated"}},"exampleType":"generated"},"responses":{"a5b402a1-52d8-4008-b7a2-ed94f76964c9":{"description":"A list of created suppressions","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","description":"A suppressed email address that will not receive emails from this sub-account.\nEmails to suppressed addresses are automatically dropped before sending.\n\nSuppressions are added automatically when:\n- An email hard bounces (permanent delivery failure)\n- A recipient marks an email as spam\n- A recipient clicks the unsubscribe link\n\nYou can also manually add suppressions via the API.\n","properties":{"id":{"type":"integer","format":"int64","description":"Unique identifier for the suppression record","example":35,"uniqueKey":"items.[INDEX].id","typeLabel":"integer\u003cint64>"},"email":{"type":"string","format":"email","description":"The suppressed email address","example":"bounced@example.com","uniqueKey":"items.[INDEX].email","typeLabel":"string\u003cemail>"},"reason":{"type":"integer","description":"Reason code for the suppression:\n- `0` = Manual (added via API or dashboard)\n- `1` = Unsubscribe (recipient clicked unsubscribe link)\n- `2` = Hard Bounce (permanent delivery failure)\n- `3` = Spam Complaint (recipient marked as spam)\n- `4` = Hard Bounce (detected by post-send validation)\n","enum":[0,1,2,3,4],"example":2,"uniqueKey":"items.[INDEX].reason","typeLabel":"enum\u003cinteger>"},"reasonText":{"type":"string","description":"Human-readable suppression reason","enum":["manual","unsubscribe","hardBounce","spamComplaint"],"example":"hardBounce","uniqueKey":"items.[INDEX].reasonText","typeLabel":"enum\u003cstring>"},"smtpError":{"type":"string","description":"SMTP error message from the receiving server (only for hard bounce suppressions).\nUseful for diagnosing delivery issues.\n","example":"550 5.1.1 The email account that you tried to reach does not exist","uniqueKey":"items.[INDEX].smtpError","typeLabel":"string"},"messageUUID":{"type":"string","description":"UUID of the message whose bounce/complaint caused this suppression.\nEmpty for manually added suppressions. Useful for tracing the origin.\n","example":"3f2504e0-4f89-41d3-9a0c-0305e82c3301","uniqueKey":"items.[INDEX].messageUUID","typeLabel":"string"},"created":{"type":"integer","format":"int64","description":"UNIX epoch timestamp in nanoseconds when the suppression was added","example":1704067200000000000,"uniqueKey":"items.[INDEX].created","typeLabel":"integer\u003cint64>"}},"example":{"id":35,"email":"invalid@nonexistent-domain.com","reason":2,"reasonText":"hardBounce","smtpError":"550 5.1.1 The email account that you tried to reach does not exist","created":1704067200000000000},"uniqueKey":"items.[INDEX]","typeLabel":"object"},"uniqueKey":"","typeLabel":"object[]"},"examples":{"creationExample":{"title":"creationExample","value":[{"id":37,"reason":2,"email":"jackbarker@hooli.com","created":1567512491588025000},{"id":39,"reason":2,"email":"bighead@hooli.com","created":1567512491588025000},{"id":40,"reason":0,"email":"russhannelman@gmail.com","created":1567512491588025000},{"id":44,"reason":1,"email":"jared@piedpiper.com","created":1567512491588026600},{"id":57,"reason":3,"email":"gilfoyle@piedpiper.com","created":1567512491588028200}]}},"exampleType":"examples"}},"exampleType":"examples"}},"security":{"a7bb7940-6469-46e7-8678-feca9311a547":{"subAccountAuth":{"type":"apiKey","in":"header","name":"X-SubAccount-ApiKey","description":"This api key can be used only for sub account level operations","scopes":[],"schemeName":"subAccountAuth"}}},"servers":{"3e2bf5d9-3b9c-4724-ba94-ee3efb46f2dc":{"url":"https://api.sendpost.io/api/v1"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"apiKey","in":"header","name":"X-SubAccount-ApiKey","description":"This api key can be used only for sub account level operations","scopes":[],"schemeName":"subAccountAuth"},"schema":{"title":"X-SubAccount-ApiKey","type":"string","description":"This api key can be used only for sub account level operations","isRequired":true,"typeLabel":"string","deprecated":false},"schemeName":"subAccountAuth","name":"X-SubAccount-ApiKey"}],"title":"subAccountAuth"}]},"originalFileLocation":"swagger.yaml"},"subdomain":"sendx-43e2b6a9","siteName":"SendPost Docs","title":"Create Suppressions - SendPost Docs","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-09-22T12:24:27.654Z","originalFileLocation":"api-reference/suppression/create-new-suppressions.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Add email addresses to your suppression list to prevent future emails from being sent. This is essential for maintaining sender reputation and compliance. When to Use Each Type: | Type | Use When | |------|----------| | hardBounce | You know an address is permanently invalid | | manual | Processing do-not-contact requests from support | | unsubscribe | Syncing unsubscribes from external systems | | spamComplaint | Importing complaints from other providers | Common Use Cases: - Migration: Import suppression list from previous email provider - CRM Sync: Add unsubscribes from your marketing platform - Bulk Cleanup: Add known invalid addresses from data cleaning - Support Tickets: Honor do-not-contact requests Best Practices: - Import historical bounce data when migrating providers - Sync unsubscribes immediately when received from external sources - Process support-requested suppressions within 24 hours - Use manual for addresses you want to suppress without categorization\">\u003cmeta data-mint-head name=\"application-name\" content=\"SendPost Docs\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/sendx-43e2b6a9/gASVnBX9Wp6ly5V-/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/sendx-43e2b6a9/gASVnBX9Wp6ly5V-/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/sendx-43e2b6a9/gASVnBX9Wp6ly5V-/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/sendx-43e2b6a9/gASVnBX9Wp6ly5V-/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/sendx-43e2b6a9/gASVnBX9Wp6ly5V-/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/sendx-43e2b6a9/gASVnBX9Wp6ly5V-/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/sendx-43e2b6a9/gASVnBX9Wp6ly5V-/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/sendx-43e2b6a9/gASVnBX9Wp6ly5V-/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/sendx-43e2b6a9/gASVnBX9Wp6ly5V-/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Create Suppressions - SendPost Docs\">\u003cmeta data-mint-head property=\"og:description\" content=\"Add email addresses to your suppression list to prevent future emails from being sent. This is essential for maintaining sender reputation and compliance. When to Use Each Type: | Type | Use When | |------|----------| | hardBounce | You know an address is permanently invalid | | manual | Processing do-not-contact requests from support | | unsubscribe | Syncing unsubscribes from external systems | | spamComplaint | Importing complaints from other providers | Common Use Cases: - Migration: Import suppression list from previous email provider - CRM Sync: Add unsubscribes from your marketing platform - Bulk Cleanup: Add known invalid addresses from data cleaning - Support Tickets: Honor do-not-contact requests Best Practices: - Import historical bounce data when migrating providers - Sync unsubscribes immediately when received from external sources - Process support-requested suppressions within 24 hours - Use manual for addresses you want to suppress without categorization\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"SendPost Docs\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.sendpost.io/api-reference/suppression/create-new-suppressions\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://sendx-43e2b6a9.mintlify.site/_mintlify/api/og/v2?division=Suppression\u0026amp;title=Create+Suppressions\u0026amp;description=Add+email+addresses+to+your+suppression+list+to+prevent+future+emails+from+being+sent.+This+is+essential+for+maintaining+sender+reputation+and+compliance.%0A%0A**Wh\u0026amp;theme=36b9a144c81c41c7c881e1e9\u0026amp;signature=eb6be83559ce4a9c8b99a1807fe3b3aea6a86d4e5e473651019a553ff3688ba6\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Create Suppressions - SendPost Docs\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Add email addresses to your suppression list to prevent future emails from being sent. This is essential for maintaining sender reputation and compliance. When to Use Each Type: | Type | Use When | |------|----------| | hardBounce | You know an address is permanently invalid | | manual | Processing do-not-contact requests from support | | unsubscribe | Syncing unsubscribes from external systems | | spamComplaint | Importing complaints from other providers | Common Use Cases: - Migration: Import suppression list from previous email provider - CRM Sync: Add unsubscribes from your marketing platform - Bulk Cleanup: Add known invalid addresses from data cleaning - Support Tickets: Honor do-not-contact requests Best Practices: - Import historical bounce data when migrating providers - Sync unsubscribes immediately when received from external sources - Process support-requested suppressions within 24 hours - Use manual for addresses you want to suppress without categorization\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://sendx-43e2b6a9.mintlify.site/_mintlify/api/og/v2?division=Suppression\u0026amp;title=Create+Suppressions\u0026amp;description=Add+email+addresses+to+your+suppression+list+to+prevent+future+emails+from+being+sent.+This+is+essential+for+maintaining+sender+reputation+and+compliance.%0A%0A**Wh\u0026amp;theme=36b9a144c81c41c7c881e1e9\u0026amp;signature=eb6be83559ce4a9c8b99a1807fe3b3aea6a86d4e5e473651019a553ff3688ba6\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/sendx-43e2b6a9/gASVnBX9Wp6ly5V-/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"SendPost Docs\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#5750EC\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.sendpost.io/api-reference/suppression/create-new-suppressions\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/suppression/create-new-suppressions.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.sendpost.io/#organization\",\"name\":\"SendPost Docs\",\"url\":\"https://docs.sendpost.io\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/sendx-43e2b6a9/xWJ6M32vFagLUxJg/logo/sendpost.svg?fit=max\u0026auto=format\u0026n=xWJ6M32vFagLUxJg\u0026q=85\u0026s=fc1d92fba901bca2cbab1ee394bc02ed\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.sendpost.io#website\",\"name\":\"SendPost Docs\",\"url\":\"https://docs.sendpost.io\",\"publisher\":{\"@id\":\"https://docs.sendpost.io/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.sendpost.io/api-reference/suppression/create-new-suppressions#webpage\",\"url\":\"https://docs.sendpost.io/api-reference/suppression/create-new-suppressions\",\"name\":\"Create Suppressions\",\"description\":\"Add email addresses to your suppression list to prevent future emails from being sent. This is essential for maintaining sender reputation and compliance. When to Use Each Type: | Type | Use When | |------|----------| | hardBounce | You know an address is permanently invalid | | manual | Processing do-not-contact requests from support | | unsubscribe | Syncing unsubscribes from external systems | | spamComplaint | Importing complaints from other providers | Common Use Cases: - Migration: Import suppression list from previous email provider - CRM Sync: Add unsubscribes from your marketing platform - Bulk Cleanup: Add known invalid addresses from data cleaning - Support Tickets: Honor do-not-contact requests Best Practices: - Import historical bounce data when migrating providers - Sync unsubscribes immediately when received from external sources - Process support-requested suppressions within 24 hours - Use manual for addresses you want to suppress without categorization\",\"dateModified\":\"2026-09-22T12:24:27.654Z\",\"isPartOf\":{\"@id\":\"https://docs.sendpost.io#website\"},\"breadcrumb\":{\"@id\":\"https://docs.sendpost.io/api-reference/suppression/create-new-suppressions#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.sendpost.io/api-reference/suppression/create-new-suppressions#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Suppression\",\"item\":\"https://docs.sendpost.io/api-reference/suppression/get-all-suppressions\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Create Suppressions\",\"item\":\"https://docs.sendpost.io/api-reference/suppression/create-new-suppressions\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.sendpost.io/api-reference/suppression/create-new-suppressions#apireference\",\"headline\":\"Create Suppressions\",\"name\":\"Create Suppressions\",\"description\":\"Add email addresses to your suppression list to prevent future emails from being sent. This is essential for maintaining sender reputation and compliance. When to Use Each Type: | Type | Use When | |------|----------| | hardBounce | You know an address is permanently invalid | | manual | Processing do-not-contact requests from support | | unsubscribe | Syncing unsubscribes from external systems | | spamComplaint | Importing complaints from other providers | Common Use Cases: - Migration: Import suppression list from previous email provider - CRM Sync: Add unsubscribes from your marketing platform - Bulk Cleanup: Add known invalid addresses from data cleaning - Support Tickets: Honor do-not-contact requests Best Practices: - Import historical bounce data when migrating providers - Sync unsubscribes immediately when received from external sources - Process support-requested suppressions within 24 hours - Use manual for addresses you want to suppress without categorization\",\"url\":\"https://docs.sendpost.io/api-reference/suppression/create-new-suppressions\",\"mainEntityOfPage\":{\"@id\":\"https://docs.sendpost.io/api-reference/suppression/create-new-suppressions#webpage\"},\"dateModified\":\"2026-09-22T12:24:27.654Z\",\"publisher\":{\"@id\":\"https://docs.sendpost.io/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.sendpost.io#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"SendPost Docs\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"SendPost Docs","nav":{"global":{"anchors":[]},"tabs":[{"tab":"Welcome","pages":[{"title":"Welcome","href":""}]},{"tab":"API Reference","groups":[{"group":"API Reference","pages":[{"title":"Introduction","href":"/api-reference/introduction"},{"title":"API Versioning \u0026 Migration","href":"/api-reference/api-versioning"},{"title":"Changelog","href":"/api-reference/changelog"}]},{"group":"Email","pages":[{"openapi":"post /subaccount/email/","title":"Send Email","href":"/api-reference/email/send-email"},{"openapi":"post /subaccount/email/template","title":"Send Email With Template","href":"/api-reference/email/send-email-with-template"}]},{"group":"Domain","pages":[{"openapi":"get /subaccount/domain/{domain_id}","title":"Get Domain","href":"/api-reference/domain/get-a-specific-domain"},{"openapi":"delete /subaccount/domain/{domain_id}","title":"Delete Domain","href":"/api-reference/domain/delete-a-specific-domain"},{"openapi":"get /subaccount/domain","title":"List Domains","href":"/api-reference/domain/get-all-domains"},{"openapi":"post /subaccount/domain","title":"Create Domain","href":"/api-reference/domain/create-a-new-domain"}]},{"group":"Stats","pages":[{"openapi":"get /account/subaccount/stat/{subaccount_id}","title":"List Stats","href":"/api-reference/stats/get-all-stats"},{"openapi":"get /account/subaccount/stat/{subaccount_id}/aggregate","title":"Get Aggregate Stats","href":"/api-reference/stats/get-aggregate-stats"},{"openapi":"get /account/subaccount/stat/{subaccount_id}/group","title":"Get Group Aggregate Stats","href":"/api-reference/stats/get-aggregated-stats-by-group"}]},{"group":"Suppression","pages":[{"openapi":"get /subaccount/suppression","title":"List Suppressions","description":"Retrieve the suppression list for your sub-account. Suppressions are email addresses that should not receive emails to protect your sender reputation and ensure compliance.\n\n**Suppression Types:**\n| Type | Reason Code | Description |\n|------|-------------|-------------|\n| `manual` | 0 | Manually added by your team |\n| `unsubscribe` | 1 | User clicked unsubscribe link |\n| `hardBounce` | 2 | Permanent delivery failure (invalid address) |\n| `spamComplaint` | 3 | User marked email as spam |\n\n**Why Suppressions Matter:**\n- **Reputation Protection:** Repeatedly sending to bounced addresses damages sender reputation\n- **Compliance:** Required for CAN-SPAM, GDPR, and other regulations\n- **Cost Savings:** Avoid paying to send undeliverable emails\n- **Deliverability:** ISPs penalize senders with high bounce/complaint rates\n\n**Use Cases:**\n- Export suppression list for compliance audits\n- Sync suppressions with your CRM or marketing platform\n- Review recent bounces to identify data quality issues\n- Monitor spam complaints for content/targeting problems\n\n**Pagination:** Use `limit` and `offset` for large suppression lists.\n\n**Note:** Maximum date range is 60 days.\n","href":"/api-reference/suppression/get-all-suppressions"},{"openapi":"post /subaccount/suppression","title":"Create Suppressions","href":"/api-reference/suppression/create-new-suppressions"},{"openapi":"delete /subaccount/suppression","title":"Delete Suppressions","description":"Remove email addresses from your suppression list, allowing them to receive emails again.\n\n**⚠️ Important: Use with caution!** Re-enabling sending to previously suppressed addresses can harm your sender reputation if used incorrectly.\n\n**Valid Use Cases:**\n- User confirms their valid email was incorrectly bounced\n- Manual suppression was added by mistake\n- User explicitly requests re-subscription after unsubscribing\n- Testing/development addresses that were suppressed\n\n**Not Recommended:**\n- Bulk removing hard bounces without individual verification\n- Removing spam complaints (users rarely want to receive emails again)\n- Attempting to re-engage addresses that bounced\n\n**Best Practice:** Before removing a suppression, verify with the recipient that they want to receive emails and that their address is valid.\n","href":"/api-reference/suppression/delete-suppressions"}]},{"group":"IP","pages":[{"openapi":"get /account/ip/","title":"List IPs","href":"/api-reference/ip/get-all-ips"},{"openapi":"get /account/ip/{ip_id}","title":"Get IP","href":"/api-reference/ip/get-a-specific-ip"},{"openapi":"put /account/ip/{ip_id}","title":"Update IP","href":"/api-reference/ip/update-an-existing-ip"},{"openapi":"delete /account/ip/{ip_id}","title":"Delete IP","href":"/api-reference/ip/delete-a-specific-ip"},{"openapi":"put /account/ip/allocate","title":"Allocate IP","href":"/api-reference/ip/allocate-a-new-ip"}]},{"group":"Message","pages":[{"openapi":"get /account/message/{message_id}","title":"Get Message","href":"/api-reference/message/retrieve-a-specific-message"}]},{"group":"IPPools","pages":[{"title":"Routing Strategies and Metadata","href":"/api-reference/ippools/routing"},{"openapi":"get /account/ippool","title":"List IPPools","href":"/api-reference/ippools/get-all-ippools"},{"openapi":"post /account/ippool","title":"Create IPPool","href":"/api-reference/ippools/create-a-new-ippool"},{"openapi":"get /account/ippool/{ippool_id}","title":"Get IPPool","href":"/api-reference/ippools/get-a-specific-ippool"},{"openapi":"put /account/ippool/{ippool_id}","title":"Update IPPool","href":"/api-reference/ippools/update-an-existing-ippool"},{"openapi":"delete /account/ippool/{ippool_id}","title":"Delete IPPool","href":"/api-reference/ippools/delete-a-specific-ippool"}]},{"group":"Stats (A)","pages":[{"openapi":"get /account/stat","title":"List Account Stats","href":"/api-reference/stats-a/get-all-account-stats"},{"openapi":"get /account/stat/aggregate","title":"Get Account Aggregate Stats","href":"/api-reference/stats-a/get-account-aggregate-stats"},{"openapi":"get /account/stat/group","title":"List Account Group Stats","href":"/api-reference/stats-a/get-all-account-stats-by-group"},{"openapi":"get /account/stat/aggregate/group","title":"Get Account Group Aggregate Stats","href":"/api-reference/stats-a/get-account-aggregate-stats-by-group"}]},{"group":"Sub-Account","pages":[{"openapi":"get /account/subaccount/","title":"List Sub-Accounts","href":"/api-reference/sub-account/get-all-sub-accounts"},{"openapi":"post /account/subaccount/","title":"Create Sub-Account","href":"/api-reference/sub-account/create-a-new-sub-account"},{"openapi":"get /account/subaccount/{subaccount_id}","title":"Get Sub-Account","href":"/api-reference/sub-account/get-a-specific-sub-account"},{"openapi":"put /account/subaccount/{subaccount_id}","title":"Update Sub-Account","href":"/api-reference/sub-account/update-an-existing-sub-account"},{"openapi":"delete /account/subaccount/{subaccount_id}","title":"Delete Sub-Account","href":"/api-reference/sub-account/delete-a-specific-sub-account"}]},{"group":"Webhook","pages":[{"title":"Webhook Reference","href":"/api-reference/webhook/webhook-testing"},{"title":"Understanding Webhook Event Lifecycle","href":"/api-reference/webhook/understanding-webhook-event-lifecycle"},{"title":"Real-Time Validation Results","href":"/api-reference/webhook/validation-results"},{"title":"Webhook Signature Verification","href":"/api-reference/webhook/webhook-signature-verification"},{"openapi":"get /account/webhook","title":"List Webhooks","href":"/api-reference/webhook/get-all-webhooks"},{"openapi":"post /account/webhook","title":"Create Webhook","href":"/api-reference/webhook/create-a-new-webhook"},{"openapi":"get /account/webhook/{webhook_id}","title":"Get Webhook","href":"/api-reference/webhook/get-a-specific-webhook"},{"openapi":"put /account/webhook/{webhook_id}","title":"Update Webhook","href":"/api-reference/webhook/update-an-existing-webhook"},{"openapi":"delete /account/webhook/{webhook_id}","title":"Delete Webhook","href":"/api-reference/webhook/delete-a-specific-webhook"},{"openapi":"webhook SendPostWebhooks","title":"SendPost Webhook Object","href":"/api-reference/webhook/sendpost-webhook-object"}]}]}]},"basePath":"","title":"Create Suppressions - SendPost Docs","buildId":"dpl_42LwxxU1kGN114H4XzwGYXa9ZDah","deploymentId":"dpl_42LwxxU1kGN114H4XzwGYXa9ZDah","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-C-hEh3I2.js","utils-CnF4QiUD.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-C7PVNbel.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-8ytevL2A.js","snippetPresets-BT1alx3v.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","conditional-requirements-CFM0id0Q.js","ApiExamples-BLXC0i_W.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-CyLIGI9_.js","shallow-DC0lGVIW.js","getApiPlaygroundDisplay-CgDQ85tN.js","CodeSnippet-6-I-Gpv9.js","CodeSnippets-BAk1kDdu.js","Page-C945cI-W.js","getPastedJson-B276RuWN.js","icon-BqP8etTm.js","MethodPill-DM6sbxG1.js","DuplicateIcon-PyJglOaE.js","createIcon-CMeOMAc_.js","DynamicMarkdown-BoyYAA8K.js","SectionHeading-DAYv3gvZ.js","axios-vUo_bRtp.js","Markdown-BhTTmazV.js","clsx-CR-RHrVC.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-CBUH0-zX.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-BmARFYNC.js"]}