Skip to content

Commit 5ab4dfd

Browse files
authored
DOC-27 Updates to Billing and MTU sections (#1180)
* checkin * first pass, waiting for some amplitude answers * improve about cloud sources wording, explain obj vs event * restructure the last section oof * check in while waiting for more details * add Protocols section * further cleanup * copy edit * copy edit (thx kiara!) * brooks edits * typo, remove confusing wording about when we count * last round of copy edits, more iteration later
1 parent fac7270 commit 5ab4dfd

File tree

10 files changed

+156
-73
lines changed

10 files changed

+156
-73
lines changed

src/connections/destinations/catalog/repeater/index.md

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -6,22 +6,20 @@ This destination is maintained by Segment.
66

77
## Getting Started
88

9-
The Repeater destination forwards events from a source back into another source, as though that event occured in the second source.
9+
The Repeater destination forwards events from a source back into another source, as though that event occurred in the second source.
1010

11-
Events are not cached in the Repeater, so it only handles real-time events. You can specify multiple sources as Repeater destinatons.
12-
13-
*Segment does not double count MTUs for Repeater events.*
11+
Events are not cached in the Repeater, so it only handles real-time events. You can specify multiple sources as Repeater destinations.
1412

1513
## Configuration
1614

17-
Add the Repeater as a destination for the source that you would like to replicate events from.
15+
Add the Repeater as a destination for the source that you want to replicate events from.
1816

19-
Find the source that you would like events to flow to, and copy the write key from that source.
17+
Find the source that you want events to flow to, and copy the `writeKey` from that source.
2018

21-
Go back to the Repeater destination and add this write key to the write keys list for Repeater.
19+
Go back to the Repeater destination's settings, and add this `writeKey` to the write keys list for Repeater.
2220

2321
You can do this for as many sources as you need.
2422

2523
![](images/write-key-settings.png)
2624

27-
Repeater will replay all events it gets to the sources you specified using the write key(s) you specified.
25+
Repeater sends all events it receives to the sources you specified, identified by the write key(s) you added.

src/connections/sources/about-cloud-sources.md

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -28,9 +28,11 @@ Sources are functionally comprised of either one or both of the following compon
2828

2929
### Sync frequency
3030

31-
When you enable a source and grant us access by pasting an API key or authenticating with OAuth, Segment starts a scheduled job on your behalf which makes requests to the downstream tool, normalizes and transforms the data, and forwards the data to the Segment API. We make an effort to use as few API calls as possible, opting to fetch only data that has changed since the previous sync where possible. This can be an intensive process, especially on first sync, so we have lots of affordances in place for retries and to respect rate limits imposed by the partner.
31+
You enable a cloud source from the Segment web app, and grant Segment access by pasting an API key or authenticating with OAuth. Segment then starts a scheduled job on your behalf which makes requests to the downstream tool, normalizes and transforms the data, and forwards that data to the Segment API.
3232

33-
### API Call Usage and Collection Selection
33+
Cloud sources attempt to use as few API calls as possible, and (where possible) only fetch data that changed since the last sync. The syncs might take a long time (especially on the first sync), so the cloud source syncs have robust retry and rate limiting logic.
34+
35+
### API call use and collection selection
3436

3537
We make an effort to be respectful of your API call allotments and limits. For example, in the case of Salesforce, we issue only one query per collection per run, using the absolute minimum number of API calls possible (typically about 350/day).
3638

@@ -83,7 +85,7 @@ Sometimes, when the sync job fails due to an unhandled error or is mysteriously
8385

8486
In general, we've focused on pulling all of the collections directly related to the customer experience. We do not automatically pull all collections available from a partner API, since many of them aren't relevant to the customer journey. You can see a list of the collections we pull in the docs [for each cloud source](/docs/connections/sources/catalog/#cloud-apps). Each collection reflects a table in your database.
8587

86-
[Let us know](https://segment.com/help/contact) if you need additional data collected or to change the schema to do the analysis you want. We'd love to know what analysis you're trying to run, what additional data you need, and we'll share with the product team to evaluate.
88+
[Contact Segment Product Support](https://segment.com/help/contact) if you need additional data collected, or to change the schema to do the analysis you want. We'd love to know what analysis you're trying to run, what additional data you need, and we'll share with the product team to evaluate.
8789

8890
### What questions can you answer with data from cloud, web, and mobile sources combined in a single warehouse?
8991

src/connections/spec/identify.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4,18 +4,18 @@ related:
44
- "/docs/connections/sources/catalog/"
55
---
66

7-
`identify` lets you tie a user to their actions and record traits about them. It includes a unique User ID and any optional traits you know about them like their email, name, etc.
7+
The Segment Identify call lets you tie a user to their actions and record traits about them. It includes a unique User ID and any optional traits you know about the user, like their email, name, etc.
88

99
{% include components/media-icon.html href="https://university.segment.com/introduction-to-segment/299968?reg=1&referrer=docs" icon="media/icon-academy.svg" title="Segment University: The Identify Method" content="Check out our high-level overview of the Identify method in Segment University. (Must be logged in to access.)" %}
1010

11-
Our recommendation for when and how often you should call `identify` is as follows:
11+
Segment recommends that you make an Identify call:
1212

13-
- After a user registers
13+
- After a user first registers
1414
- After a user logs in
15-
- When a user updates their info (eg changes or adds a new address)
15+
- When a user updates their info (for example, they change or add a new address)
1616
- Upon loading any pages that are accessible by a logged in user (optional)
1717

18-
The first three examples are pretty self-explanatory, but many might ask: why you would call identify on every page load if we're storing the userId in the cookie/local storage?
18+
The first three examples are pretty self-explanatory, but many might ask: why you would call identify on every page load if we're storing the `userId` in the cookie/local storage?
1919

2020
Let's imagine this scenario:
2121

@@ -174,7 +174,7 @@ Reserved traits we've standardized:
174174
<tr>
175175
<td>`createdAt`</td>
176176
<td>Date</td>
177-
<td>Date the user's account was first created. We recommend [ISO-8601](http://en.wikipedia.org/wiki/ISO_8601) date strings.</td>
177+
<td>Date the user's account was first created. Segment recommends using [ISO-8601](http://en.wikipedia.org/wiki/ISO_8601) date strings.</td>
178178
</tr>
179179
<tr>
180180
<td>`description`</td>

src/guides/duplicate-data.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,13 @@
22
title: How does Segment handle duplicate data?
33
---
44

5-
Segment has a special de-duplication service that sits just behind the api.segment.com endpoint, and attempts to drop duplicate data. However, that de-duplication api has to hold the entire set of events in memory in order to know whether or not it has seen that event already. Segment will store 24 hours worth of event `message_id`'s. Effectively, this means Segment will de-duplicate data that appears inside a 24 hour sliding window.
5+
Segment has a special de-duplication service that sits just behind the `api.segment.com` endpoint, and attempts to drop duplicate data. However, that de-duplication api has to hold the entire set of events in memory in order to know whether or not it has seen that event already. Segment stores 24 hours worth of event `message_id`s. This means Segment can de-duplicate any data that appears within a 24 hour rolling window.
66

7-
An important point of stress about the above is that Segment de-duplicates on the event's `message_id`, not on the contents of an event payload. So unless you're generating `message_id`s for each event on your end, and trying duplicate data within a 24 hour period, Segment has no built-in mechanism to de-duplicate data.
7+
An important point remember is that Segment de-duplicates on the event's `message_id`, _not_ on the contents of an event payload. So if you aren't generating `message_id`s for each event, or are trying to deduplicate data over a longer period than 24 hours, Segment does not have a built-in way to de-duplicate data.
88

9-
Since the api layer is de-duping during this window, duplicate events that are further than 24 hours apart from one another will need to be de-duped in the Warehouse. Segment also dedupes messages going into a Warehouse based on the `message_id`, which is the `id` column in a Segment Warehouse. Note that in these cases you will see duplications in end tools as there is no additional layer prior to sending the event to downstream tools.
9+
Since the api layer is de-duping during this window, duplicate events that are further than 24 hours apart from one another must be de-duped in the Warehouse. Segment also dedupes messages going into a Warehouse based on the `message_id`, which is the `id` column in a Segment Warehouse. Note that in these cases you will see duplications in end tools as there is no additional layer prior to sending the event to downstream tools.
1010

11-
Keep in mind that Segment's libraries all generate `message_id`s for you for each event payload, with the exception of our HTTP API, which assigns each event a unique `message_id` when the message is ingested, although you could of course override and manually assign a `message_id` if you wanted.
11+
Keep in mind that Segment's libraries all generate `message_id`s for you for each event payload, with the exception of the Segment HTTP API, which assigns each event a unique `message_id` when the message is ingested. You can override these default generated IDs and manually assign a `message_id` if necessary.
1212

1313
### What identifiers can the merged profile be queried/updated with?
1414

src/guides/usage-and-billing/billing.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4,22 +4,22 @@ title: Billing and Account FAQs
44

55
## What is a billing cycle?
66

7-
On our monthly Team plan, your billing cycle will start the day after your 14-day trial ends. You will be billed on this day each month going forward
7+
On the Segment monthly Team plan, your billing cycle starts the day after your 14-day trial ends. You are billed on this day for each month while you are on this plan
88

9-
On our annual Team plan, you will be billed at the end of your 14-day trail for the sum of the entire year of service at a certain number of MTU. All overages for annual plans are billed at the end of your monthly billing cycle.
9+
On the Segment annual Team plan, you are billed at the end of your 14-day trail for the amount for an entire year of service including a specific number of MTUs. Annual plan subscribers are billed for MTU overages at the end of each monthly cycle.
1010

1111

1212
## How do I change my plan?
1313

14-
If you already have a Segment workspace, you can change which plan your workspace is on by navigating to the "Usage & Billing" menu, then finding the "Plans" page. You can select your new plan on the "Plans" page.
14+
If you already have a Segment workspace, you can change which plan your workspace is on by navigating to the "Usage & Billing" menu, then finding the "Plans" page. You can select a different plan from the "Plans" page.
1515

16-
_If you cancel or downgrade your workspace within your 2-week trial period, you will not incur any charges._
16+
_If you cancel or downgrade your plan during the two-week trial period, you do not incur any charges._
1717

18-
### What if I cancel my workspace before the end of the month?
18+
### What if I cancel my paid plan before the end of the month?
1919

2020
#### Cancellation on the Monthly Team Plan
2121

22-
If you cancel your workspace or downgrade to a free account before the end of your official billing period on the monthly team plan, you will receive a final bill consisting of a prorated amount for the $120 base + a charge for any MTUs you have used over the allotted 10,000 at the rates posted on our [pricing page](https://segment.com/pricing).
22+
If you cancel your plan or downgrade to a free account before the end of your official billing period on the monthly team plan, you will receive a final bill for the prorated amount for the $120 base + a charge for any MTUs you have used over the allotted 10,000 at the rates posted on our [pricing page](https://segment.com/pricing).
2323

2424
#### Cancellation on the Annual Team Plan
2525

Binary file not shown.
Binary file not shown.

0 commit comments

Comments
 (0)