Skip to content

Commit 4fc61bd

Browse files
authored
Merge branch 'master' into userlist-updates
2 parents 75b701c + d5ce248 commit 4fc61bd

File tree

20 files changed

+415
-69
lines changed

20 files changed

+415
-69
lines changed

devguide.md

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,20 @@ Occasionally, a destination will change names. This shouldn't be too difficult t
3333
2. The programmatic content appears (cmodes, settings, previous names)
3434
3. The redirect from the old page URL works.
3535

36+
## All about the Catalog script
37+
38+
You run the Catalog update script by running `make catalog` from the docs repo. You, a person who is going to run the script, must first save a Segment token to an `.env` file locally, which is `gitignored` so we don’t check it in to gihub accidentally.
39+
40+
Note: Old ConfigAPI tokens are not compatible with Public API. You'll need a new one if you want to use Public API.
41+
42+
The script takes your token, inserts it into a request header, then contacts the API, downloads all the available metadata for destinations and sources. It then writes them into a series of yml files that the docs build can consume. (You can find these in `/src/_data/catalog/`)
43+
44+
Note: We don’t currently (Feb '21) do this for warehouses (storage dests) because they were originally lumped in with destinations, and didn’t change often enough to be worth writing a script for. We just have a static `warehouses.yml` file instead. With the switch to Public API from ConfigAPI, we should change this.
45+
46+
The script also “calculates” the values for the `connection-modes` table for destinations, but that’s a huge other headache.
47+
48+
It also does some slugification and destination-name normalization, since our handling of dots and dashes hasn't been consistent over time. Finally, it checks to see if there’s a folder for each destination. If it finds a new one, the script makes a folder with a “stub” markdown file for that destination, and then adds a line for it to an "incompleteDocs.txt" file. (It doesn't check to see if it's already listed, just appends to the file.)
49+
3650

3751
## Developer information
3852

src/_data/catalog/destination_categories.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# AUTOGENERATED FROM PLATFORM API. DO NOT EDIT
2-
# destination categories last updated 2021-02-05
2+
# destination categories last updated 2021-02-12
33
items:
44
- display_name: Email Marketing
55
slug: email-marketing

src/_data/catalog/destinations.yml

Lines changed: 78 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# AUTOGENERATED FROM PLATFORM API. DO NOT EDIT
2-
# destination data last updated 2021-02-05
2+
# destination data last updated 2021-02-16
33
items:
44
- display_name: ActiveCampaign
55
slug: activecampaign
@@ -3073,7 +3073,7 @@ items:
30733073
deprecated: false
30743074
required: true
30753075
string_validators:
3076-
regexp: ''
3076+
regexp: '^https://'
30773077
description: >-
30783078
The URL to call the Function. It must follow the ` https://{function app
30793079
name}.azurewebsites.net/api/{function name}?code={function key}` pattern.
@@ -4041,6 +4041,64 @@ items:
40414041
server: false
40424042
previous_names:
40434043
- Bugsnag
4044+
- display_name: Button
4045+
slug: button
4046+
name: catalog/destinations/button
4047+
description: >-
4048+
Button is the mobile commerce technology company that is powering a
4049+
commerce-driven internet. Our platform powers mobile business growth for the
4050+
world’s largest brands and publishers, while offering consumers more
4051+
seamless, enjoyable experiences.
4052+
hidden: false
4053+
url: connections/destinations/catalog/button
4054+
status: PUBLIC_BETA
4055+
logo:
4056+
url: >-
4057+
https://public-segment-devcenter-production.s3.amazonaws.com/a1228b66-79ad-4946-916d-06ca9a4b69c6.svg
4058+
mark:
4059+
url: >-
4060+
https://public-segment-devcenter-production.s3.amazonaws.com/6e23247c-eaa6-4538-a9c1-355b52851d64.svg
4061+
categories:
4062+
- Deep Linking
4063+
- Attribution
4064+
- Performance Monitoring
4065+
- Personalization
4066+
components: []
4067+
platforms:
4068+
browser: true
4069+
server: true
4070+
mobile: true
4071+
browserUnbundlingSupported: false
4072+
browserUnbundlingPublic: false
4073+
methods:
4074+
alias: false
4075+
group: false
4076+
identify: false
4077+
page_view: false
4078+
track: true
4079+
settings:
4080+
- name: apiKey
4081+
display_name: API Key
4082+
type: STRING
4083+
deprecated: false
4084+
required: true
4085+
string_validators:
4086+
regexp: '^.{8,}$'
4087+
description: >-
4088+
Please contact your Button representative for instructions on finding your
4089+
Segment-specific API key.
4090+
settings: []
4091+
connection_modes:
4092+
device:
4093+
web: false
4094+
mobile: false
4095+
server: false
4096+
cloud:
4097+
web: false
4098+
mobile: false
4099+
server: false
4100+
previous_names:
4101+
- Button
40444102
- display_name: ByteGain
40454103
slug: bytegain
40464104
name: catalog/destinations/bytegain
@@ -4104,7 +4162,7 @@ items:
41044162
- display_name: Calixa
41054163
slug: calixa
41064164
name: catalog/destinations/calixa
4107-
description: Manage all of your customers in one place
4165+
description: The Customer Platform for Startups. Manage all your customers in one place.
41084166
hidden: false
41094167
url: connections/destinations/catalog/calixa
41104168
status: PUBLIC
@@ -4115,9 +4173,10 @@ items:
41154173
url: >-
41164174
https://public-segment-devcenter-production.s3.amazonaws.com/67ec1978-b686-4ce1-b395-ee00a3f6d271.svg
41174175
categories:
4176+
- Analytics
41184177
- CRM
41194178
- Raw Data
4120-
- Analytics
4179+
- Customer Success
41214180
components:
41224181
- type: CLOUD
41234182
platforms:
@@ -4842,7 +4901,8 @@ items:
48424901
select_options:
48434902
- ' '
48444903
- in.
4845-
- sg.
4904+
- sg1.
4905+
- us1.
48464906
description: '**Server Only**: Your dedicated Clevertap region.'
48474907
settings: []
48484908
connection_modes:
@@ -10087,7 +10147,7 @@ items:
1008710147
deprecated: false
1008810148
required: true
1008910149
string_validators:
10090-
regexp: ''
10150+
regexp: '^https://'
1009110151
description: The URL to call the Google Cloud Function.
1009210152
settings: []
1009310153
connection_modes:
@@ -13173,7 +13233,7 @@ items:
1317313233
url: connections/destinations/catalog/mailjet
1317413234
status: PUBLIC
1317513235
logo:
13176-
url: 'https://cdn.filepicker.io/api/file/rfFhI7d4T16tGWkVNgvK'
13236+
url: 'https://cdn.filepicker.io/api/file/bAJdmpGTKeodtKeKaysD'
1317713237
mark:
1317813238
url: 'https://cdn.filepicker.io/api/file/uMFWhqRT0aEYRRTenXRp'
1317913239
categories:
@@ -13440,6 +13500,17 @@ items:
1344013500
required: false
1344113501
description: Map your Segment properties to the Marketo Activity Fields
1344213502
settings:
13503+
- name: segmentProperty
13504+
display_name: Segment Property Name
13505+
type: STRING
13506+
deprecated: false
13507+
required: true
13508+
string_validators:
13509+
regexp: ''
13510+
description: >-
13511+
Enter the Segment Property Name. This is case sensitive so make sure
13512+
the name matches exactly how you are passing it in your .track() call.
13513+
settings: []
1344313514
- name: marketoAttributeName
1344413515
display_name: Marketo Field Name
1344513516
type: STRING
@@ -13471,17 +13542,6 @@ items:
1347113542
required: false
1347213543
description: Mark this property as the Primary field in Marketo.
1347313544
settings: []
13474-
- name: segmentProperty
13475-
display_name: Segment Property Name
13476-
type: STRING
13477-
deprecated: false
13478-
required: true
13479-
string_validators:
13480-
regexp: ''
13481-
description: >-
13482-
Enter the Segment Property Name. This is case sensitive so make sure
13483-
the name matches exactly how you are passing it in your .track() call.
13484-
settings: []
1348513545
- name: event
1348613546
display_name: Segment Event Name
1348713547
type: STRING

src/_data/catalog/source_categories.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# AUTOGENERATED FROM PLATFORM API. DO NOT EDIT
2-
# source cateogries last updated 2021-02-05
2+
# source cateogries last updated 2021-02-12
33
items:
44
- display_name: Server
55
slug: server

src/_data/catalog/sources.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# AUTOGENERATED FROM PLATFORM API. DO NOT EDIT
2-
# sources last updated 2021-02-05
2+
# sources last updated 2021-02-12
33
items:
44
- display_name: .NET
55
slug: net

src/_includes/content/functions/runtime.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,6 @@ The following dependencies are installed in the function environment by default.
1616
- [`@google-cloud/pubsub v2.6.0`](https://www.npmjs.com/package/@google-cloud/pubsub) exposed as `google.cloud.pubsub`
1717
- [`@google-cloud/storage v5.3.0`](https://www.npmjs.com/package/@google-cloud/storage) exposed as `google.cloud.storage`
1818
- [`jsonwebtoken v8.5.1`](https://www.npmjs.com/package/jsonwebtoken) exposed as `jsonwebtoken`
19-
- [`kafka-node v5.0.0`](https://www.npmjs.com/package/kafka-node) exposed as `kafka-node`
2019
- [`lodash v4.17.15`](https://www.npmjs.com/package/lodash) exposed as `_`
2120
- [`node-fetch v2.6.0`](https://www.npmjs.com/package/node-fetch) exposed as `fetch`
2221
- [`oauth v0.9.15`](https://www.npmjs.com/package/oauth) exposed as `OAuth`
Lines changed: 117 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,117 @@
1+
---
2+
title: Button Destination
3+
rewrite: true
4+
---
5+
[Button](https://usebutton.com?utm_source=segmentio&utm_medium=docs&utm_campaign=partners) is the mobile commerce technology company that is powering a commerce-driven internet. The Button platform powers mobile business growth for the world’s largest brands and publishers, while offering consumers more seamless, enjoyable experiences.
6+
7+
This destination is maintained by Button. For any issues with the destination, [contact the Button Support team](mailto:[email protected]).
8+
9+
## Getting Started
10+
11+
{% include content/connection-modes.md %}
12+
13+
> info ""
14+
> Contact your Button representative for your Button API Key.
15+
16+
1. From the Destinations catalog page in the Segment App, click **Add Destination**.
17+
2. Search for "Button" in the Destinations Catalog, and select the Button destination.
18+
3. Choose which Source should send data to the Button destination.
19+
4. Enter the "API Key" in the Button destination settings in Segment.
20+
21+
## Track
22+
If you aren't familiar with the Segment Spec, take a look at the [Track method documentation](https://segment.com/docs/connections/spec/track/) to learn about what it does. An example call would look like:
23+
24+
```js
25+
analytics.track('Deep Link Opened')
26+
```
27+
28+
Segment sends Track calls to Button as a `track` event.
29+
30+
### Deep links
31+
To track deep links from your app or website, use Segment's [Deep Link Opened](https://segment.com/docs/connections/spec/mobile/#deep-link-opened) and [Application Opened](https://segment.com/docs/connections/spec/mobile/#application-opened) events.
32+
33+
Make sure you pass the referring URL. An example would look like:
34+
35+
```js
36+
analytics.track('Application Opened' { someProperty: true }, {
37+
userId: '1234567890',
38+
properties: {
39+
url: 'brand-app://?btn_ref=srctok-XXX'
40+
}
41+
...
42+
})
43+
```
44+
45+
> success ""
46+
> **Tip!** Make sure you record any different names for `Deep Link Opened` Track events across your sources so you know which are sent where.
47+
48+
### Installs
49+
To track mobile app installs, use Segment's [Application Installed](https://segment.com/docs/connections/spec/mobile/#application-installed) event.
50+
51+
Capture the referring URL when possible. An example would look like:
52+
53+
```js
54+
analytics.track('Application Installed' { someProperty: true }, {
55+
userId: '1234567890',
56+
properties: {
57+
url: 'https://brand-homepage.com?btn_ref=srctok-XXX'
58+
},
59+
context {
60+
app: { version: '4.15.0' },
61+
device: {
62+
adTrackingEnabled: false,
63+
advertisingId: 'XXXXXXXX-YYYY-ZZZZ-1111-222222222222'
64+
},
65+
ip: '127.0.0.1',
66+
locale: 'en-US',
67+
os: {
68+
name: 'iOS',
69+
version: '14.2'
70+
}
71+
}
72+
...
73+
})
74+
```
75+
> success ""
76+
> **Tip!** Make sure you record any different names for `Application Installed` Track events across your sources so you know which are sent where.
77+
78+
### Orders
79+
To track `order` events from your app or website, use Segment's [Order Completed](https://segment.com/docs/connections/spec/ecommerce/v2/#order-completed) event.
80+
81+
An example call would look like:
82+
83+
```js
84+
analytics.track('Order Completed' { someProperty: true }, {
85+
userId: '1234567890',
86+
properties: {
87+
subtotal: 7500,
88+
products: [
89+
{
90+
sku: 'sku-123',
91+
description: 'T-Shirt',
92+
size: 'L',
93+
price: 2500,
94+
quantity: 1,
95+
category: 'Clothing',
96+
},
97+
{
98+
sku: 'sku-456',
99+
description: 'Joggers',
100+
size: 'M',
101+
price: 5000,
102+
quantity: 1,
103+
category: 'Clothing',
104+
}
105+
]
106+
}
107+
})
108+
```
109+
> success ""
110+
> **Tip!** Make sure you record any different names for `Order Completed` Track events across your sources so you know which are sent where.
111+
112+
## Setting up a Destination Filter
113+
114+
If you are a Business Tier customer, you can set up a [Destination Filter](https://segment.com/docs/connections/destinations/destination-filters/) to only send your `Deep link` and `Order` events to Button.
115+
116+
117+
Read [Button's Destination Filter documentation](https://developer.usebutton.com/docs/segment-integration-guide) to learn more.

src/connections/destinations/catalog/facebook-conversions-api/index.md

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,4 +2,7 @@
22
title: 'Facebook Conversions API Destination'
33
hidden: true
44
beta: true
5-
---
5+
---
6+
7+
<!-- LR: 2/16/2021: Redirects to /docs/connections/destinations/catalog/facebook-pixel-server-side
8+
because while this destination's display name has changed, the slug is still the old name and the docs build needs to match on slug to find it in `destinations.yml` -->

0 commit comments

Comments
 (0)