diff --git a/components/site/logo.tsx b/components/site/logo.tsx index 8b0ba06fc..62de6058c 100644 --- a/components/site/logo.tsx +++ b/components/site/logo.tsx @@ -27,7 +27,7 @@ const Logo = () => { - + **IP Pools** -From here, you can create, delete, or edit IP Pools. You can also move dedicated IPs between pools. Read this article to understand more about __[managing your existing dedicated IP pools](https://www.sparkpost.com/docs/deliverability/managing-dedicated-ip-pools/)__. +From here, you can create, delete, or edit IP Pools. You can also move dedicated IPs between pools. Read this article to understand more about __[managing your existing dedicated IP pools](https://docs.sparkpost.com/docs/deliverability/managing-dedicated-ip-pools/)__. ## Using Your Dedicated IPs diff --git a/content/docs/deliverability/deliverability-analytics.md b/content/docs/deliverability/deliverability-analytics.md index c4afd26ef..162b80fe3 100644 --- a/content/docs/deliverability/deliverability-analytics.md +++ b/content/docs/deliverability/deliverability-analytics.md @@ -79,7 +79,7 @@ The seed list is updated periodically, as we regularly expand our panel coverage ### Getting Started with Panel Data -Panel data associated with a sending domain in your SparkPost account will start flowing into your account immediately. If you already have a sending domain added and verified, no further action is needed! If you do not yet have a sending domain in your SparkPost account, please follow these [Getting Started steps](https://www.sparkpost.com/docs/getting-started/getting-started-sparkpost/) to set one up and verify it. +Panel data associated with a sending domain in your SparkPost account will start flowing into your account immediately. If you already have a sending domain added and verified, no further action is needed! If you do not yet have a sending domain in your SparkPost account, please follow these [Getting Started steps](https://docs.sparkpost.com/docs/getting-started/getting-started-sparkpost/) to set one up and verify it. Note: You do *not* need to send emails to the consumer panel *through SparkPost* in order to see the data - we will show you panel data sent through any method. We do require a verified domain in order to display the results to the correct account. @@ -111,7 +111,7 @@ SparkPost also provides the following deliverability metrics in the [SparkPost a | Moved to Spam Count | Number of panel messages delivered to the inbox but then moved to the spam folder. | `count_moved_to_spam` | Moved to Spam Rate | Percentage of panel messages delivered to the inbox folder but then moved to the spam folder. | `count_moved_to_spam` / (`count_inbox_panel` + `count_inbox_seed`) | -To view the deliverability metrics in the UI, first click “Signals Analytics” in the top menu to be taken to the “Analytics Report”. Click “Add Metrics” and scroll to the “Deliverability Metrics” section to add your desired metrics. All [user roles](https://www.sparkpost.com/docs/user-guide/managing-users/) can view deliverability metrics in the UI. +To view the deliverability metrics in the UI, first click “Signals Analytics” in the top menu to be taken to the “Analytics Report”. Click “Add Metrics” and scroll to the “Deliverability Metrics” section to add your desired metrics. All [user roles](https://docs.sparkpost.com/docs/user-guide/managing-users/) can view deliverability metrics in the UI. ![](media/deliverability-analytics/02-deliverability-metrics.png) diff --git a/content/docs/deliverability/optimizing-deliverability-and-inbox-placement.md b/content/docs/deliverability/optimizing-deliverability-and-inbox-placement.md index 038ae5bfa..792b5a9ff 100644 --- a/content/docs/deliverability/optimizing-deliverability-and-inbox-placement.md +++ b/content/docs/deliverability/optimizing-deliverability-and-inbox-placement.md @@ -22,8 +22,8 @@ In order to get the best deliverability and inbox placement rates, you need to e * Hide the unsubscribe link or ignore unsubscribe requests * Buy email lists - especially those from untrustworthy sources * Sell your list to a third party without permission -8. Set up [custom bounce domain(s)](https://www.sparkpost.com/docs/tech-resources/custom-bounce-domain/) -9. Set up [custom tracking domain(s)](https://www.sparkpost.com/docs/tech-resources/enabling-multiple-custom-tracking-domains/) +8. Set up [custom bounce domain(s)](https://docs.sparkpost.com/docs/tech-resources/custom-bounce-domain/) +9. Set up [custom tracking domain(s)](https://docs.sparkpost.com/docs/tech-resources/enabling-multiple-custom-tracking-domains/) For more detailed information on this topic, please review [MAAWG Sender Best Common Practices](https://www.m3aawg.org/documents/en/m3aawg-sender-best-common-practices-version-30). diff --git a/content/docs/faq/can-i-send-from-any-domain.md b/content/docs/faq/can-i-send-from-any-domain.md index 8ec912448..e8f663081 100644 --- a/content/docs/faq/can-i-send-from-any-domain.md +++ b/content/docs/faq/can-i-send-from-any-domain.md @@ -6,7 +6,7 @@ description: "Domain Ownership And Control You can send mail through Spark Post ## Domain Ownership And Control -You can send mail through SparkPost from any domain *that you or your customers control*. By verifying your sending domains with SparkPost, you're letting us know that you control them and that you authorize delivery from those domains. The DKIM domain verification procedure is the best option here since it also brings deliverability best practice with it. [There are instructions here how to verify your sending domains](https://www.sparkpost.com/docs/getting-started/getting-started-sparkpost/#step-2-verifying-domain-ownership). +You can send mail through SparkPost from any domain *that you or your customers control*. By verifying your sending domains with SparkPost, you're letting us know that you control them and that you authorize delivery from those domains. The DKIM domain verification procedure is the best option here since it also brings deliverability best practice with it. [There are instructions here how to verify your sending domains](https://docs.sparkpost.com/docs/getting-started/getting-started-sparkpost/#step-2-verify-domain). ## Why Can't I Just Send From Any Domain? diff --git a/content/docs/faq/cc-bcc-archive-recipients.md b/content/docs/faq/cc-bcc-archive-recipients.md index b24475532..17e68cddc 100644 --- a/content/docs/faq/cc-bcc-archive-recipients.md +++ b/content/docs/faq/cc-bcc-archive-recipients.md @@ -22,7 +22,7 @@ It is possible to specify a list of one or more recipients who will receive a co ### Notes * The “rcpt_type” field present in webhook/Message Events API data is used to specify whether the recipient is a CC, BCC or Archive recipient. - * If the [REST API is used to send cc or bcc messages](https://www.sparkpost.com/docs/faq/cc-bcc-with-rest-api/) (please note that archive is **not** supported via the REST API), the "rcpt_type" field **does not appear** in the webhook or Message Events API data. We recommend that you include recipient-level metadata for tracking which type each recipient address belongs to. + * If the [REST API is used to send cc or bcc messages](https://docs.sparkpost.com/docs/faq/cc-bcc-with-rest-api/) (please note that archive is **not** supported via the REST API), the "rcpt_type" field **does not appear** in the webhook or Message Events API data. We recommend that you include recipient-level metadata for tracking which type each recipient address belongs to. * Each Archive, CC, and BCC recipient is counted in the standard targeted and accepted metrics. * Archive messages do not include a BCC header. * The total number of CC, BCC and archive recipients cannot exceed 1000. diff --git a/content/docs/faq/cc-bcc-with-rest-api.md b/content/docs/faq/cc-bcc-with-rest-api.md index 31e27b4b1..df0bf564e 100644 --- a/content/docs/faq/cc-bcc-with-rest-api.md +++ b/content/docs/faq/cc-bcc-with-rest-api.md @@ -4,7 +4,7 @@ title: "Using CC and BCC with the REST API" description: "Before getting started please read What are the differences between CC BCC and archive recipients Note to use CC BCC and Archiving with SMTP check out our SMTP API reference documentation Note Please be advised that CC and BCC messages count towards your usage What is CC CC is a..." --- -Before getting started please read [What are the differences between CC, BCC, and archive recipients?](https://www.sparkpost.com/docs/faq/cc-bcc-archive-recipients/) +Before getting started please read [What are the differences between CC, BCC, and archive recipients?](https://docs.sparkpost.com/docs/faq/cc-bcc-archive-recipients/) Note: to use CC, BCC, and Archiving with SMTP, check out our [SMTP API reference documentation](https://developers.sparkpost.com/api/#/reference/smtp-api). Note: Please be advised that CC and BCC  messages count towards your usage. diff --git a/content/docs/faq/daily-and-monthly-quota-limits.md b/content/docs/faq/daily-and-monthly-quota-limits.md index 30d8ac0a9..49fe1fcca 100644 --- a/content/docs/faq/daily-and-monthly-quota-limits.md +++ b/content/docs/faq/daily-and-monthly-quota-limits.md @@ -34,4 +34,4 @@ Daily limits can take up to a week to fully update after you upgrade your plan. If you need to send more than 50,000 email a day on average throughout a calendar month, SparkPost requires that you have one or more dedicated IPs and custom bounce and tracking domains set up. Please set these up before requesting a limit rise. -**Note:** Please follow our [IP Warm up Guide](https://www.sparkpost.com/docs/deliverability/ip-warm-up-overview/) to warm up any new IP and correctly establish your sending reputation. +**Note:** Please follow our [IP Warm up Guide](https://docs.sparkpost.com/docs/deliverability/ip-warm-up-overview/) to warm up any new IP and correctly establish your sending reputation. diff --git a/content/docs/faq/dkim-wont-verify.md b/content/docs/faq/dkim-wont-verify.md index 46522dab8..fa5f4bec8 100644 --- a/content/docs/faq/dkim-wont-verify.md +++ b/content/docs/faq/dkim-wont-verify.md @@ -6,7 +6,7 @@ description: "Q Why won't my DKIM record verify A While configuring your Sending Q: Why won't my DKIM record verify? -A: [While configuring your Sending Domains](https://www.sparkpost.com/docs/getting-started/getting-started-sparkpost/#prerequisites), you need to "verify" that the DNS entries you have made are available to SparkPost and ESPs for use. The DNS TXT records you create have a TTL (Time To Live) value associated with them. This value is important (in cases where you have been unable to verify your Sending Domain's DNS DKIM record). The TTL is typically measured in seconds. For example a TTL value of 60 = 1 minute. +A: [While configuring your Sending Domains](https://docs.sparkpost.com/docs/getting-started/getting-started-sparkpost/#prerequisites), you need to "verify" that the DNS entries you have made are available to SparkPost and ESPs for use. The DNS TXT records you create have a TTL (Time To Live) value associated with them. This value is important (in cases where you have been unable to verify your Sending Domain's DNS DKIM record). The TTL is typically measured in seconds. For example a TTL value of 60 = 1 minute. When you click the "verify" link on the Sending Domains configuration page, SparkPost makes a request to DNS to see if that record is available. Sometimes, the TTL may cause changes you've just made to not be "visible" to SparkPost yet. So if you don't see a message saying your DKIM is verified, just wait a bit and refresh the page. diff --git a/content/docs/faq/error-messages-smtp.md b/content/docs/faq/error-messages-smtp.md index 89dd084b8..ee9f09c4b 100644 --- a/content/docs/faq/error-messages-smtp.md +++ b/content/docs/faq/error-messages-smtp.md @@ -12,4 +12,4 @@ For error messages that are not listed below, see one of the popular SMTP reply |:---------------------------------------------------------|:-------------------------------------------------------------------------------|:------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------| | 535 5.7.8 Sorry. *** No authentication type succeeded | There is some problem with the authentication credentials. API key, user name, etc. | Confirm that the API key has the Send via SMTP permission and the user name SMTP_Injection. | | 550 5.6.0 JSON parsing error in X-MSYS-API | The X-MSYS-API header is malformed in some way | Fix the header's json. The error message usually supplies additional details about the problem. See [the API Docs](https://developers.sparkpost.com/api/smtp-api.html) for more information about the format. | -| 550 5.7.1 Unconfigured Sending Domain | The domain part of the "From" address isn't a configured sending domain | Use a "From" address that uses a configured sending domain. See [Creating Sending Domains](https://www.sparkpost.com/docs/getting-started/getting-started-sparkpost/#preparing-your-from-address) if you need to create a sending domain. | +| 550 5.7.1 Unconfigured Sending Domain | The domain part of the "From" address isn't a configured sending domain | Use a "From" address that uses a configured sending domain. See [Creating Sending Domains](https://docs.sparkpost.com/docs/getting-started/getting-started-sparkpost/#preparing-your-from-address) if you need to create a sending domain. | diff --git a/content/docs/faq/gmail-shows-mailing-list.md b/content/docs/faq/gmail-shows-mailing-list.md index 0a6c760dd..0176cb00e 100644 --- a/content/docs/faq/gmail-shows-mailing-list.md +++ b/content/docs/faq/gmail-shows-mailing-list.md @@ -10,4 +10,4 @@ Gmail pulls the 'mailing list' information from the list_unsubscribe header that ## How do I remove this?  -Unfortunately since the header is auto-generated it cannot be changed or removed. For more information about the list_unsubscribe header please see [this article](https://www.sparkpost.com/docs/user-guide/remove-list-unsubscribe-header/). +Unfortunately since the header is auto-generated it cannot be changed or removed. For more information about the list_unsubscribe header please see [this article](https://docs.sparkpost.com/docs/user-guide/remove-list-unsubscribe-header/). diff --git a/content/docs/faq/inactive-account.md b/content/docs/faq/inactive-account.md index 9cafcb359..6a5c09bec 100644 --- a/content/docs/faq/inactive-account.md +++ b/content/docs/faq/inactive-account.md @@ -4,13 +4,13 @@ title: “What happens if I don’t use my Free SparkPost account?” description: “If you never send from your Free account, after 3 months we will close your account, or if you don’t send from your Free SparkPost account for 6 months we will close your account” --- -We love it when customers use SparkPost, but we recognize that things can change, and you might no longer need your account for sending. We strongly recommend that you contact support through the in app support tool to request your account is closed. Details can be found [here](https://www.sparkpost.com/docs/faq/submit-a-ticket/), but if you don’t, to protect your account’s security and any data we will close your account... +We love it when customers use SparkPost, but we recognize that things can change, and you might no longer need your account for sending. We strongly recommend that you contact support through the in app support tool to request your account is closed. Details can be found [here](https://docs.sparkpost.com/docs/faq/submit-a-ticket/), but if you don’t, to protect your account’s security and any data we will close your account...
  • If you have never sent with your own verified domain your account will be closed after 3 months.
  • If you have stopped sending we will close your account after 6 months of inactivity.
-If you would like to start using SparkPost again, you will be asked to set up a new account with one of our current plans. You can find more information on account set up [here](https://www.sparkpost.com/docs/getting-started/getting-started-sparkpost/). +If you would like to start using SparkPost again, you will be asked to set up a new account with one of our current plans. You can find more information on account set up [here](https://docs.sparkpost.com/docs/getting-started/getting-started-sparkpost/). **NOTE** For Paid plan customers we recommend you downgrade to the free plan to stop ongoing charges but also contact support as mentioned above if you no longer require your SparkPost account. diff --git a/content/docs/faq/post-to-webhook-target-failed.md b/content/docs/faq/post-to-webhook-target-failed.md index d6de40fc2..16fb7b22d 100644 --- a/content/docs/faq/post-to-webhook-target-failed.md +++ b/content/docs/faq/post-to-webhook-target-failed.md @@ -14,4 +14,4 @@ This error occurs when SparkPost sends a test batch to your webhook endpoint and * Your receiving HTTP service must return a 200 status code when it successfully receives an event batch.  Any non 200 response is treated as an error. * For security reasons, SparkPost only supports standard ports 80 (for HTTP traffic) and 443 (for HTTPS traffic). Make sure your webhook endpoint is listening for traffic on at least one of these ports. -For more details on managing your webhooks and handling webhook event data, check out [this support article](https://www.sparkpost.com/docs/tech-resources/managing-webhook-data/) and [this blog post](https://www.sparkpost.com/blog/webhooks-beyond-the-basics/) on the topic. +For more details on managing your webhooks and handling webhook event data, check out [this support article](https://docs.sparkpost.com/docs/tech-resources/managing-webhook-data/) and [this blog post](https://www.sparkpost.com/blog/webhooks-beyond-the-basics/) on the topic. diff --git a/content/docs/faq/recipient-address-was-suppressed-due-to-customer-policy.md b/content/docs/faq/recipient-address-was-suppressed-due-to-customer-policy.md index e125adee8..224d67963 100644 --- a/content/docs/faq/recipient-address-was-suppressed-due-to-customer-policy.md +++ b/content/docs/faq/recipient-address-was-suppressed-due-to-customer-policy.md @@ -25,7 +25,7 @@ You can use the API key to view who was on your account's Suppression List, but You can edit that by visiting this URL and clicking the Edit button for that particular API key and adding the Suppression Lists Read/Write permission: [https://app.sparkpost.com/#/account/credentials](https://app.sparkpost.com/#/account/credentials) -More information regarding the suppression list can be found here: https://www.sparkpost.com/docs/user-guide/using-suppression-lists/ +More information regarding the suppression list can be found here: https://docs.sparkpost.com/docs/user-guide/using-suppression-lists/ Some workarounds for this situation are: diff --git a/content/docs/faq/retrieve-bounce-info.md b/content/docs/faq/retrieve-bounce-info.md index 98bd0ad99..5a286c045 100644 --- a/content/docs/faq/retrieve-bounce-info.md +++ b/content/docs/faq/retrieve-bounce-info.md @@ -14,11 +14,11 @@ The push mechanism that SparkPost has for providing message event data is called * Target URL * Type of Authentication (None, Basic Auth and OAuth2 are available options  -Your webhook will need to specify which types of events should be pushed to your endpoint. [This article](https://www.sparkpost.com/docs/tech-resources/webhook-event-reference/) illustrates the available event types, their JSON keys for use with the Webhooks API, and also provides all *key:value* pairs that will appear for each event type in the posted payload. In the app, the question marks next to all of the options will detail the definitions of the events for you. There will likely be some events that are not applicable to you, so add and remove event types to best suit your needs. +Your webhook will need to specify which types of events should be pushed to your endpoint. [This article](https://docs.sparkpost.com/docs/tech-resources/webhook-event-reference/) illustrates the available event types, their JSON keys for use with the Webhooks API, and also provides all *key:value* pairs that will appear for each event type in the posted payload. In the app, the question marks next to all of the options will detail the definitions of the events for you. There will likely be some events that are not applicable to you, so add and remove event types to best suit your needs. Once you set up a webhook, you should click the "test" button in the app (or the "validate" call in the Webhooks API) and then use the option to post an example batch to your endpoint. After a successful test, the webhook will then start to stream production event data to your endpoint from that point forward. If a given connection is not successful in delivering a payload to the endpoint, an error message will be displayed in the app, detailing the time the last successful batch was posted. Please note that the error message will remain in the app if any previous posted batch ever experiences a problem, even though the webhook may be accepting posted payloads of data. The time of last batch successful will likely be very recent if this is the case. -Additional information about webhook best practices and retry logic should be read prior to setting up a webhook endpoint. That article can be found [here](https://www.sparkpost.com/docs/tech-resources/managing-webhook-data/). +Additional information about webhook best practices and retry logic should be read prior to setting up a webhook endpoint. That article can be found [here](https://docs.sparkpost.com/docs/tech-resources/managing-webhook-data/). ### Pull Mechanism - Events API @@ -26,7 +26,7 @@ The pull method available for you to retrieve bounce info is the Events API, and The Events API, however, contains many more filtering options for obtaining or searching for message events. More information about what searchable filters you can use with a Events API call, please see our documentation on that [here](https://developers.sparkpost.com/api/events/). -It is important to note that there are minor differences present between the data posted by a webhook and information pulled from the Events API, though both sets of event data are otherwise exactly the same. More detailed information on the minor differences are detailed in [this article](https://www.sparkpost.com/docs/user-guide/comparing-data/). +It is important to note that there are minor differences present between the data posted by a webhook and information pulled from the Events API, though both sets of event data are otherwise exactly the same. **Note**: Message Events data is only stored for a maximum of 10 days in a rolling window. If you wish to pull data from the Events API or app, only the last 10 days will be displayed. @@ -36,7 +36,7 @@ It is important to also know which bounce and event types you should suppress fr * “Bounce” events that are hard bounces - “bounce_class” = 10, 30, 90 - **Note**: The three bounce classes above are **permanent** failures and should **not** be retried. [Link](https://www.sparkpost.com/docs/deliverability/bounce-classification-codes/) to all bounce classifications + **Note**: The three bounce classes above are **permanent** failures and should **not** be retried. [Link](https://docs.sparkpost.com/docs/deliverability/bounce-classification-codes/) to all bounce classifications * “Out of Band” events that are hard bounces - “bounce_class” = 10, 30, 90​ ​**Note**: The three bounce classes above are **permanent** failures and should **not** be retried. diff --git a/content/docs/faq/suppression-timing.md b/content/docs/faq/suppression-timing.md index 39a4aac5a..9510b138e 100644 --- a/content/docs/faq/suppression-timing.md +++ b/content/docs/faq/suppression-timing.md @@ -14,4 +14,4 @@ In the dashboard, you will see one of the following reasons in the 'Bounces' mod 554 5.7.1 recipient address was suppressed due to customer policy (Bounce Rule) 554 5.7.1 recipient address was suppressed due to customer policy (Unsubscribe Rule) -[This article](https://www.sparkpost.com/docs/user-guide/using-suppression-lists/) offers more detail on working with suppression lists. +[This article](https://docs.sparkpost.com/docs/user-guide/using-suppression-lists/) offers more detail on working with suppression lists. diff --git a/content/docs/faq/update-on-pricing.md b/content/docs/faq/update-on-pricing.md index 2e4a36e59..7eeec549c 100644 --- a/content/docs/faq/update-on-pricing.md +++ b/content/docs/faq/update-on-pricing.md @@ -8,12 +8,12 @@ On **July 15, 2019**, we notified SparkPost customers on the old SparkPost “Fr ## Why did we change our pricing? -Over the last four years, we have delivered significant expansions to our product such as [A/B testing](https://www.sparkpost.com/docs/tech-resources/a-b-testing-sparkpost/), [Recipient Validation](https://www.sparkpost.com/recipient-validation/), and our predictive email analytics platform [Signals](https://www.sparkpost.com/platform/signals/). And we’re shipping new features faster than ever. We believe that the new pricing is fair and in line with what is being offered in the market. +Over the last four years, we have delivered significant expansions to our product such as [A/B testing](https://docs.sparkpost.com/docs/tech-resources/a-b-testing-sparkpost/), [Recipient Validation](https://www.sparkpost.com/recipient-validation/), and our predictive email analytics platform [Signals](https://www.sparkpost.com/platform/signals/). And we’re shipping new features faster than ever. We believe that the new pricing is fair and in line with what is being offered in the market. ## What are the differences between Starter and Premier plans? The **Starter** plans are low-cost plans that make it easy for new or low-volume senders to get started. They include many of SparkPost’s great features, but some features are limited in order to keep costs low. -The **Premier** plans are robust email packages for high-volume senders that include additional features to facilitate and manage sending large volumes of email. Feature breakdown of these plans can be found [here](https://www.sparkpost.com/docs/faq/difference-between-starter-and-premier/). +The **Premier** plans are robust email packages for high-volume senders that include additional features to facilitate and manage sending large volumes of email. Feature breakdown of these plans can be found [here](https://docs.sparkpost.com/docs/faq/difference-between-starter-and-premier/). ## If I cancel my plan and reactivate, can I go back to the old pricing? @@ -29,4 +29,4 @@ On or before September 15, 2019, you will need to login to your SparkPost accoun ## Will you be increasing prices for other SparkPost features and services? -Pricing and plan changes only apply to sending volume. Pricing of features or additional services such as [Recipient Validation](https://www.sparkpost.com/docs/tech-resources/recipient-validation-sparkpost/) and [Dedicated IPs](https://www.sparkpost.com/docs/deliverability/dedicated-ip-pools/) are not affected by this change. However, please do note that these features are not available with all messaging plans. Feature breakdown of the different plan tiers can be found [here](https://www.sparkpost.com/docs/faq/difference-between-starter-and-premier/). +Pricing and plan changes only apply to sending volume. Pricing of features or additional services such as [Recipient Validation](https://docs.sparkpost.com/docs/tech-resources/recipient-validation-sparkpost/) and [Dedicated IPs](https://docs.sparkpost.com/docs/deliverability/dedicated-ip-pools/) are not affected by this change. However, please do note that these features are not available with all messaging plans. Feature breakdown of the different plan tiers can be found [here](https://docs.sparkpost.com/docs/faq/difference-between-starter-and-premier/). diff --git a/content/docs/faq/why-domain-blocked.md b/content/docs/faq/why-domain-blocked.md index 2a79cdfcb..f754bebc9 100644 --- a/content/docs/faq/why-domain-blocked.md +++ b/content/docs/faq/why-domain-blocked.md @@ -5,4 +5,4 @@ description: "If your domain’s status is \"Blocked\", it’s generally because --- If your domain’s status is "Blocked", it’s generally because your domain is already in use by another SparkPost account, your domain has been previously blocked for sending abusive traffic through our service or another provider, or because one or more of our requirements are not met. -Please see the [Requirements For Sending and Bounce Domains](https://www.sparkpost.com/docs/getting-started/requirements-for-sending-domains/) page. +Please see the [Requirements For Sending and Bounce Domains](https://docs.sparkpost.com/docs/getting-started/requirements-for-sending-domains/) page. diff --git a/content/docs/getting-started/create-api-keys.md b/content/docs/getting-started/create-api-keys.md index 03f9c3fb3..5204f825c 100644 --- a/content/docs/getting-started/create-api-keys.md +++ b/content/docs/getting-started/create-api-keys.md @@ -16,12 +16,12 @@ Click on **API Keys** under the **Configuration** section of the side navigation 1. Choose which permissions you want the API key to have. If you wish to change which permissions are available for a given API key, you may do so. -1. You do not need to configure the API key for subaccounts, unless you wish to use subaccounts. More information on subaccounts can be found in [this article](https://www.sparkpost.com/docs/user-guide/subaccounts/). +1. You do not need to configure the API key for subaccounts, unless you wish to use subaccounts. More information on subaccounts can be found in [this article](https://docs.sparkpost.com/docs/user-guide/subaccounts/). 1. Click the **Create API Key** button to save this information and generate the API key. **IMPORTANT**: The generated key will be visible only once. After the key has been created, you will only be able to see the name of the key, it's permissions, and the first four characters. -You have now completed the account configuration and obtained an API Key. If your sending domain has been verified you are ready to [send your first email using SparkPost](https://www.sparkpost.com/docs/getting-started/getting-started-sparkpost/#sending-email)! +You have now completed the account configuration and obtained an API Key. If your sending domain has been verified you are ready to [send your first email using SparkPost](https://docs.sparkpost.com/docs/getting-started/getting-started-sparkpost/#sending-email)! **Note**: If you are using the "Allowed IPs" feature, not all web hosting services will let you determine what IP API calls are made from, even if you subscribe to 'dedicated IP' services they provide. Please make sure you have control over the outgoing IP before utilizing this feature. diff --git a/content/docs/getting-started/creating-template.md b/content/docs/getting-started/creating-template.md index 2cbe4915e..4dae3097f 100644 --- a/content/docs/getting-started/creating-template.md +++ b/content/docs/getting-started/creating-template.md @@ -6,12 +6,12 @@ description: "Create a Template Once you understand how to send an email transmi ## Create a template -Once you understand how to [send an email (transmission)](https://www.sparkpost.com/docs/getting-started/getting-started-sparkpost/#sending-email), you'll want to know how to create templates in SparkPost if you do not wish to use inline content in your transmissions API call. +Once you understand how to [send an email (transmission)](https://docs.sparkpost.com/docs/getting-started/getting-started-sparkpost/#sending-email), you'll want to know how to create templates in SparkPost if you do not wish to use inline content in your transmissions API call. Currently there are two ways you can create templates in SparkPost: -* [Create templates in SparkPost using the app](https://www.sparkpost.com/docs/getting-started/creating-template/#creating-templates-with-the-app) -* [Create templates in SparkPost using the API](https://www.sparkpost.com/docs/getting-started/creating-template/#creating-templates-with-the-api) +* [Create templates in SparkPost using the app](https://docs.sparkpost.com/docs/getting-started/creating-template/#creating-templates-with-the-app) +* [Create templates in SparkPost using the API](https://docs.sparkpost.com/docs/getting-started/creating-template/#creating-templates-with-the-api) ## Why create templates in SparkPost? @@ -38,7 +38,7 @@ Creating a template using the SparkPost app is simple. To get started, let's go 1. **Define subaccount usage of the template:** Choose whether or not to share this template with subaccounts by clicking the checkbox titled "Share with all subaccounts". If a primary account creates a template and does not elect to share it with subaccounts, only the primary account may use that template. If the template is shared with all subaccounts, every subaccount has access to use the template, but only the primary account has edit permissions. If the primary account creates a template on behalf of a subaccount and assigns it to a single subaccount, both the primary account and subaccount can use and edit that template. - Read more about using subaccounts in SparkPost [here](https://www.sparkpost.com/docs/user-guide/subaccounts/). + Read more about using subaccounts in SparkPost [here](https://docs.sparkpost.com/docs/user-guide/subaccounts/). 1. **Define the subject of the template:** Input the subject line of the template that will appear in your recipient's mail client. @@ -54,11 +54,11 @@ Creating a template using the SparkPost app is simple. To get started, let's go 1. **Choose engagement tracking options:** If you would like this template to have open and click tracking enabled, click on either of these buttons. Orange is enabled, and grey is disabled. -1. **Choose transactional message options:** Choose whether to mark this template as a transactional message. Orange is enabled, grey is disabled (and therefore "non_transactional".) Appropriately categorizing your templates is important because both "transactional" and "non-transactional" templates have separate suppression lists. For more information on suppression lists, see this article [here](https://www.sparkpost.com/docs/user-guide/using-suppression-lists/). +1. **Choose transactional message options:** Choose whether to mark this template as a transactional message. Orange is enabled, grey is disabled (and therefore "non_transactional".) Appropriately categorizing your templates is important because both "transactional" and "non-transactional" templates have separate suppression lists. For more information on suppression lists, see this article [here](https://docs.sparkpost.com/docs/user-guide/using-suppression-lists/). 1. **Define the content of the template:** - * **[Creating HTML Content](https://www.sparkpost.com/docs/getting-started/creating-template/#authoring-html-content-for-your-templates)** - * **[Creating Text Content](https://www.sparkpost.com/docs/getting-started/creating-template/#authoring-text-content-for-your-templates)** + * **[Creating HTML Content](https://docs.sparkpost.com/docs/getting-started/creating-template/#authoring-html-content-for-your-templates-in-the-sparkpost-app)** + * **[Creating Text Content](https://docs.sparkpost.com/docs/getting-started/creating-template/#authoring-text-content-for-your-templates-in-the-sparkpost-app)** * **[How to Use The Template Language](https://developers.sparkpost.com/api/template-language/)** At this point, we are *technically* done with our template and we could "Save" or "Save and Publish", but let's take a few minutes to test this template and make sure it is behaving as we expect. @@ -79,7 +79,7 @@ If you are using substitution data in your emails, there are additional steps yo ### Prerequisites -* **SparkPost API Key:** You will need to have a SparkPost API Key with all the appropriate data-access permissions for Templates API management. [How to create a SparkPost API Key](https://www.sparkpost.com/docs/getting-started/create-api-keys/) +* **SparkPost API Key:** You will need to have a SparkPost API Key with all the appropriate data-access permissions for Templates API management. [How to create a SparkPost API Key](https://docs.sparkpost.com/docs/getting-started/create-api-keys/) * **HTTP Request Knowledge:** You will need to understand how to make HTTP(S) requests. * **Tools:** You will need to have a REST Client, or access to a terminal which supports cURL. diff --git a/content/docs/getting-started/engagement-tracking.md b/content/docs/getting-started/engagement-tracking.md index d028a91e0..a9cdb6155 100644 --- a/content/docs/getting-started/engagement-tracking.md +++ b/content/docs/getting-started/engagement-tracking.md @@ -7,7 +7,7 @@ description: "This guide outlines some of the different ways you can do engageme With SparkPost, there are a multitude of ways to configure engagement tracking with our customers. This guide will outline some of the initial options, and provide references to other guides for configuring custom tracking domains and different ways to use **HTTPS** with your custom tracking domains. ## Getting Started -Customers can view their engagement through the use of SparkPosts Events. These events can be searched and viewed in many different ways. They can be viewed within [SparkPost Signals®](https://www.sparkpost.com/docs/reporting/signals-analytics/), queried and searched via the [Events API](https://developers.sparkpost.com/api/events/) or sent to your own environments through the use of [Event Webhooks](https://developers.sparkpost.com/api/webhooks/) to name a few. +Customers can view their engagement through the use of SparkPosts Events. These events can be searched and viewed in many different ways. They can be viewed within [SparkPost Signals®](https://docs.sparkpost.com/docs/reporting/signals-analytics/), queried and searched via the [Events API](https://developers.sparkpost.com/api/events/) or sent to your own environments through the use of [Event Webhooks](https://developers.sparkpost.com/api/webhooks/) to name a few. ### Notes on Click Tracking For a link to be click tracked, it must start with a protocol of either `http://` or `https://`. If neither of these are present, the link will not be click tracked by SparkPost. @@ -43,7 +43,7 @@ SparkPost templates also have the option to set open and click tracking so that If for some reason, you cannot or do not wish to set your tracking configuration with Transmissions API or Template level options, you can request different default settings for your account. Please contact support through the SparkPost app, or your Technical Account Manager. ## SMTP Engagement Tracking -The SparkPost SMTP engagement tracking is turned off by default for new accounts. This can be turned on account wide by following this [Guide](https://www.sparkpost.com/docs/tech-resources/smtp-engagement-tracking/). +The SparkPost SMTP engagement tracking is turned off by default for new accounts. This can be turned on account wide by following this [Guide](https://docs.sparkpost.com/docs/tech-resources/smtp-engagement-tracking/). To enable click and open tracking in SMTP messages, add the X-MSYS-API header as follows: @@ -51,7 +51,7 @@ To enable click and open tracking in SMTP messages, add the X-MSYS-API header as X-MSYS-API: { "options" : { "open_tracking" : true, "click_tracking" : true } } ``` -For more information on SMTP Engagement Tracking, check out this [Guide](https://www.sparkpost.com/docs/tech-resources/smtp-engagement-tracking/) to configure your account settings or leverage the [SMTP API](https://developers.sparkpost.com/api/smtp/) to control your engagement tracking. +For more information on SMTP Engagement Tracking, check out this [Guide](https://docs.sparkpost.com/docs/tech-resources/smtp-engagement-tracking/) to configure your account settings or leverage the [SMTP API](https://developers.sparkpost.com/api/smtp/) to control your engagement tracking. ### Rate Limiting If Sparkpost detects excessive click requests over a short period, it will return http `403 Forbidden` errors. @@ -59,4 +59,4 @@ If Sparkpost detects excessive click requests over a short period, it will retur If you're a developer running the same tests frequently, you may run into it. The solution is to wait a while, or cycle through various recipient addresses. ## Next Steps -Look at setting up a [Custom Tracking Domain](https://www.sparkpost.com/docs/tech-resources/enabling-multiple-custom-tracking-domains/) for your SparkPost mail, which can provide features like [Mobile Universal and App Links](https://www.sparkpost.com/docs/tech-resources/deep-links-self-serve/) and **HTTPS** tracking links through [CDN Hosting](https://www.sparkpost.com/docs/tech-resources/enabling-https-engagement-tracking-on-sparkpost/) or the use of a [Reverse Proxy](https://www.sparkpost.com/docs/tech-resources/using-proxy-https-tracking-domain/). +Look at setting up a [Custom Tracking Domain](https://docs.sparkpost.com/docs/tech-resources/enabling-multiple-custom-tracking-domains/) for your SparkPost mail, which can provide features like [Mobile Universal and App Links](https://docs.sparkpost.com/docs/tech-resources/deep-links-self-serve/) and **HTTPS** tracking links through [CDN Hosting](https://docs.sparkpost.com/docs/tech-resources/enabling-https-engagement-tracking-on-sparkpost/) or the use of a [Reverse Proxy](https://docs.sparkpost.com/docs/tech-resources/using-proxy-https-tracking-domain/). diff --git a/content/docs/getting-started/getting-started-sparkpost.md b/content/docs/getting-started/getting-started-sparkpost.md index ab4a39fca..74bc78d20 100644 --- a/content/docs/getting-started/getting-started-sparkpost.md +++ b/content/docs/getting-started/getting-started-sparkpost.md @@ -41,7 +41,7 @@ If you do not have a domain name, you'll need to purchase one to use with SparkP To set up your sending domain, add the domain to your SparkPost account, verify that you own it and wait a moment while our Compliance team runs a few quick checks. Follow the detailed steps below to get it done. -Note: SparkPost expects to see a [legitimate web presence](https://www.sparkpost.com/docs/getting-started/requirements-for-sending-domains/#website-requirements) on each sending domain, so please ensure your website is accessible before adding a domain to your SparkPost account. If you use a subdomain, a legitimate web presence is only needed on the top-level domain. +Note: SparkPost expects to see a [legitimate web presence](https://docs.sparkpost.com/docs/getting-started/requirements-for-sending-domains/#website-requirements) on each sending domain, so please ensure your website is accessible before adding a domain to your SparkPost account. If you use a subdomain, a legitimate web presence is only needed on the top-level domain. ## Domain Setup ### Step 1: Add the Domain @@ -62,7 +62,7 @@ Unfortunately, some DNS records take longer to update than others, even up to 24 Some providers are particular about how the hostname is entered, so please check with your domain provider to see if there are any special requirements for entering your DNS TXT record. -You're almost done! While you've been verifying ownership of your domain, the addition of this DKIM DNS record will [also help your reputation as an email sender](https://www.sparkpost.com/docs/faq/why-configure-dkim/). DKIM is a widely-used email standard that most email services will use to verify that your emails were in fact sent by you and weren't intercepted or changed along the way. +You're almost done! While you've been verifying ownership of your domain, the addition of this DKIM DNS record will [also help your reputation as an email sender](https://docs.sparkpost.com/docs/faq/why-configure-dkim/). DKIM is a widely-used email standard that most email services will use to verify that your emails were in fact sent by you and weren't intercepted or changed along the way. *Note:* If you don't have access to update your DNS records for this domain, you can verify ownership further down in the page by sending an email to a mailbox you control on your domain. Then click on the link in the received email to verify. This will allow you to send email from this domain, but SparkPost will not be able to DKIM-sign the mail it sends on your behalf, which could cause deliverability issues. We recommend using DNS verification whenever possible for this reason. @@ -75,7 +75,7 @@ Here are some how-to documents for editing DNS records with common DNS providers ### Step 3: Final Review -Once your DNS record has been found, your domain's status will change to "Pending". This means the domain is in our final review process which will verify that the domain meets [our best practice requirements](https://www.sparkpost.com/docs/getting-started/requirements-for-sending-domains/). This usually takes just a few minutes, but can sometimes take up to an hour. Once the review is complete, the domain will be ready to send. +Once your DNS record has been found, your domain's status will change to "Pending". This means the domain is in our final review process which will verify that the domain meets [our best practice requirements](https://docs.sparkpost.com/docs/getting-started/requirements-for-sending-domains/). This usually takes just a few minutes, but can sometimes take up to an hour. Once the review is complete, the domain will be ready to send. ![Ready to send](media/getting-started-sparkpost/status-section.png) @@ -233,6 +233,6 @@ SparkPost can receive email on your behalf and forward to your own HTTP endpoint ## How To Get Help -For general questions, you might find a ready-made answer by searching SparkPost's [support articles](https://www.sparkpost.com/docs/). +For general questions, you might find a ready-made answer by searching SparkPost's [support articles](https://docs.sparkpost.com/docs/). If you run into an issue with your account you can contact our support team by clicking on the question mark on the top right of [your dashboard](https://app.sparkpost.com/dashboard) and submitting a ticket. You can also follow the [SparkPost Status](https://status.sparkpost.com/) page for service updates. diff --git a/content/docs/getting-started/how-to-get-help.md b/content/docs/getting-started/how-to-get-help.md index 275b14779..1495524ba 100644 --- a/content/docs/getting-started/how-to-get-help.md +++ b/content/docs/getting-started/how-to-get-help.md @@ -4,7 +4,7 @@ title: 'How to get Help' description: 'This guide will help you find the best resource for your inquiry and fastest resolution As a general rule first search in the latest API docs and knowledge base articles and then try the following Service Status Find out whether the service is up down sideways on vacation or going...' --- -This guide will help you find the best resource for your inquiry and fastest resolution. As a general rule first search in the latest [API docs](https://developers.sparkpost.com/api/) and [knowledge base articles](https://www.sparkpost.com/docs/) and then try the following. +This guide will help you find the best resource for your inquiry and fastest resolution. As a general rule first search in the latest [API docs](https://developers.sparkpost.com/api/) and [knowledge base articles](https://docs.sparkpost.com/docs/) and then try the following. ## Service Status @@ -23,20 +23,20 @@ Find out whether the service is up, down, sideways, on vacation or going slow by | Task | How to get help | | :-- | :-- | -| **First Time Setup Support** | See the video guides in the **[Getting Started Section](https://www.sparkpost.com/docs/getting-started/)** of the support center, if you are still having issues **[Submit a support request](https://app.sparkpost.com/dashboard/?supportTicket=true&supportIssue=general_issue) ([EU](https://app.eu.sparkpost.com/dashboard/?supportTicket=true&supportIssue=general_issue))** | +| **First Time Setup Support** | See the video guides in the **[Getting Started Section](https://docs.sparkpost.com/docs/getting-started/)** of the support center, if you are still having issues **[Submit a support request](https://app.sparkpost.com/dashboard/?supportTicket=true&supportIssue=general_issue) ([EU](https://app.eu.sparkpost.com/dashboard/?supportTicket=true&supportIssue=general_issue))** | | **Dedicated IP Address Requests (for paid plans)** | See the [IP Pools](https://app.sparkpost.com/account/ip-pools) page under **Configuration** to request your IP(s) | | **Sending Limit Request** | See the [Usage](https://app.sparkpost.com/usage) page in the app and complete the form under 'Contact support' | -| **Custom Bounce Domain** | See **[Setting up Custom Bounce Domain](https://www.sparkpost.com/docs/tech-resources/custom-bounce-domain/)** article for instructions | -| **Inbound Relay Webhook Setup** | See **[Enable Inbound Relay Webhook](https://www.sparkpost.com/docs/tech-resources/enabling-inbound-email/)** for instructions | +| **Custom Bounce Domain** | See **[Setting up Custom Bounce Domain](https://docs.sparkpost.com/docs/tech-resources/custom-bounce-domain/)** article for instructions | +| **Inbound Relay Webhook Setup** | See **[Enable Inbound Relay Webhook](https://docs.sparkpost.com/docs/tech-resources/enabling-inbound-email/)** for instructions | ## Technical Support | Task | How to get help | | :-- | :-- | | **DKIM Verification Issues** | **[Contact our Compliance Team](https://app.sparkpost.com/dashboard/?supportTicket=true&supportIssue=dns) ([EU](https://app.eu.sparkpost.com/dashboard/?supportTicket=true&supportIssue=dns))** | -| **Sending Domain Block** | See the **[Domain Requirements](https://www.sparkpost.com/docs/getting-started/requirements-for-sending-domains/)** Article and if all else fails **[Contact our Compliance Team](https://app.sparkpost.com/dashboard/?supportTicket=true&supportIssue=sending_domain_block) ([EU](https://app.eu.sparkpost.com/dashboard/?supportTicket=true&supportIssue=sending_domain_block))** | -| **Finding Bounce Information** | See **[Getting Bounce Information](https://www.sparkpost.com/docs/faq/retrieve-bounce-info/)** for instructions | -| **Policy Rejections** | See the **[Suppressions](https://www.sparkpost.com/docs/user-guide/using-suppression-lists/)** Article | +| **Sending Domain Block** | See the **[Domain Requirements](https://docs.sparkpost.com/docs/getting-started/requirements-for-sending-domains/)** Article and if all else fails **[Contact our Compliance Team](https://app.sparkpost.com/dashboard/?supportTicket=true&supportIssue=sending_domain_block) ([EU](https://app.eu.sparkpost.com/dashboard/?supportTicket=true&supportIssue=sending_domain_block))** | +| **Finding Bounce Information** | See **[Getting Bounce Information](https://docs.sparkpost.com/docs/faq/retrieve-bounce-info/)** for instructions | +| **Policy Rejections** | See the **[Suppressions](https://docs.sparkpost.com/docs/user-guide/using-suppression-lists/)** Article | ## Support Team Hours @@ -44,16 +44,16 @@ Our Support teams work **Monday to Friday 09:00 til 20:00 Eastern Time (UTC-5)** ## Integration Support -For common front end integrations we have basic guides in the **[Integrations Section](https://www.sparkpost.com/docs/integrations/)** of the support center or click on the particular guide you require: - -- [PowerMTA](https://www.sparkpost.com/docs/integrations/power-mta/) -- [Ongage](https://www.sparkpost.com/docs/integrations/ongage/) -- [Easymail](https://www.sparkpost.com/docs/integrations/easy-mail/) -- [Sendblaster](https://www.sparkpost.com/docs/integrations/send-blaster/) -- [Mailwizz](https://www.sparkpost.com/docs/integrations/mail-wizz/) -- [Send With Us](https://www.sparkpost.com/docs/integrations/send-with-us/) -- [Postfix](https://www.sparkpost.com/docs/integrations/postfix/) -- [Group Mail](https://www.sparkpost.com/docs/integrations/group-mail/) -- [Hoolie](https://www.sparkpost.com/docs/integrations/hoolie/) -- [Direct Mail](https://www.sparkpost.com/docs/integrations/direct-mail/) -- [eCampaign 11](https://www.sparkpost.com/docs/integrations/e-campaign-11/) +For common front end integrations we have basic guides in the **[Integrations Section](https://docs.sparkpost.com/docs/integrations/)** of the support center or click on the particular guide you require: + +- [PowerMTA](https://docs.sparkpost.com/docs/integrations/power-mta/) +- [Ongage](https://docs.sparkpost.com/docs/integrations/ongage/) +- [Easymail](https://docs.sparkpost.com/docs/integrations/easy-mail/) +- [Sendblaster](https://docs.sparkpost.com/docs/integrations/send-blaster/) +- [Mailwizz](https://docs.sparkpost.com/docs/integrations/mail-wizz/) +- [Send With Us](https://docs.sparkpost.com/docs/integrations/send-with-us/) +- [Postfix](https://docs.sparkpost.com/docs/integrations/postfix/) +- [Group Mail](https://docs.sparkpost.com/docs/integrations/group-mail/) +- [Hoolie](https://docs.sparkpost.com/docs/integrations/hoolie/) +- [Direct Mail](https://docs.sparkpost.com/docs/integrations/direct-mail/) +- [eCampaign 11](https://docs.sparkpost.com/docs/integrations/e-campaign-11/) diff --git a/content/docs/getting-started/previewing-and-sending-test-emails.md b/content/docs/getting-started/previewing-and-sending-test-emails.md index f5ae04add..55d406ce1 100644 --- a/content/docs/getting-started/previewing-and-sending-test-emails.md +++ b/content/docs/getting-started/previewing-and-sending-test-emails.md @@ -14,7 +14,7 @@ The following example code is used to illustrate our preview and test send funct * **ID:** my-preview-test-template * **From Name:** This is the "human friendly" name that is shown to recipients in their email client * **From Email (sender):** Your user on the valid sending domain -* **From Email (@domain):** Must be one of your **valid** sending domains. [Learn how to configure a sending domain in SparkPost](https://www.sparkpost.com/docs/getting-started/getting-started-sparkpost/#preparing-your-from-address) +* **From Email (@domain):** Must be one of your **valid** sending domains. [Learn how to configure a sending domain in SparkPost](https://docs.sparkpost.com/docs/getting-started/getting-started-sparkpost/#preparing-your-from-address) * **Subject:** Test Email, Please do not respond * **Description:** This is a simple test template used to test SparkPost's Preview Functionality * **Engagement Tracking:** Turn on Track Opens and Track Clicks @@ -27,7 +27,7 @@ The following example code is used to illustrate our preview and test send funct {{if product.name}}

-Thank you for your interest in [{{product.name}}](https://www.sparkpost.com/docs/product.url "product.description") +Thank you for your interest in [{{product.name}}](https://docs.sparkpost.com/docs/product.url "product.description")

{{end}} diff --git a/content/docs/getting-started/requirements-for-sending-domains.md b/content/docs/getting-started/requirements-for-sending-domains.md index ec3acc4fb..0fd607d7b 100644 --- a/content/docs/getting-started/requirements-for-sending-domains.md +++ b/content/docs/getting-started/requirements-for-sending-domains.md @@ -4,7 +4,7 @@ title: "Requirements For Sending and Bounce Domains" description: "To protect the sending reputation of all of our customers, SparkPost sending and bounce domains must be officially verified and validated." --- -At SparkPost we strive to ensure that all of our customers are **Responsible Senders**.  We do this by providing guidance on [deliverability best practices for inbox placement](https://www.sparkpost.com/docs/deliverability/optimizing-deliverability-and-inbox-placement/), providing real-time feedback on your sends and by enforcing policies that protect our sending reputation and the reputation of our customers. +At SparkPost we strive to ensure that all of our customers are **Responsible Senders**.  We do this by providing guidance on [deliverability best practices for inbox placement](https://docs.sparkpost.com/docs/deliverability/optimizing-deliverability-and-inbox-placement/), providing real-time feedback on your sends and by enforcing policies that protect our sending reputation and the reputation of our customers. The gold standard for a **Responsible Sender** is one who sends only to those recipients who want and expect the content, and one who practices good list hygiene as follows: @@ -38,7 +38,7 @@ If your domain's status is "Blocked", it's generally because your domain is alre ### Domain Requirements -* You must own or have administrative access to your domain -- that is confirmed when you complete the [Sending Domain Verification Steps](https://www.sparkpost.com/docs/getting-started/getting-started-sparkpost/#step-2-verifying-domain-ownership) +* You must own or have administrative access to your domain -- that is confirmed when you complete the [Sending Domain Verification Steps](https://docs.sparkpost.com/docs/getting-started/getting-started-sparkpost/#step-2-verify-domain) * An A record or MX record in DNS must exist for your domain * The organizational domain cannot be used across more than one SparkPost account (for example, you cannot have mail.acme.com associated with one account while alert.acme.com belongs to another account) @@ -57,5 +57,5 @@ If you make changes to your blocked sending domain and would like us to re-eva ## Additional Resources: -* Having trouble setting up your sending domain? See our article on how to [Create a Sending Domain](https://www.sparkpost.com/docs/getting-started/getting-started-sparkpost/#preparing-your-from-address) -* A step by step guide to setting up your account for success with our [New User Guide](https://www.sparkpost.com/docs/getting-started/getting-started-sparkpost/) +* Having trouble setting up your sending domain? See our article on how to [Create a Sending Domain](https://docs.sparkpost.com/docs/getting-started/getting-started-sparkpost/#preparing-your-from-address) +* A step by step guide to setting up your account for success with our [New User Guide](https://docs.sparkpost.com/docs/getting-started/getting-started-sparkpost/) diff --git a/content/docs/integrations/discourse.md b/content/docs/integrations/discourse.md index b7514eb51..a23fc65a2 100644 --- a/content/docs/integrations/discourse.md +++ b/content/docs/integrations/discourse.md @@ -25,7 +25,7 @@ Visit the [Sending Domains](https://app.sparkpost.com/account/sending-domains) p * Sending a verification email to postmaster@yourdomain.com * Setting up a valid DKIM DNS record -Choose the method that works best for you. View [this support article](https://www.sparkpost.com/docs/getting-started/getting-started-sparkpost/#preparing-your-from-address) for more detailed information on setting up sending domains. +Choose the method that works best for you. View [this support article](https://docs.sparkpost.com/docs/getting-started/getting-started-sparkpost/#preparing-your-from-address) for more detailed information on setting up sending domains. ## Create an API key in SparkPost diff --git a/content/docs/integrations/django.md b/content/docs/integrations/django.md index e9497d3c3..761a6cf3e 100644 --- a/content/docs/integrations/django.md +++ b/content/docs/integrations/django.md @@ -16,7 +16,7 @@ EMAIL_HOST_PASSWORD = 'YOUR API KEY' EMAIL_USE_TLS = True ``` -Remember to replace `YOUR API KEY` with an API key that has “Send via SMTP” permission. Follow the [create API keys](https://www.sparkpost.com/docs/getting-started/create-api-keys/) guide for detailed instructions. +Remember to replace `YOUR API KEY` with an API key that has “Send via SMTP” permission. Follow the [create API keys](https://docs.sparkpost.com/docs/getting-started/create-api-keys/) guide for detailed instructions. Now send your email through Django using SparkPost: diff --git a/content/docs/integrations/elixir.md b/content/docs/integrations/elixir.md index 01411a772..ed4ad0fdb 100644 --- a/content/docs/integrations/elixir.md +++ b/content/docs/integrations/elixir.md @@ -4,7 +4,7 @@ title: "Using SparkPost with Elixir" description: "This article assumes you are familiar with Elixir and the mix and iex CL Is We also assume that you have created an API key with the Send via SMTP permission This article will show you how to use Spark Post via SMTP with Elixir and the Mailman library mix..." --- -**This article assumes you are familiar with Elixir and the `mix` and `iex` CLIs. We also assume that you have [created an API key](https://www.sparkpost.com/docs/getting-started/create-api-keys/) with the "Send via SMTP" permission.** +**This article assumes you are familiar with Elixir and the `mix` and `iex` CLIs. We also assume that you have [created an API key](https://docs.sparkpost.com/docs/getting-started/create-api-keys/) with the "Send via SMTP" permission.** This article will show you how to use SparkPost via SMTP with Elixir and the [Mailman](https://github.com/kamilc/mailman) library. diff --git a/content/docs/integrations/joomla.md b/content/docs/integrations/joomla.md index e7f16a8bf..c612d56af 100644 --- a/content/docs/integrations/joomla.md +++ b/content/docs/integrations/joomla.md @@ -6,8 +6,8 @@ description: "Configuring Joomla to use Spark Post is very straightforward since Configuring Joomla to use SparkPost is very straightforward since it can be done from its administration panel. -* [Add Sending Domain](https://www.sparkpost.com/docs/getting-started/getting-started-sparkpost/#preparing-your-from-address) to SparkPost -* [Create an API Key](https://www.sparkpost.com/docs/getting-started/create-api-keys/) with “*Send via SMTP*” permission +* [Add Sending Domain](https://docs.sparkpost.com/docs/getting-started/getting-started-sparkpost/#preparing-your-from-address) to SparkPost +* [Create an API Key](https://docs.sparkpost.com/docs/getting-started/create-api-keys/) with “*Send via SMTP*” permission * Login to admin panel (as an Administrator) of your Joomla installation * Open *Server* tab from *System* -> *Global Configurations* * Use the following information to fill in Mail Settings diff --git a/content/docs/integrations/magento.md b/content/docs/integrations/magento.md index 23725e7e8..f6fcc7b57 100644 --- a/content/docs/integrations/magento.md +++ b/content/docs/integrations/magento.md @@ -12,7 +12,7 @@ Follow these steps to configure Magento and SMTP Pro to send through your SparkP ## Configure Magento -**Note**: to send with SparkPost, Magento needs to use *From* addresses with a *verified sending domain* from your SparkPost account. Learn about configuring [SparkPost sending domains](https://www.sparkpost.com/docs/user-guide/managing-sending-domains/). +**Note**: to send with SparkPost, Magento needs to use *From* addresses with a *verified sending domain* from your SparkPost account. Learn about configuring [SparkPost sending domains](https://docs.sparkpost.com/docs/user-guide/managing-sending-domains/). To configure Magento to use your sending domain in its *From* addresses, log into your **Magento Admin Panel** and navigate to **System -> Configuration** in the top menu. @@ -36,7 +36,7 @@ Apply the following settings in the **General Settings** tab: * Authentication: Login * Username: SMTP_Injection * Password: `` - * [How to create a SparkPost API key](https://www.sparkpost.com/docs/getting-started/create-api-keys/) + * [How to create a SparkPost API key](https://docs.sparkpost.com/docs/getting-started/create-api-keys/) * Remember to enable the 'Send via SMTP' privilege on your key. * Host: smtp.sparkpostmail.com * Port: 587 diff --git a/content/docs/integrations/ms-windows-powershell.md b/content/docs/integrations/ms-windows-powershell.md index b4720c48e..996665c00 100644 --- a/content/docs/integrations/ms-windows-powershell.md +++ b/content/docs/integrations/ms-windows-powershell.md @@ -6,7 +6,7 @@ description: "To send email Microsoft Windows PowerShell through SparkPost, ther This article helps you develop and test SMTP injection scripts under Microsoft Windows. Here we concentrate on the basic (but usable) Windows PowerShell built-in features for sending via SMTP. -If you need more options, check out cross-platform tools such as [swaks ("Swiss Army Knife for SMTP")](https://www.sparkpost.com/docs/tech-resources/smtp-injection-with-starttls-using-swaks/). +If you need more options, check out cross-platform tools such as [swaks ("Swiss Army Knife for SMTP")](https://docs.sparkpost.com/docs/tech-resources/smtp-injection-with-starttls-using-swaks/). ## Pre-requisites There are a few things you need: @@ -14,7 +14,7 @@ There are a few things you need: - [Create an API key](https://app.sparkpost.com/account/credentials) with the "Send via SMTP" permission. -- [Create and verify](https://app.sparkpost.com/account/sending-domains) the domain you want to use for sending. The setup process should take about 5-10 minutes if you have access to your DNS server. See [Verify Sending Domains](https://www.sparkpost.com/docs/getting-started/getting-started-sparkpost/#step-2-verifying-domain-ownership) for more information. +- [Create and verify](https://app.sparkpost.com/account/sending-domains) the domain you want to use for sending. The setup process should take about 5-10 minutes if you have access to your DNS server. See [Verify Sending Domains](https://docs.sparkpost.com/docs/getting-started/getting-started-sparkpost/#step-2-verify-domain) for more information. ## Create PowerShell script diff --git a/content/docs/integrations/ongage.md b/content/docs/integrations/ongage.md index 546cde294..9009c7c0d 100644 --- a/content/docs/integrations/ongage.md +++ b/content/docs/integrations/ongage.md @@ -6,9 +6,9 @@ description: "To connect your Spark Post account into the Ongage platform log in **To connect your SparkPost account into the Ongage platform, log into your SparkPost account and do the following:** -1. Set up your [desired Sending Domain](https://www.sparkpost.com/docs/getting-started/getting-started-sparkpost/#preparing-your-from-address) (the domain you want to send email from on Ongage, such as 'myawesomedomain.com') - make sure the domain is verified after you've set up your DKIM information with your DNS provider.  Your domain should be listed as 'ready to send' on the SparkPost Sending Domains page on your account.  It is best to send a test message through your new domain using the SparkPost template page to verify your domain is set up correctly. +1. Set up your [desired Sending Domain](https://docs.sparkpost.com/docs/getting-started/getting-started-sparkpost/#preparing-your-from-address) (the domain you want to send email from on Ongage, such as 'myawesomedomain.com') - make sure the domain is verified after you've set up your DKIM information with your DNS provider.  Your domain should be listed as 'ready to send' on the SparkPost Sending Domains page on your account.  It is best to send a test message through your new domain using the SparkPost template page to verify your domain is set up correctly. -1. Create a  [new SparkPost API Key](https://www.sparkpost.com/docs/getting-started/create-api-keys/) (do a 'Select All' to enable ALL the permissions) - save that API key somewhere safe as SparkPost only displays it once for security reasons. +1. Create a  [new SparkPost API Key](https://docs.sparkpost.com/docs/getting-started/create-api-keys/) (do a 'Select All' to enable ALL the permissions) - save that API key somewhere safe as SparkPost only displays it once for security reasons. 1. Log on to your Ongage account and add 'SparkPost' as a new ESP to your Ongage account using the OngageConnect Setup Wizard. @@ -31,4 +31,4 @@ description: "To connect your Spark Post account into the Ongage platform log in * Make sure your sending domain is set up properly in SparkPost and shows the status of 'Ready to Send' * Your 'From' and 'Reply' addresses that you set in the Ongage platform for your campaigns must exactly match the sending domain you set up on your SparkPost account * The API key you create on your SparkPost account must have ALL of the permissions checked -* If Ongage returns the error of 'Over Quota', send a [note to support](https://www.sparkpost.com/docs/) to request your SparkPost's account sending limits to be increased in order to allow higher message sending rates +* If Ongage returns the error of 'Over Quota', send a [note to support](https://docs.sparkpost.com/docs/) to request your SparkPost's account sending limits to be increased in order to allow higher message sending rates diff --git a/content/docs/integrations/patch-interspire-email-marketer.md b/content/docs/integrations/patch-interspire-email-marketer.md index d4abe533a..7fd0e7c91 100644 --- a/content/docs/integrations/patch-interspire-email-marketer.md +++ b/content/docs/integrations/patch-interspire-email-marketer.md @@ -16,14 +16,14 @@ NOTE: If you are interested in using something similar to Interspire but has a f ## What issue was experienced? -More than a handful of customers were reporting that during setup of SMTP server in Interspire to use Sparkpost SMTP servers they were receiving a ["Relaying Denied"](https://www.sparkpost.com/docs/faq/relaying-denied-error/) or other similar SMTP setup error messages while trying to do something as simple as send a test email using Interspire. +More than a handful of customers were reporting that during setup of SMTP server in Interspire to use Sparkpost SMTP servers they were receiving a ["Relaying Denied"](https://docs.sparkpost.com/docs/faq/relaying-denied-error/) or other similar SMTP setup error messages while trying to do something as simple as send a test email using Interspire. Our support team ran the gamut with our customers (thank you for being so very patient) trying to resolve this error. In each case, the customers had followed all the proper steps and configured everything as expected, but were still unable to get things to work: 1. Each customer had a [new Sparkpost.com account](https://app.sparkpost.com/join?_ga=1.238584512.1501089354.1437574465) -1. In each case, the customer had [created a Sending Domain in Sparkpost](https://www.sparkpost.com/docs/getting-started/getting-started-sparkpost/#preparing-your-from-address) properly -1. All of their DNS records were configured properly by [setting up DKIM to verify their sending domain for use with Sparkpost](https://www.sparkpost.com/docs/getting-started/getting-started-sparkpost/#step-2-verifying-domain-ownership) -1. We tested they had [created a valid Sparkpost API Key](https://www.sparkpost.com/docs/getting-started/create-api-keys/) with the **Send via SMTP** permission enabled +1. In each case, the customer had [created a Sending Domain in Sparkpost](https://docs.sparkpost.com/docs/getting-started/getting-started-sparkpost/#preparing-your-from-address) properly +1. All of their DNS records were configured properly by [setting up DKIM to verify their sending domain for use with Sparkpost](https://docs.sparkpost.com/docs/getting-started/getting-started-sparkpost/#step-2-verify-domain) +1. We tested they had [created a valid Sparkpost API Key](https://docs.sparkpost.com/docs/getting-started/create-api-keys/) with the **Send via SMTP** permission enabled 1. We worked with each customer ensuring they had set up SMTP for use Sparkpost Email Service Interspire is PHP software running on customer-deployed LAMP (Linux, Apache, MySQL, PHP) stacks, and after several failed attempts to get in contact with Interspire to debug the issue, we decided the best course of action was to purchase a license and find out for ourselves. diff --git a/content/docs/integrations/php-list.md b/content/docs/integrations/php-list.md index 47ed6e674..bb9e27fa5 100644 --- a/content/docs/integrations/php-list.md +++ b/content/docs/integrations/php-list.md @@ -6,8 +6,8 @@ description: "PHP List ships with PHP Mailer hence it’s very easy to configure [PHPList](http://phplist.org) ships with [PHPMailer](https://github.com/PHPMailer/PHPMailer) hence it’s very easy to configure it to send emails through SparkPost SMTP. Follow these instructions to configure PHPList: -* [Add a Sending Domain](https://www.sparkpost.com/docs/getting-started/getting-started-sparkpost/#preparing-your-from-address) to SparkPost -* [Create an API Key](https://www.sparkpost.com/docs/getting-started/create-api-keys/) with “Send via SMTP” permission +* [Add a Sending Domain](https://docs.sparkpost.com/docs/getting-started/getting-started-sparkpost/#preparing-your-from-address) to SparkPost +* [Create an API Key](https://docs.sparkpost.com/docs/getting-started/create-api-keys/) with “Send via SMTP” permission * In your PHPList installation, open *config/config.php* * Add the following configuration @@ -33,6 +33,6 @@ SparkPost does not send bounce report for emails it failed to send. So PHPList's However, "hard bounce" recipients or people who complain about your mail will be automatically added to your account's suppression list and SparkPost will suppress any attempt to deliver to them in the future. Suppression will be added for the same type of emails. For example, a transactional email received “hard bounce” will only be suppressed for transactional emails only. Non-transactional emails will still go through unless they are suppressed separately.   -You can track bounces, complaints and other types of non-delivery from your [SparkPost Account](https://app.sparkpost.com) and through its [webhooks](https://www.sparkpost.com/docs/user-guide/defining-webhooks/) and [message events](https://developers.sparkpost.com/api/message-events.html) APIs. If you'd like to update your PHPList database directly using bounces and complaints from SparkPost, a [3rd party webhook endpoint](https://gist.github.com/cgsmith/db8c8a2e3ad435abc6694a15f42e9bca) has been published which enables handling webhook events. +You can track bounces, complaints and other types of non-delivery from your [SparkPost Account](https://app.sparkpost.com) and through its [webhooks](https://developers.sparkpost.com/api/webhooks/) and [message events](https://developers.sparkpost.com/api/message-events.html) APIs. If you'd like to update your PHPList database directly using bounces and complaints from SparkPost, a [3rd party webhook endpoint](https://gist.github.com/cgsmith/db8c8a2e3ad435abc6694a15f42e9bca) has been published which enables handling webhook events. This tutorial is prepared and tested against PHPList v3.3.1 diff --git a/content/docs/integrations/phpbb.md b/content/docs/integrations/phpbb.md index bc44018e3..7c37b7daf 100644 --- a/content/docs/integrations/phpbb.md +++ b/content/docs/integrations/phpbb.md @@ -12,8 +12,8 @@ It is important to recognize that public forums are a common source of unwanted ## Preparation -* [Add a Sending Domain](https://www.sparkpost.com/docs/getting-started/getting-started-sparkpost/#preparing-your-from-address) to SparkPost -* [Create an API Key](https://www.sparkpost.com/docs/getting-started/create-api-keys/) with “Send via SMTP” permission +* [Add a Sending Domain](https://docs.sparkpost.com/docs/getting-started/getting-started-sparkpost/#preparing-your-from-address) to SparkPost +* [Create an API Key](https://docs.sparkpost.com/docs/getting-started/create-api-keys/) with “Send via SMTP” permission * Keep a note of your API key ## Configuring PHPBB diff --git a/content/docs/integrations/power-mta.md b/content/docs/integrations/power-mta.md index aced69a33..1c3a36449 100644 --- a/content/docs/integrations/power-mta.md +++ b/content/docs/integrations/power-mta.md @@ -10,7 +10,7 @@ Next, [create an API key](https://app.sparkpost.com/account/credentials) with th ![](media/power-mta/create-api-key.png) -Now [create and verify](https://app.sparkpost.com/account/sending-domains) the domain you want to use for sending. The setup process should take about 5-10 minutes if you have access to your DNS server. See [Verify Sending Domains](https://www.sparkpost.com/docs/getting-started/getting-started-sparkpost/#step-2-verifying-domain-ownership) for more information. +Now [create and verify](https://app.sparkpost.com/account/sending-domains) the domain you want to use for sending. The setup process should take about 5-10 minutes if you have access to your DNS server. See [Verify Sending Domains](https://docs.sparkpost.com/docs/getting-started/getting-started-sparkpost/#step-2-verify-domain) for more information. ## PowerMTA basic configuration diff --git a/content/docs/integrations/send-with-us.md b/content/docs/integrations/send-with-us.md index 591b432bc..a76de0652 100644 --- a/content/docs/integrations/send-with-us.md +++ b/content/docs/integrations/send-with-us.md @@ -7,9 +7,9 @@ description: "To connect your Spark Post account with Send With Us Transactional To connect your SparkPost account with SendWithUs Transactional Email Management you will need: 1. A valid SparkPost account -1. A verified [configured Sending Domain for use with SparkPost](https://www.sparkpost.com/docs/getting-started/getting-started-sparkpost/#preparing-your-from-address) +1. A verified [configured Sending Domain for use with SparkPost](https://docs.sparkpost.com/docs/getting-started/getting-started-sparkpost/#preparing-your-from-address) 1. Your SparkPost account password -1. A [valid SparkPost API Key](https://www.sparkpost.com/docs/getting-started/create-api-keys/) +1. A [valid SparkPost API Key](https://docs.sparkpost.com/docs/getting-started/create-api-keys/) 1. A valid [SendWithUs account](https://www.sendwithus.com/) Once you have the prerequisites completed and available, you can [connect your SendWithUs account with your SparkPost account](https://support.sendwithus.com/esp_accounts/connect_sparkpost/). diff --git a/content/docs/my-account-and-profile/account-suspension.md b/content/docs/my-account-and-profile/account-suspension.md index 1563a595e..e248f5de6 100644 --- a/content/docs/my-account-and-profile/account-suspension.md +++ b/content/docs/my-account-and-profile/account-suspension.md @@ -23,4 +23,4 @@ Billing suspensions will be issued if we fail to collect payment. If this occurs If you’re transitioning to SparkPost from another Email Service Provider, one possible cause for suspension is that your previous provider built a suppression list out of your bounces and FBL complaints, which prevents you from sending to addresses which can damage your reputation. When you switch over to us, that list doesn’t come with you automatically - you’ll need to either remove those suppressions from your current customer lists, or copy the suppression list and upload it to SparkPost. Otherwise, you’ll be sending to everyone who had bounced or complained over the years, which is likely to cause your account to be suspended. -You can learn about SparkPost [suppression lists](https://www.sparkpost.com/docs/user-guide/using-suppression-lists/) here. +You can learn about SparkPost [suppression lists](https://docs.sparkpost.com/docs/user-guide/using-suppression-lists/) here. diff --git a/content/docs/my-account-and-profile/scim.md b/content/docs/my-account-and-profile/scim.md index b4d5b4d87..9349c2dea 100644 --- a/content/docs/my-account-and-profile/scim.md +++ b/content/docs/my-account-and-profile/scim.md @@ -12,7 +12,7 @@ description: "Learn how to enable SCIM user provisioning through Okta for your S ## Requirements - You must be a premier or enterprise customer. See our [pricing page](https://www.sparkpost.com/pricing/) for more details. Test accounts can also evaluate SCIM Provisioning. -- SAML SSO must be configured and enabled for your account. See instructions [here](https://www.sparkpost.com/docs/my-account-and-profile/sso/). +- SAML SSO must be configured and enabled for your account. See instructions [here](https://docs.sparkpost.com/docs/my-account-and-profile/sso/). - Only admin users can generate SCIM access tokens. ## Configuration in SparkPost diff --git a/content/docs/reporting/analytics-report.md b/content/docs/reporting/analytics-report.md index 1a6b5a037..5a652b8e5 100644 --- a/content/docs/reporting/analytics-report.md +++ b/content/docs/reporting/analytics-report.md @@ -32,7 +32,7 @@ Precision is the time range that one data point represents. Precision can be set #### Metrics -We offer 40+ metrics that track the entire email lifecycle. Metrics are categorized by the stage of the email lifecycle: injection, delivery, deliverability\*, and engagement. See [Metric Definitions](https://www.sparkpost.com/docs/reporting/metrics-definitions/) for more information. +We offer 40+ metrics that track the entire email lifecycle. Metrics are categorized by the stage of the email lifecycle: injection, delivery, deliverability\*, and engagement. See [Metric Definitions](https://docs.sparkpost.com/docs/reporting/sp-metrics-definitions/) for more information. Each metric selected will be shown in time-series charts. Depending on the metrics selected, more data could become available. For example, selecting a bounce metric will reveal bounce classification information available through a tab, and selecting an engagement metric will reveal link engagement information. diff --git a/content/docs/reporting/engagement-recency.md b/content/docs/reporting/engagement-recency.md index a673dcc70..33b9d9f8c 100644 --- a/content/docs/reporting/engagement-recency.md +++ b/content/docs/reporting/engagement-recency.md @@ -36,7 +36,7 @@ The first chart shows the total emails you sent each day, broken up by each coho In the example above, you can see 28.2% of the email that was sent on December 14th were sent to recipients who engaged with this sender's emails in the past 14 days. -With this report, you can see if you are sending to too many disengaged recipients. If the Never Engaged and Not Recently Engaged cohorts make up a majority of the people you send to, you should examine your [list hygiene practices](https://www.sparkpost.com/docs/signals/list-hygiene/). +With this report, you can see if you are sending to too many disengaged recipients. If the Never Engaged and Not Recently Engaged cohorts make up a majority of the people you send to, you should examine your [list hygiene practices](https://docs.sparkpost.com/docs/signals/list-hygiene/). ### Engagement Rate, Unsubscribe Rate, Spam Complaint Rate diff --git a/content/docs/reporting/enterprise-metrics-definitions.md b/content/docs/reporting/enterprise-metrics-definitions.md index 835efa07c..3070aec10 100644 --- a/content/docs/reporting/enterprise-metrics-definitions.md +++ b/content/docs/reporting/enterprise-metrics-definitions.md @@ -4,7 +4,7 @@ title: "Enterprise Metrics Definitions" description: "Metrics definitions for Enterprise accounts" --- -This page defines Metrics for Enterprise accounts. For other accounts see [Metric Definitions](https://www.sparkpost.com/docs/reporting/metrics-definitions/). +This page defines Metrics for Enterprise accounts. For other accounts see [Metric Definitions](https://docs.sparkpost.com/docs/reporting/sp-metrics-definitions/). # API Metrics Enterprise Definitions diff --git a/content/docs/reporting/sp-metrics-definitions.md b/content/docs/reporting/sp-metrics-definitions.md index e22571359..728bbdc83 100644 --- a/content/docs/reporting/sp-metrics-definitions.md +++ b/content/docs/reporting/sp-metrics-definitions.md @@ -4,7 +4,7 @@ title: "Metrics Definitions" description: "Definitions for the metrics available to SparkPost accounts." --- -For Enterprise Metrics see [Enterprise Metric Definitions](https://www.sparkpost.com/docs/reporting/enterprise-metrics-definitions/). +For Enterprise Metrics see [Enterprise Metric Definitions](https://docs.sparkpost.com/docs/reporting/enterprise-metrics-definitions/). # API Metrics Definitions diff --git a/content/docs/reporting/spam-trap-monitoring.md b/content/docs/reporting/spam-trap-monitoring.md index c18e2d1c7..f48d51a25 100644 --- a/content/docs/reporting/spam-trap-monitoring.md +++ b/content/docs/reporting/spam-trap-monitoring.md @@ -38,7 +38,7 @@ The dashboard shows you the raw count or percent of spam traps you are sending t On each Spam trap details page, hover over each day to see the count and rate of total spam traps, as well as the stats broken down by each type of spam trap available. On the right hand side, you will find an assessment on how your performing for the day selected. Click on a different day to learn about your spam trap hits for that day. -If your spam trap hits exceed safe limits, Signals provides actionable advice identifying the most likely source of the problem and guides you to improve your [list quality](https://www.sparkpost.com/docs/signals/list-hygiene/) or [acquisition practices](https://www.sparkpost.com/docs/signals/subscriber-acquisition/). +If your spam trap hits exceed safe limits, Signals provides actionable advice identifying the most likely source of the problem and guides you to improve your [list quality](https://docs.sparkpost.com/docs/signals/list-hygiene/) or [acquisition practices](https://docs.sparkpost.com/docs/signals/subscriber-acquisition/). ![Spam Trap Monitoring details page](media/spam-traps/details.png) diff --git a/content/docs/signals/reputation-improvement.md b/content/docs/signals/reputation-improvement.md index 0df1cbeb9..2a0ef3a21 100644 --- a/content/docs/signals/reputation-improvement.md +++ b/content/docs/signals/reputation-improvement.md @@ -8,7 +8,7 @@ Mailbox providers now focus primarily on engagement and read rates when assignin Here are some steps for how to improve your reputation with a mailbox provider. -1. If you’re warming up a new IP/domain combo slow down sending, following our [warm up guide](https://www.sparkpost.com/docs/deliverability/ip-warm-up-overview/). +1. If you’re warming up a new IP/domain combo slow down sending, following our [warm up guide](https://docs.sparkpost.com/docs/deliverability/ip-warm-up-overview/). 1. Tighten up the [list hygiene process](/docs/signals/list-hygiene/) for this domain until issue is resolved. 1. Once you see improvement, you should wait another 14 days. After that you can start slowly increasing your engagement window to include more subscribers for the problem domain. If the blocks return you will need to back off a bit again and that will be your engagement window going forward. 1. If there is no improvement in 14 days, then mitigation may be required.
**NOTE:** Each mailbox provider has different processes to request mitigation to reset your reputation with them. SparkPost can guide you on what steps to take. Open a support case for guidance. diff --git a/content/docs/tech-resources/api-error-response-changes.md b/content/docs/tech-resources/api-error-response-changes.md index c1627c267..87d32af34 100644 --- a/content/docs/tech-resources/api-error-response-changes.md +++ b/content/docs/tech-resources/api-error-response-changes.md @@ -15,6 +15,6 @@ In an effort to standardize our API responses to provide a more consistent API e > `'%fieldName' must be a %expectedType%` * Require field errors will return the field name: > `'%fieldName%' is required` -3. Inline content syntax, generation, substitution, and email_rfc822 validation errors will no longer cause synchronous `4XX` errors. They will instead generate asynchronous events consumable via message events or webhooks. Check out [this article](https://www.sparkpost.com/docs/transmissions-breaking-changes) for information on these asynchronous changes. +3. Inline content syntax, generation, substitution, and email_rfc822 validation errors will no longer cause synchronous `4XX` errors. They will instead generate asynchronous events consumable via message events or webhooks. Check out [this article](https://docs.sparkpost.com/docs/tech-resources/transmissions-breaking-changes/) for information on these asynchronous changes. *The HTTP status code and the extended `code` field in responses will not be changed.* diff --git a/content/docs/tech-resources/changes-to-sparkpost-enrichment-period-open-click-events.md b/content/docs/tech-resources/changes-to-sparkpost-enrichment-period-open-click-events.md index aab238950..1eb10c09b 100644 --- a/content/docs/tech-resources/changes-to-sparkpost-enrichment-period-open-click-events.md +++ b/content/docs/tech-resources/changes-to-sparkpost-enrichment-period-open-click-events.md @@ -29,6 +29,6 @@ For engagement events on messages older than 60 days, customers may notice a dif For engagement events that are triggered from emails sent more than 60 days ago, the events will continue to be processed and be available to customers through Event Webhooks and the Events API.  We will provide the same number of events, but the “enriched” data fields will not be present for those events.  -Customers consuming Event Webhooks and the Events API should already have processes in place to handle a small percentage of older events that are logged without these “enriched” data fields so it is unlikely any code changes are needed, however, this is a good time to check. As always, please follow our [documented recommendations](https://www.sparkpost.com/docs/tech-resources/webhook-data-streams/) for processing webhooks which include avoiding any synchronous processing of the batches since this is the single most important step to ensure you do not miss any data.    +Customers consuming Event Webhooks and the Events API should already have processes in place to handle a small percentage of older events that are logged without these “enriched” data fields so it is unlikely any code changes are needed, however, this is a good time to check. As always, please follow our [documented recommendations](https://docs.sparkpost.com/docs/tech-resources/webhook-data-streams/) for processing webhooks which include avoiding any synchronous processing of the batches since this is the single most important step to ensure you do not miss any data.    For Enterprise and Premium customers, your TAM or CSM can share more details with you on the expected percentage of engagement events that may fall out of the 60-day window. diff --git a/content/docs/tech-resources/dkim-signing-by-ip-pool.md b/content/docs/tech-resources/dkim-signing-by-ip-pool.md index fecc4fef2..75d225984 100644 --- a/content/docs/tech-resources/dkim-signing-by-ip-pool.md +++ b/content/docs/tech-resources/dkim-signing-by-ip-pool.md @@ -29,7 +29,7 @@ DKIM signing domain (`d=`) = `mysendingdomain.com` _Note_: This is the result regardless of the IP pool being used. -More information on how to create sending domains via the API can be found [here](https://developers.sparkpost.com/api/sending-domains.html). The associated [knowledge base article](https://www.sparkpost.com/docs/getting-started/getting-started-sparkpost/#sending-domain-step-2-verifying-domain-ownership) on creating sending domains can be referenced for detailed instructions as well. +More information on how to create sending domains via the API can be found [here](https://developers.sparkpost.com/api/sending-domains.html). The associated [knowledge base article](https://docs.sparkpost.com/docs/getting-started/getting-started-sparkpost/#step-2-verify-domain) on creating sending domains can be referenced for detailed instructions as well.

diff --git a/content/docs/tech-resources/inbound-email-relay-webhook.md b/content/docs/tech-resources/inbound-email-relay-webhook.md index 7e381ae2d..392b0c457 100644 --- a/content/docs/tech-resources/inbound-email-relay-webhook.md +++ b/content/docs/tech-resources/inbound-email-relay-webhook.md @@ -98,7 +98,7 @@ If your webhook doesn’t seem to be working, you can try these steps:  * Check your consumer logs to see if there are any errors. * You can subscribe to events broadcast by Relay Webhooks using SparkPost’s [Event Webhooks](https://developers.sparkpost.com/api/webhooks.html). These will help you troubleshoot errors from your consumer endpoint. * Inbound emails (including attachments) are limited to 20MB.​ -* To extract attachments follow [these instructions](https://www.sparkpost.com/docs/tech-resources/extracting-email-attachments-from-relay-webhooks/). +* To extract attachments follow [these instructions](https://docs.sparkpost.com/docs/tech-resources/extracting-email-attachments-from-relay-webhooks/). * Speed up integration time by reviewing this [example app](https://github.com/SparkPost/sp-forwarding-service). Unlike webhooks, relay webhooks do not batch - individual messages are pushed to the relay webhook endpoints when received. diff --git a/content/docs/tech-resources/list-unsubscribe-functionality.md b/content/docs/tech-resources/list-unsubscribe-functionality.md index da024b8ba..1b73104ec 100644 --- a/content/docs/tech-resources/list-unsubscribe-functionality.md +++ b/content/docs/tech-resources/list-unsubscribe-functionality.md @@ -8,7 +8,7 @@ Every non-transactional message sent through your account will carry a list-unsu Select mail providers, namely Gmail and Hotmail, will recognize the presence of the header and present a 1-click option for recipients to act upon.  Inclusion of the header is an established email best practice meant to redirect intent of spam complainants (eg. hit the spam button). -Your account is configured to add these recipients to a suppression list.  Subsequent attempts to these recipients will fail. Find more on suppression lists [here](https://www.sparkpost.com/docs/user-guide/using-suppression-lists/).  +Your account is configured to add these recipients to a suppression list.  Subsequent attempts to these recipients will fail. Find more on suppression lists [here](https://docs.sparkpost.com/docs/user-guide/using-suppression-lists/).  Often, the receiving party (Gmail, Hotmail) won't show the list-unsubscribe header treatment until you've established sending reputation. @@ -16,6 +16,6 @@ If you operate a preference center, where your users can fine tune their email o Suggested logic: -* Register for the webhook event type: unsubscribe. Find more on registering for webhooks [here](https://www.sparkpost.com/docs/user-guide/defining-webhooks/). +* Register for the webhook event type: unsubscribe. Find more on registering for webhooks [here](https://developers.sparkpost.com/api/webhooks/). * Update your internal user preference database entry according to what message stream the customer acted on. * Update the specific suppression record accordingly. Find more on suppression list updates [here](https://developers.sparkpost.com/api/suppression-list.html#suppression-list-bulk-insert-update-put). diff --git a/content/docs/tech-resources/smtp-engagement-tracking.md b/content/docs/tech-resources/smtp-engagement-tracking.md index 6f8d777d6..deeed276a 100644 --- a/content/docs/tech-resources/smtp-engagement-tracking.md +++ b/content/docs/tech-resources/smtp-engagement-tracking.md @@ -16,10 +16,10 @@ If you have tracking disabled, then you won’t see “open” and “click” e What this is actually controlling is whether SparkPost will ‘wrap’ the links in your messages with a Tracking Domain URL, so that your recipients’ browsers will redirect - briefly - via our servers before the final destination.  This allows us to count your recipients’ clicks. -Since 2nd December 2015, the system default is “disabled” for messages injected via SMTP – see [Change Log](https://www.sparkpost.com/docs/tech-resources/change-log-sparkpost/) +Since 2nd December 2015, the system default is “disabled” for messages injected via SMTP. ## Related Articles You can also control event tracking from your upstream message source, via our “SMTP API”, as [described here](https://developers.sparkpost.com/api/smtp-api). -You can register [Custom Tracking Domains](https://www.sparkpost.com/docs/tech-resources/enabling-multiple-custom-tracking-domains/) for better message alignment that can improve deliverability. +You can register [Custom Tracking Domains](https://docs.sparkpost.com/docs/tech-resources/enabling-multiple-custom-tracking-domains/) for better message alignment that can improve deliverability. diff --git a/content/docs/tech-resources/sparkpost-event-definitions.md b/content/docs/tech-resources/sparkpost-event-definitions.md index d26643f9b..2766465e3 100644 --- a/content/docs/tech-resources/sparkpost-event-definitions.md +++ b/content/docs/tech-resources/sparkpost-event-definitions.md @@ -29,7 +29,7 @@ The possible events are: | generation_failure | Email generation failed due to a technical reason. | | generation_rejection | Email generation failed due to a policy reason. | | list_unsubscribe | Recipient unsubscribed using a mailbox provider's list unsubscribe feature. | -| link_unsubscribe | User clicked a [tagged unsubscribe link](https://www.sparkpost.com/docs/user-guide/setting-up-unsubscribe-links/). | +| link_unsubscribe | User clicked a [tagged unsubscribe link](https://docs.sparkpost.com/docs/user-guide/setting-up-unsubscribe-links/). | | relay_injection | SparkPost received an inbound email. | | relay_rejection | SparkPost rejected an inbound email. | | relay_delivery | Delivered inbound email to your endpoint. | diff --git a/content/docs/tech-resources/transmissions-breaking-changes.md b/content/docs/tech-resources/transmissions-breaking-changes.md index 07c081098..5edf03249 100644 --- a/content/docs/tech-resources/transmissions-breaking-changes.md +++ b/content/docs/tech-resources/transmissions-breaking-changes.md @@ -30,7 +30,7 @@ SparkPost will no longer perform synchronous template validation and message gen This means that the Transmissions API will no longer return an HTTP response of `4xx` if there is a problem with the template syntax or substitution data. -Instead, the API will return a `200` response, and then a subsequent “Generation Failure” [webhook event](https://www.sparkpost.com/docs/tech-resources/webhook-event-reference/) that will provide details on the failure. These events will be available via [webhooks](https://www.sparkpost.com/docs/tech-resources/webhook-event-reference/), the [Message Events API](https://www.sparkpost.com/docs/tech-resources/webhook-event-reference/), and as [Message Events in the SparkPost app](https://app.sparkpost.com/reports/message-events)([EU](https://app.eu.sparkpost.com/reports/message-events)). This behavior for single recipient transmissions will be the same as the current behavior for multi-recipient transmissions. +Instead, the API will return a `200` response, and then a subsequent “Generation Failure” [webhook event](https://docs.sparkpost.com/docs/tech-resources/webhook-event-reference/) that will provide details on the failure. These events will be available via [webhooks](https://docs.sparkpost.com/docs/tech-resources/webhook-event-reference/), the [Message Events API](https://docs.sparkpost.com/docs/tech-resources/webhook-event-reference/), and as [Message Events in the SparkPost app](https://app.sparkpost.com/reports/message-events)([EU](https://app.eu.sparkpost.com/reports/message-events)). This behavior for single recipient transmissions will be the same as the current behavior for multi-recipient transmissions. ## Making Inline Content Syntax Validation Asynchronous @@ -38,7 +38,7 @@ The second change to the Transmissions API endpoint is that inline content synta For both single and multi-recipient transmissions, the syntax validation will be done asynchronously, with an HTTP response of `4xx` no longer returned for syntax error on inline content. -Instead, the API will return a `200` response, and then a subsequent "Generation Failure" [webhook event](https://www.sparkpost.com/docs/tech-resources/webhook-event-reference/) that will provide details on the failure. It is recommended that developers utilize the [preview endpoint of the Templates API](https://developers.sparkpost.com/api/templates/#templates-post-preview-a-template) before injecting with an inline content. +Instead, the API will return a `200` response, and then a subsequent "Generation Failure" [webhook event](https://docs.sparkpost.com/docs/tech-resources/webhook-event-reference/) that will provide details on the failure. It is recommended that developers utilize the [preview endpoint of the Templates API](https://developers.sparkpost.com/api/templates/#templates-post-preview-a-template) before injecting with an inline content. ## Removal of Description Field diff --git a/content/docs/tech-resources/using-proxy-https-tracking-domain.md b/content/docs/tech-resources/using-proxy-https-tracking-domain.md index 85eddde66..fd695b332 100644 --- a/content/docs/tech-resources/using-proxy-https-tracking-domain.md +++ b/content/docs/tech-resources/using-proxy-https-tracking-domain.md @@ -354,10 +354,10 @@ Both proxies set the `X-Forwarded-For` header, which enables SparkPost to report ## Related Articles -* Now that you have **https** tracking domains, you are ready to begin using SparkPost engagement tracking with your [AMP emails](https://www.sparkpost.com/docs/user-guide/amp-for-email/). +* Now that you have **https** tracking domains, you are ready to begin using SparkPost engagement tracking with your [AMP emails](https://docs.sparkpost.com/docs/user-guide/amp-for-email/). -* You can use a [CDN with SparkPost tracking domains](https://www.sparkpost.com/docs/tech-resources/enabling-multiple-custom-tracking-domains/) as an alternative to a reverse proxy. +* You can use a [CDN with SparkPost tracking domains](https://docs.sparkpost.com/docs/tech-resources/enabling-multiple-custom-tracking-domains/) as an alternative to a reverse proxy. -* Set up engagement tracking with the [SMTP API](https://www.sparkpost.com/docs/tech-resources/smtp-engagement-tracking/) for your SMTP traffic to SparkPost. +* Set up engagement tracking with the [SMTP API](https://docs.sparkpost.com/docs/tech-resources/smtp-engagement-tracking/) for your SMTP traffic to SparkPost. * If you have a mobile app, and want to enable it to open when a recipient clicks an email link, see [this article](./deep-links-self-serve). diff --git a/content/docs/tech-resources/webhook-data-streams.md b/content/docs/tech-resources/webhook-data-streams.md index 5095743d6..15d23424c 100644 --- a/content/docs/tech-resources/webhook-data-streams.md +++ b/content/docs/tech-resources/webhook-data-streams.md @@ -4,7 +4,7 @@ title: "Best Practices for Managing Webhook Data Streams" description: "Spark Post and Spark Post Enterprise provide data streams of raw event data via webhooks There are several points of consideration to take into account in order to ensure you correctly receive the event data This article details how our webhooks function so you can successfully set up your endpoint..." --- -SparkPost provides data streams of raw event data via webhooks. There are several points of consideration to take into account in order to ensure you correctly receive the event data. This article details how our webhooks function so you can successfully set up your endpoint to consume streamed event data. For more details on authentication and security see [Webhook Authentication]( https://www.sparkpost.com/docs/tech-resources/webhook-authentication/) +SparkPost provides data streams of raw event data via webhooks. There are several points of consideration to take into account in order to ensure you correctly receive the event data. This article details how our webhooks function so you can successfully set up your endpoint to consume streamed event data. For more details on authentication and security see [Webhook Authentication]( https://docs.sparkpost.com/docs/tech-resources/webhook-authentication/) # Webhook Batch Sizes and Projections @@ -26,7 +26,7 @@ Generally speaking, four events are recorded for each message: injection, delive * `event_id` - a data element within each set of event data that uniquely identifies a given event. The format of this field is not consistent across events -- for some event types this may be a large integer, while for others it may be a UUID. * It is recommended that you do not set a maximum batch size your endpoint will accept, or that if you do, that it is not excessively small, in order to prevent truncation of data on any attempted batch. * From time to time as SparkPost releases new features additional fields or event types will be added to webhooks payloads. Webhooks consumers should be flexible enough to accept additive changes to the payload. Changes to the structure of the payload, removal of fields or events, and changes to datatypes are considered breaking changes and SparkPost will provide reasonable notice to customers. -* Utilize separate processing & storage for different [Event Types](https://www.sparkpost.com/docs/tech-resources/webhook-event-reference/#event-types). Message structure & data types are consistent within a given Event Type, but not between Event Types. +* Utilize separate processing & storage for different [Event Types](https://docs.sparkpost.com/docs/tech-resources/webhook-event-reference/#event-types). Message structure & data types are consistent within a given Event Type, but not between Event Types. # Monitoring Webhooks diff --git a/content/docs/tech-resources/webhook-event-reference.md b/content/docs/tech-resources/webhook-event-reference.md index 2f376e458..9cfeaa99f 100644 --- a/content/docs/tech-resources/webhook-event-reference.md +++ b/content/docs/tech-resources/webhook-event-reference.md @@ -8,7 +8,7 @@ This is a reference guide for developers who are consuming SparkPost Webhook Eve There are several types of events that SparkPost is able to send which provide you data concerning your email's life cycle. They are organized by Event Types which contain various Events with each Event being composed of Event Properties. You can use the [SparkPost API Webhook Resource](https://developers.sparkpost.com/api/webhooks.html) to discover sample payloads of selected events, and the sample values and event descriptions. To list descriptions of the events, event types, and event fields that could be included in a Webhooks post to your target URL, run the following call in a REST API client like Postman: https://api.sparkpost.com/api/v1/webhooks/events/documentation -Additional resources: [Webhook Authentication](https://www.sparkpost.com/docs/tech-resources/webhook-authentication/) and [Best Pratices for managing webhook streams](https://www.sparkpost.com/docs/tech-resources/webhook-data-streams/) +Additional resources: [Webhook Authentication](https://docs.sparkpost.com/docs/tech-resources/webhook-authentication/) and [Best Pratices for managing webhook streams](https://docs.sparkpost.com/docs/tech-resources/webhook-data-streams/) ## Event Types diff --git a/content/docs/user-guide/automated-ip-warmup.md b/content/docs/user-guide/automated-ip-warmup.md index 2a68b550d..7f5e44643 100644 --- a/content/docs/user-guide/automated-ip-warmup.md +++ b/content/docs/user-guide/automated-ip-warmup.md @@ -4,7 +4,7 @@ title: "Getting Started with our Automated IP Warmup Feature" description: "A guide to knowing when Automated IP Warmup is right for you and how to use it" --- -IP warming is the process of methodically adding campaign volume week-over-week to a new IP Address to establish a positive sending reputation with Internet Services Providers (ISPs). Our Automated IP Warmup feature provides a stage-based approach to limit sending volumes while you're building a reputation for your new IP. For a great introduction into the theory behind IP Warm-up as well as an expanded article on best practices, visit the [original IP Warm-up Knowledge Article](https://www.sparkpost.com/docs/deliverability/ip-warm-up-overview/). +IP warming is the process of methodically adding campaign volume week-over-week to a new IP Address to establish a positive sending reputation with Internet Services Providers (ISPs). Our Automated IP Warmup feature provides a stage-based approach to limit sending volumes while you're building a reputation for your new IP. For a great introduction into the theory behind IP Warm-up as well as an expanded article on best practices, visit the [original IP Warm-up Knowledge Article](https://docs.sparkpost.com/docs/deliverability/ip-warm-up-overview/). ## Why Automate the Warm-up Process? @@ -27,7 +27,7 @@ Maybe you’re in the process of changing your sending architecture or you’re Consistent sending throughout each day is the best way to ensure your warm-up process maintains high deliverability and you build a positive sending reputation. If your sending is sporadic (one or two campaigns per week) or your subscriber base is relatively unengaged, you may not be able to warm up your new IP automatically as effectively as you could with an alternative strategy. We recommend sending to clean lists of engaged subscribers to build trust and establish a positive sending relationship on new IPs. ### If Automating isn’t Right, What is? -If you fall into the fourth category mentioned above or have other specific needs and concerns that aren’t covered here - that’s ok! Our incredibly dedicated Customer Success Team or your personal Technical Account Manager can advise on the best course of action. Do some initial homework by visiting the [original IP Warm-up Knowledge Article](https://www.sparkpost.com/docs/deliverability/ip-warm-up-overview/) and get in touch! +If you fall into the fourth category mentioned above or have other specific needs and concerns that aren’t covered here - that’s ok! Our incredibly dedicated Customer Success Team or your personal Technical Account Manager can advise on the best course of action. Do some initial homework by visiting the [original IP Warm-up Knowledge Article](https://docs.sparkpost.com/docs/deliverability/ip-warm-up-overview/) and get in touch! ## Nuts and Bolts diff --git a/content/docs/user-guide/consolidating-accounts.md b/content/docs/user-guide/consolidating-accounts.md index 2e999ce65..cada342e5 100644 --- a/content/docs/user-guide/consolidating-accounts.md +++ b/content/docs/user-guide/consolidating-accounts.md @@ -4,7 +4,7 @@ title: "Consolidating/Migrating SparkPost Accounts" description: "Guidance for consolidating SparkPost accounts. It is important to also become familiar with the subaccounts feature before beginning consolidation. " --- -As you start utilizing subaccounts it will be essential to become familiar with management of this feature. Please read through this article before determining how you would like to set up your account: [Subaccounts in SparkPost](https://www.sparkpost.com/docs/user-guide/subaccounts/). +As you start utilizing subaccounts it will be essential to become familiar with management of this feature. Please read through this article before determining how you would like to set up your account: [Subaccounts in SparkPost](https://docs.sparkpost.com/docs/user-guide/subaccounts/). Determine what account you want to be your remaining account or create a new account if applicable. diff --git a/content/docs/user-guide/data-privacy.md b/content/docs/user-guide/data-privacy.md index d53dd6d8c..536b6cc53 100644 --- a/content/docs/user-guide/data-privacy.md +++ b/content/docs/user-guide/data-privacy.md @@ -27,7 +27,7 @@ If there are any issues reading your uploaded file, you will receive an error me Note: You may only select one compliance type per CSV file. If you have requests of different compliance types, please submit a separate request for each compliance type. ### Subaccount Requests -If applicable, select if this request applies to the primary account, the primary and all subaccounts, or one specific subaccount. Learn more about subaccounts [here](https://www.sparkpost.com/docs/user-guide/subaccounts/). +If applicable, select if this request applies to the primary account, the primary and all subaccounts, or one specific subaccount. Learn more about subaccounts [here](https://docs.sparkpost.com/docs/user-guide/subaccounts/). ## Submitting Requests via API @@ -35,7 +35,7 @@ The [Data Privacy API](https://developers.sparkpost.com/api/data-privacy/) lets Just like in the app, you can submit a single recipient or up to 1000 recipients per API call. -Requests are applied only to the primary account by default. To apply the request to the primary and all subaccounts, set `include_subaccounts=true`. To apply the request to a specific subaccount, include the subaccount in the `x-msys-subaccount` header. Learn more about subaccounts [here](https://www.sparkpost.com/docs/user-guide/subaccounts/). +Requests are applied only to the primary account by default. To apply the request to the primary and all subaccounts, set `include_subaccounts=true`. To apply the request to a specific subaccount, include the subaccount in the `x-msys-subaccount` header. Learn more about subaccounts [here](https://docs.sparkpost.com/docs/user-guide/subaccounts/). ### Subaccount API Usage diff --git a/content/docs/user-guide/mailgun-migration-guide.md b/content/docs/user-guide/mailgun-migration-guide.md index 1269b926d..bf2e08677 100644 --- a/content/docs/user-guide/mailgun-migration-guide.md +++ b/content/docs/user-guide/mailgun-migration-guide.md @@ -83,12 +83,12 @@ We'll start with a comparison of terms: Where to get help ----------------- -If you're in a hurry, don't have time to read this guide and just want the details, check out our [DevHub](https://developers.sparkpost.com/), [API docs](https://developers.sparkpost.com/api) and [pricing](https://www.sparkpost.com/pricing/). If you have general questions, [take a walk through our support articles](https://www.sparkpost.com/docs/). If you need help, you can open a support ticket [directly from the SparkPost app](https://www.sparkpost.com/docs/faq/submit-a-ticket/). +If you're in a hurry, don't have time to read this guide and just want the details, check out our [DevHub](https://developers.sparkpost.com/), [API docs](https://developers.sparkpost.com/api) and [pricing](https://www.sparkpost.com/pricing/). If you have general questions, [take a walk through our support articles](https://docs.sparkpost.com/docs/). If you need help, you can open a support ticket [directly from the SparkPost app](https://docs.sparkpost.com/docs/faq/submit-a-ticket/). Signing Up ---------- -Sign up for your SparkPost account [here.](https://app.sparkpost.com/join) You can choose the default US-hosted service, or select the EU-hosted service ([more info here](https://www.sparkpost.com/docs/faq/sparkpost-eu-faq/)). On sign-up, your free developer account has a monthly email allowance. You can open both account types if you wish. +Sign up for your SparkPost account [here.](https://app.sparkpost.com/join) You can choose the default US-hosted service, or select the EU-hosted service ([more info here](https://docs.sparkpost.com/docs/faq/sparkpost-eu-faq/)). On sign-up, your free developer account has a monthly email allowance. You can open both account types if you wish. If you need separate environments or to send on behalf of multiple clients, you can use subaccounts under a single primary account. This is explained in more detail below. @@ -114,7 +114,7 @@ Setting Up A Sending Domain To begin sending mail from your own domain, you must tell SparkPost about it by adding a sending domain on your account. SparkPost will then check that you own it. You create and manage this from the [Domains](https://app.sparkpost.com/domains/list/sending) menu. -Mailgun's "Custom Domains" group sending, tracking and receiving domain configuration together. SparkPost also provides [sending](https://developers.sparkpost.com/api/sending-domains.html), [bounce](https://developers.sparkpost.com/api/sending-domains/#header-using-a-sending-domain-as-a-bounce-domain), [tracking](https://developers.sparkpost.com/api/tracking-domains.html), and [inbound](https://developers.sparkpost.com/api/inbound-domains.html) domains; our [Getting Started guide](https://www.sparkpost.com/docs/getting-started/getting-started-sparkpost/) walks you through setting these up via the app. +Mailgun's "Custom Domains" group sending, tracking and receiving domain configuration together. SparkPost also provides [sending](https://developers.sparkpost.com/api/sending-domains.html), [bounce](https://developers.sparkpost.com/api/sending-domains/#header-using-a-sending-domain-as-a-bounce-domain), [tracking](https://developers.sparkpost.com/api/tracking-domains.html), and [inbound](https://developers.sparkpost.com/api/inbound-domains.html) domains; our [Getting Started guide](https://docs.sparkpost.com/docs/getting-started/getting-started-sparkpost/) walks you through setting these up via the app. To verify a sending domain, you publish a DKIM DNS record. If this is not possible, you can opt to receive an email to the abuse@ or postmaster@ account for your domain. @@ -146,7 +146,7 @@ As a side note, while many Mailgun API endpoints are scoped by sending domain, S You can call the SparkPost API directly using tools like [Postman](https://developers.sparkpost.com/api/#header-postman), [cURL](https://curl.haxx.se/) or [HTTPie](https://httpie.org/) but it's more common to make HTTPS requests from your own programming language -- see our [developer hub](https://developers.sparkpost.com/) for example code and libraries. If you're not writing your own code, see our [Marketing Campaign partner solutions](https://www.sparkpost.com/partner-category/marketing-campaigns/). -Whichever tools you choose, you will need to [issue yourself an API key](https://www.sparkpost.com/docs/getting-started/create-api-keys/) to start using the SparkPost API. Unlike Mailgun's credential per domain policy, you can create as many API keys as you need, each with their own privileges so you can compartmentalize access rights across your software stack and organization. +Whichever tools you choose, you will need to [issue yourself an API key](https://docs.sparkpost.com/docs/getting-started/create-api-keys/) to start using the SparkPost API. Unlike Mailgun's credential per domain policy, you can create as many API keys as you need, each with their own privileges so you can compartmentalize access rights across your software stack and organization. Sending Mail Over SMTP ---------------------- @@ -169,18 +169,18 @@ It's worth remembering that SparkPost wraps substitution variables with double b To explore further, you can create, edit and preview your templates (using test substitution data) [within SparkPost](https://app.sparkpost.com/templates) and also using the [templates API endpoint](https://developers.sparkpost.com/api/templates.html). -As well as the usual HTML content, [SparkPost templates](https://www.sparkpost.com/docs/getting-started/creating-template/) can have optional plain-text and [AMP HTML](https://www.sparkpost.com/docs/user-guide/amp-for-email/) parts. The substitution variables work on these parts too. +As well as the usual HTML content, [SparkPost templates](https://docs.sparkpost.com/docs/getting-started/creating-template/) can have optional plain-text and [AMP HTML](https://docs.sparkpost.com/docs/user-guide/amp-for-email/) parts. The substitution variables work on these parts too. SparkPost has template [snippets](https://www.sparkpost.com/blog/get-started-snippets-sparkpost-email-templates/). Snippets are modular, reusable content that, once created, can be imported into the HTML, Text, or AMP part of any email template using a `render_snippet` macro call. -SparkPost also supports [A/B testing](https://www.sparkpost.com/docs/tech-resources/a-b-testing-sparkpost/), a common method of comparing templates to see which one performs better. SparkPost provides the means to create automated A/B tests and view completed results. +SparkPost also supports [A/B testing](https://docs.sparkpost.com/docs/tech-resources/a-b-testing-sparkpost/), a common method of comparing templates to see which one performs better. SparkPost provides the means to create automated A/B tests and view completed results. Tracking Your Email Activity ---------------------------- SparkPost offers two levels of tracking information. The Analytics Report is a richer and more complete form of Mailgun stats -- rolled up, time windowed summaries of your mailing and recipient activity. over 40 metrics are [viewable as customizable time series graphs](https://app.sparkpost.com/signals/analytics) and also available programmatically using our [metrics API endpoint](https://developers.sparkpost.com/api/metrics.html). -The second level of tracking information exposes fine-grained individual activity. This individual activity is also available three ways -- through our [Events Search](https://www.sparkpost.com/docs/reporting/message-events/) interface,  by making use of the [events API endpoint](https://developers.sparkpost.com/api/events/), or by creating a [webhook](https://www.sparkpost.com/docs/tech-resources/webhook-data-streams/) which pushes event data to your own systems. +The second level of tracking information exposes fine-grained individual activity. This individual activity is also available three ways -- through our [Events Search](https://docs.sparkpost.com/docs/reporting/message-events/) interface,  by making use of the [events API endpoint](https://developers.sparkpost.com/api/events/), or by creating a [webhook](https://docs.sparkpost.com/docs/tech-resources/webhook-data-streams/) which pushes event data to your own systems. ### Analytics Report @@ -190,11 +190,11 @@ All SparkPost aggregate metrics are stored on your account for 6 months. #### Message Events and Webhooks -SparkPost's events API endpoint provides similar functionality (and then some!) to Mailgun's logs/events capability: [Events Search](https://www.sparkpost.com/docs/reporting/message-events/) provides a view of the last 10 days of events on your account. Those events are available in pull fashion by querying the [events API endpoint](https://developers.sparkpost.com/api/events/) directly and in push fashion if you use [webhooks](https://www.sparkpost.com/docs/tech-resources/webhook-data-streams/). +SparkPost's events API endpoint provides similar functionality (and then some!) to Mailgun's logs/events capability: [Events Search](https://docs.sparkpost.com/docs/reporting/message-events/) provides a view of the last 10 days of events on your account. Those events are available in pull fashion by querying the [events API endpoint](https://developers.sparkpost.com/api/events/) directly and in push fashion if you use [webhooks](https://docs.sparkpost.com/docs/tech-resources/webhook-data-streams/). SparkPost retains events for ten days; Mailgun starter accounts retain events for five days. -Mailgun supports a single webhook per domain and event type. On SparkPost, you may create multiple webhooks, each filtered to receive one or more types of events. You can also create webhooks to [push the events relating to individual subaccounts](https://www.sparkpost.com/docs/user-guide/subaccounts/#summary-of-subaccount-features). +Mailgun supports a single webhook per domain and event type. On SparkPost, you may create multiple webhooks, each filtered to receive one or more types of events. You can also create webhooks to [push the events relating to individual subaccounts](https://docs.sparkpost.com/docs/user-guide/subaccounts/#summary-of-subaccount-features). Here's a mapping of each Mailgun event to its SparkPost message event equivalent(s): @@ -269,7 +269,7 @@ SparkPost's relay webhooks process and forward email addressed to an HTTP endpoi Subaccounts ----------- -On SparkPost [plans](https://www.sparkpost.com/docs/faq/difference-between-starter-and-premier/) above "starter" level, you can create [subaccounts](https://www.sparkpost.com/docs/user-guide/subaccounts/) to support separate business units, mail streams or individual customers. Each subaccount has its own suppression list, and can have its own API keys, sending domains, templates etc. You can run reports / analytics by subaccount, get raw message event data by subaccount, get aggregated statistics, create webhooks per subaccount and so on. +On SparkPost [plans](https://docs.sparkpost.com/docs/faq/difference-between-starter-and-premier/) above "starter" level, you can create [subaccounts](https://docs.sparkpost.com/docs/user-guide/subaccounts/) to support separate business units, mail streams or individual customers. Each subaccount has its own suppression list, and can have its own API keys, sending domains, templates etc. You can run reports / analytics by subaccount, get raw message event data by subaccount, get aggregated statistics, create webhooks per subaccount and so on. In addition you can enable your subaccount users to have permission to inject messages for delivery via their individual subaccount, and to use [the API](https://developers.sparkpost.com/api/subaccounts/) to access subaccount-specific resources. @@ -281,7 +281,7 @@ Mailgun and SparkPost both enable you to create users with specific roles. The S Alerts ------ -Your Mailgun account alerts you by email when approaching your account sending limit. In SparkPost, you can [set up alerts](https://www.sparkpost.com/docs/user-guide/alerts/) to track the following metrics: +Your Mailgun account alerts you by email when approaching your account sending limit. In SparkPost, you can [set up alerts](https://docs.sparkpost.com/docs/user-guide/alerts/) to track the following metrics: - Block Bounce Rate - Hard Bounce Rate @@ -294,20 +294,20 @@ Alerts can send notifications via email, Slack, and webhooks. Dedicated IPs, IP Pools, and auto-warmup ---------------------------------------- -SparkPost enables you to deliver email via IP addresses dedicated to your account (or subaccount). Similar to Mailgun, addresses are managed via [IP Pools](https://www.sparkpost.com/docs/deliverability/managing-dedicated-ip-pools/). Addresses can be set to [automatically warm up](https://support.sparkpost.com/docs/user-guide/automated-ip-warmup) over time, which is helpful in building a clean sender reputation as you migrate messages across. +SparkPost enables you to deliver email via IP addresses dedicated to your account (or subaccount). Similar to Mailgun, addresses are managed via [IP Pools](https://docs.sparkpost.com/docs/deliverability/managing-dedicated-ip-pools/). Addresses can be set to [automatically warm up](https://support.sparkpost.com/docs/user-guide/automated-ip-warmup) over time, which is helpful in building a clean sender reputation as you migrate messages across. Health Score and other SparkPost Analytics features --------------------------------------------------- These advanced analytics features are available in your SparkPost account, and don't have a direct equivalent in the Mailgun dashboard. -- [Health Score](https://www.sparkpost.com/docs/reporting/health-score/) -- [Spam Trap Monitoring](https://www.sparkpost.com/docs/reporting/spam-trap-monitoring/) -- [Engagement Recency](https://www.sparkpost.com/docs/reporting/engagement-recency/) +- [Health Score](https://docs.sparkpost.com/docs/reporting/health-score/) +- [Spam Trap Monitoring](https://docs.sparkpost.com/docs/reporting/spam-trap-monitoring/) +- [Engagement Recency](https://docs.sparkpost.com/docs/reporting/engagement-recency/) Mailgun paid accounts provide "inbox placement" monitoring that you can schedule at additional cost, using seed tests. What next? ---------- -If you have an issue with your SparkPost account, you can [check out our support articles here](https://www.sparkpost.com/docs/) and [contact our Support team directly from your app dashboard](https://app.sparkpost.com/dashboard). +If you have an issue with your SparkPost account, you can [check out our support articles here](https://docs.sparkpost.com/docs/) and [contact our Support team directly from your app dashboard](https://app.sparkpost.com/dashboard). diff --git a/content/docs/user-guide/managing-users.md b/content/docs/user-guide/managing-users.md index da6e9ce53..003020866 100644 --- a/content/docs/user-guide/managing-users.md +++ b/content/docs/user-guide/managing-users.md @@ -52,7 +52,7 @@ Admin users can add new users to their account from the [Manage Users](https://a ### Subaccount Users *Limited access. Reach out to our support team or your Technical Account Manager to have this option enabled for your account. -Reporting Users can optionally be assigned to a specific subaccount. Check the "assign to subaccount" box when creating the user and then select the subaccount. Learn more about subaccounts and subaccount users [here](https://www.sparkpost.com/docs/user-guide/subaccounts/). +Reporting Users can optionally be assigned to a specific subaccount. Check the "assign to subaccount" box when creating the user and then select the subaccount. Learn more about subaccounts and subaccount users [here](https://docs.sparkpost.com/docs/user-guide/subaccounts/). Only Reporting and Developer Users support subaccount assignment at this time. diff --git a/content/docs/user-guide/mandrill-migration-guide.md b/content/docs/user-guide/mandrill-migration-guide.md index 2d10dcb02..a5b3402c6 100644 --- a/content/docs/user-guide/mandrill-migration-guide.md +++ b/content/docs/user-guide/mandrill-migration-guide.md @@ -7,7 +7,7 @@ description: "This Mandrill Migration Guide explains how quick and painless migr Mandrill Migration Guide Overview --------------------------------- -Mailchimp recommends SparkPost as a Mandrill alternative for developers looking for a transactional email provider. To support your move, we've created this Mandrill migration guide to streamline the process. We also recommend reading through our full [getting started guide](https://www.sparkpost.com/docs/getting-started/getting-started-sparkpost/) for an overview of SparkPost. +Mailchimp recommends SparkPost as a Mandrill alternative for developers looking for a transactional email provider. To support your move, we've created this Mandrill migration guide to streamline the process. We also recommend reading through our full [getting started guide](https://docs.sparkpost.com/docs/getting-started/getting-started-sparkpost/) for an overview of SparkPost. Terminology ----------- @@ -209,12 +209,12 @@ Migrating your Traffic *For high volume and non-transactional senders, please take note of this section.* -We recommend signing up for a SparkPost account and segmenting your traffic between SparkPost and Mandrill, to build your reputation with our service and warm up your dedicated IPs properly. Be sure to follow our best practices guides for [warming up your IPs](https://www.sparkpost.com/docs/deliverability/ip-warm-up-overview/) and [optimizing deliverability and get the best inbox placement rates](https://www.sparkpost.com/docs/deliverability/optimizing-deliverability-and-inbox-placement/). +We recommend signing up for a SparkPost account and segmenting your traffic between SparkPost and Mandrill, to build your reputation with our service and warm up your dedicated IPs properly. Be sure to follow our best practices guides for [warming up your IPs](https://docs.sparkpost.com/docs/deliverability/ip-warm-up-overview/) and [optimizing deliverability and get the best inbox placement rates](https://docs.sparkpost.com/docs/deliverability/optimizing-deliverability-and-inbox-placement/). Subaccounts ----------- -If you send on behalf of your customers, it's a good idea to use [SparkPost's subaccounts](https://www.sparkpost.com/docs/user-guide/subaccounts/) to segment their data. Similar to Mandrill, you are able to see analytics for each subaccount in your [reports](https://app.sparkpost.com/reports/summary). SparkPost also allows you to assign most account assets, like Sending Domains or Templates, to an individual subaccount. Once assigned, only that subaccount and the master account can access the resource. +If you send on behalf of your customers, it's a good idea to use [SparkPost's subaccounts](https://docs.sparkpost.com/docs/user-guide/subaccounts/) to segment their data. Similar to Mandrill, you are able to see analytics for each subaccount in your [reports](https://app.sparkpost.com/reports/summary). SparkPost also allows you to assign most account assets, like Sending Domains or Templates, to an individual subaccount. Once assigned, only that subaccount and the master account can access the resource. Inbound Email ------------- diff --git a/content/docs/user-guide/setting-up-unsubscribe-links.md b/content/docs/user-guide/setting-up-unsubscribe-links.md index 191617d4b..98899ca57 100644 --- a/content/docs/user-guide/setting-up-unsubscribe-links.md +++ b/content/docs/user-guide/setting-up-unsubscribe-links.md @@ -43,7 +43,7 @@ You have one or more recipients who have opted-in to your one-to-many emails (su Our [Suppression List API](https://www.sparkpost.com/api#/reference/suppression-list "Suppression List API Documentation") provides an easy way for developers to manage the list of people who SHOULD NOT be delivered email during non-transactional transmissions. SparkPost's **List Unsubscribe** and **Link Unsubscribe** event types added to the Message Category Webhook (see [Webhooks API](https://www.sparkpost.com/api#/reference/webhooks) for more information, in particular the Event-To-Field Mapping for Message Events Category) make it easy for your mobile/web application to monitor for these events and take the appropriate action for that recipient. -[Create a webhook](https://www.sparkpost.com/docs/user-guide/defining-webhooks/) or update an existing webhook to include the **List Unsubscribe** (and/or) the **Link Unsubscribe** event types in the Message Category. +[Create a webhook](https://developers.sparkpost.com/api/webhooks/) or update an existing webhook to include the **List Unsubscribe** (and/or) the **Link Unsubscribe** event types in the Message Category. #### In the SparkPost UI diff --git a/content/docs/user-guide/subaccounts.md b/content/docs/user-guide/subaccounts.md index c939a07ea..3ec7125e2 100644 --- a/content/docs/user-guide/subaccounts.md +++ b/content/docs/user-guide/subaccounts.md @@ -52,7 +52,7 @@ In addition, your subaccount users will be able to: * View and manage the suppression list via the API​ * Create their own webhook via the API * Create, edit, view, and use templates via the API -* Access [Signals Analytics](https://www.sparkpost.com/docs/reporting/signals-analytics/) via the UI +* Access [Signals Analytics](https://docs.sparkpost.com/docs/reporting/signals-analytics/) via the UI ### Use Cases @@ -107,7 +107,7 @@ After creating a subaccount, the primary account has the option of assigning a d Primary account Admin and Developer users can create subaccounts. Primary account Templates and Reporting users can see information about all subaccounts. Reporting Users can optionally be assigned to a specific subaccount instead of the primary account - more information on this below in "Subaccount UI Access". -Learn more about user roles [here](https://www.sparkpost.com/docs/user-guide/managing-users/). +Learn more about user roles [here](https://docs.sparkpost.com/docs/user-guide/managing-users/). **Subaccount Statuses** diff --git a/content/docs/user-guide/unconfigured-sending-domain.md b/content/docs/user-guide/unconfigured-sending-domain.md index e26fe0808..e98ff1e11 100644 --- a/content/docs/user-guide/unconfigured-sending-domain.md +++ b/content/docs/user-guide/unconfigured-sending-domain.md @@ -20,4 +20,4 @@ Changing the from address to sales@autos.example.com will correct the error, bec ## Additional Information -Refer to [this Knowledge Base Article](https://www.sparkpost.com/docs/getting-started/getting-started-sparkpost/#preparing-your-from-address) to learn more about how to configure Sending Domains. +Refer to [this Knowledge Base Article](https://docs.sparkpost.com/docs/getting-started/getting-started-sparkpost/#preparing-your-from-address) to learn more about how to configure Sending Domains. diff --git a/content/docs/user-guide/using-suppression-lists.md b/content/docs/user-guide/using-suppression-lists.md index ab040b3ec..cf379ca56 100644 --- a/content/docs/user-guide/using-suppression-lists.md +++ b/content/docs/user-guide/using-suppression-lists.md @@ -21,7 +21,7 @@ When a message is injected either using SMTP or HTTP, SparkPost will check the e * **Suppression List API:** Using the REST API, you can insert/update a single entry or multiple entries in your suppression list, check the suppression status for a specific recipient, or remove a recipient from your suppression list. For more information, see the [SparkPost Suppression List API](https://www.sparkpost.com/api#/reference/suppression-list "SparkPost Suppression List API"). * **Suppression list UI:** Using the User Interface (UI), select Recipients and then Suppressions. -**If you want to learn how your application can be notified of list pruning events, read our [using unsubscribe events](https://www.sparkpost.com/docs/user-guide/using-unsubscribe-reports/) guide.** +**If you want to learn how your application can be notified of list pruning events, read our [using unsubscribe events](https://docs.sparkpost.com/docs/user-guide/using-unsubscribe-reports/) guide.** ## Managing Suppression Lists with the SparkPost API diff --git a/content/docs/user-guide/using-unsubscribe-reports.md b/content/docs/user-guide/using-unsubscribe-reports.md index e7b9385f9..d76ce27c3 100644 --- a/content/docs/user-guide/using-unsubscribe-reports.md +++ b/content/docs/user-guide/using-unsubscribe-reports.md @@ -37,7 +37,7 @@ You have one or more recipients who have opted-in to your one-to-many emails (su Our new [Suppression List API](https://www.sparkpost.com/api#/reference/suppression-list "Suppression List API Documentation") provides an easy way for developers to manage the list of people who SHOULD NOT be delivered email during non-transactional transmissions. SparkPost's new **List Unsubscribe** and **Link Unsubscribe** Events Types added to the Message Category Webhook (see [Webhooks API](https://www.sparkpost.com/api#/reference/webhooks) for more information, in particular the Event-To-Field Mapping for Message Events Category) make it easy for your mobile/web application to monitor for these events and take the appropriate action for that recipient. -* [Create a webhook](https://www.sparkpost.com/docs/user-guide/defining-webhooks/) or update an existing webhook to include the **List Unsubscribe** (and/or) the **Link Unsubscribe** event types in the Message Category. +* [Create a webhook](https://developers.sparkpost.com/api/webhooks/) or update an existing webhook to include the **List Unsubscribe** (and/or) the **Link Unsubscribe** event types in the Message Category. * **In the SparkPost UI** ![Include unsubscribe events](media/using-unsubscribe-reports/include-unsubscribe-events.png) * **Creating a Webhook using the API:**