API概述
這篇參考文章涵蓋了API基礎知識,包括常用術語和REST API密鑰、權限的概述,以及如何保證它們的安全。
API定義
下麵列出了您可能在Braze REST API文檔中看到的術語概述。
端點
Braze為我們的儀表板和REST端點管理許多不同的實例。當您的帳戶被提供時,您將登錄到以下url之一。根據提供給您的實例,使用正確的REST端點。如果你不確定,打開一個支持的票或使用下表將您使用的儀表板的URL匹配到正確的REST端點。
實例 | URL | REST端點 | SDK端點 |
---|---|---|---|
US-01 | https://dashboard-01.braze.com |
https://rest.iad-01.braze.com |
sdk.iad - 01. braze.com |
US-02 | https://dashboard-02.braze.com |
https://rest.iad-02.braze.com |
sdk.iad - 02. braze.com |
US-03 | https://dashboard-03.braze.com |
https://rest.iad-03.braze.com |
sdk.iad - 03. braze.com |
US-04 | https://dashboard-04.braze.com |
https://rest.iad-04.braze.com |
sdk.iad - 04. braze.com |
US-05 | https://dashboard-05.braze.com |
https://rest.iad-05.braze.com |
sdk.iad - 05. braze.com |
US-06 | https://dashboard-06.braze.com |
https://rest.iad-06.braze.com |
sdk.iad - 06. braze.com |
US-08 | https://dashboard-08.braze.com |
https://rest.iad-08.braze.com |
sdk.iad - 08. braze.com |
EU-01 | https://dashboard-01.braze.eu |
https://rest.fra-01.braze.eu |
sdk.fra braze.eu——01. |
EU-02 | https://dashboard-02.braze.eu |
https://rest.fra-02.braze.eu |
sdk.fra braze.eu——02. |
API的限製
對於大多數api, Braze的默認速率限製為每小時250,000個請求。但是,某些請求類型有自己的速率限製,以更好地處理客戶基礎中的大量數據。詳細信息請參見空氣汙染指數速率限製
用戶id
- 外部用戶ID:
external_id
作為提交數據的唯一用戶標識符。這個標識符應該與您在Braze SDK中設置的標識符相同,以避免為同一用戶創建多個配置文件。 - Braze用戶ID:
braze_id
用作由Braze設置的唯一用戶標識符。除了external_ids之外,這個標識符還可以用於通過REST API刪除用戶。
有關更多信息,請參考以下文章基於您的平台:iOS,安卓,網絡.
REST API密鑰
REST應用程序編程接口鍵(REST API鍵)是傳遞給API的惟一代碼,用於驗證API調用並識別調用應用程序或用戶。API訪問是通過對公司REST API端點的HTTPS web請求完成的。我們在Braze使用REST API鍵與應用程序標識符鍵一起跟蹤、訪問、發送、導出和分析數據,以幫助確保您和我們兩端的一切都順利運行。
應用程序組和API鍵在Braze上是齊頭並進的。應用程序組被設計用來在多個平台上存放同一應用程序的版本。許多客戶還manbetx万博全站客户端使用應用程序組在同一平台上包含其應用程序的免費和付費版本。正如您可能注意到的,這些應用程序組也在使用REST API,並擁有自己的REST API鍵。這些鍵可以單獨限定作用域,以包括對API上特定端點的訪問。對API的每次調用都必須包含一個訪問端點命中的鍵。
我們將REST API鍵和應用程序組API鍵都稱為api_key
.的api_key
作為請求頭包含在每個請求中,並充當允許您使用我們的REST api的身份驗證密鑰。這些REST api用於跟蹤用戶、發送消息、導出用戶數據等。當您創建一個新的REST API密鑰時,您需要讓它訪問特定的端點。通過給API密鑰分配特定的權限,可以精確地限製API密鑰可以驗證哪些調用。
除了REST API鍵,還有一種類型的鍵稱為標識符鍵,可以用於引用特定的東西,如應用程序、模板、畫布、活動、內容卡和API片段。有關更多信息,請參見API標識符類型.
REST API關鍵權限
API關鍵權限是您可以分配給用戶或組的權限,以限製他們對某些API調用的訪問。
許可 | 描述 |
---|---|
users.track |
記錄用戶屬性、自定義事件和購買 |
users.delete |
刪除任意用戶。 |
users.alias.new |
為現有用戶創建新別名。 |
users.identify |
按用戶ID查詢用戶配置文件信息。 |
users.export.ids |
通過標識符(device_id、email_address、external_id)查詢用戶配置文件信息。 |
users.export.segment |
按網段查詢用戶配置文件信息。 |
users.external_ids.rename |
重命名用戶的現有外部ID。 |
users.external_ids.remove |
刪除用戶已棄用的外部ID。 |
的名字 | 描述 |
---|---|
email.unsubscribe |
查詢未訂閱的郵件地址。 |
email.status |
更改郵件地址狀態。 |
email.hard_bounces |
查詢硬反彈的電子郵件地址。 |
email.bounce.remove |
從硬回彈列表中刪除電子郵件地址。 |
email.spam.remove |
從垃圾郵件列表中刪除電子郵件地址。 |
email.blacklist |
黑名單郵件地址。 |
的名字 | 描述 |
---|---|
messages.send |
向特定用戶發送即時的、特別的消息。 |
messages.schedule.create |
計劃在特定時間發送消息。 |
messages.schedule.update |
更新預定的消息。 |
messages.schedule.delete |
刪除計劃郵件。 |
messages.schedule_broadcasts |
查詢所有計劃廣播消息。 |
的名字 | 描述 |
---|---|
campaigns.trigger.send |
觸發現有活動的發送。 |
campaigns.trigger.schedule.create |
用api觸發的交付計劃未來的活動發送。 |
campaigns.trigger.schedule.update |
用api觸發的交付更新計劃的活動。 |
campaigns.trigger.schedule.delete |
刪除一個計劃由api觸發交付的活動 |
campaigns.list |
查詢活動列表。 |
campaigns.data_series |
查詢一個時間段內的活動分析。 |
campaigns.details |
查詢特定活動的詳細信息。 |
sends.data_series |
查詢在一段時間內的消息發送分析。 |
sends.id.create |
為消息爆炸跟蹤創建發送ID。 |
的名字 | 描述 |
---|---|
canvas.trigger.send |
觸發現有Canvas的發送。 |
canvas.trigger.schedule.create |
計劃未來用api觸發的交付發送Canvas。 |
canvas.trigger.schedule.update |
用api觸發的交付更新預定的Canvas。 |
canvas.trigger.schedule.delete |
刪除一個預定的由api觸發的交付的Canvas。 |
canvas.list |
查詢畫布的列表。 |
canvas.data_series |
查詢一個時間範圍內的畫布分析。 |
canvas.details |
查詢特定畫布的詳細信息。 |
canvas.data_summary |
查詢在一段時間內的Canvas分析彙總。 |
的名字 | 描述 |
---|---|
segments.list |
查詢段列表。 |
segments.data_series |
查詢時間段內的段分析。 |
segments.details |
查詢指定網段的詳細信息。 |
的名字 | 描述 |
---|---|
purchases.product_list |
查詢在您的應用程序中購買的產品列表。 |
purchases.revenue_series |
查詢您的應用程序在一段時間內每天花費的總錢。 |
purchases.quantity_series |
查詢您的應用程序在一段時間內每天的購買總數。 |
的名字 | 描述 |
---|---|
events.list |
查詢自定義事件的列表。 |
events.data_series |
查詢自定義事件在一段時間內的發生次數。 |
的名字 | 描述 |
---|---|
feed.list |
查詢新聞提要卡的列表。 |
feed.data_series |
查詢在一段時間範圍內的新聞提要分析。 |
feed.details |
查詢特定新聞提要的詳細信息。 |
的名字 | 描述 |
---|---|
sessions.data_series |
查詢某時間段內每天的會話數。 |
的名字 | 描述 |
---|---|
kpi.mau.data_series |
查詢某一時間段內30天滾動窗口內的唯一活動用戶總數。 |
kpi.dau.data_series |
查詢在一段時間內每天唯一的活動用戶。 |
kpi.new_users.data_series |
查詢在一段時間內每天新增的用戶。 |
kpi.uninstalls.data_series |
查詢在一段時間內每天卸載的應用程序。 |
的名字 | 描述 |
---|---|
templates.email.create |
在儀表板上創建一個新的電子郵件模板。 |
templates.email.update |
更新存儲在儀表板上的電子郵件模板。 |
templates.email.info |
查詢指定模板信息。 |
templates.email.list |
查詢電子郵件模板列表。 |
的名字 | 描述 |
---|---|
sso.saml.login |
設置標識提供程序啟動的登錄。閱讀我們的文檔了解更多信息。 |
的名字 | 描述 |
---|---|
content_blocks.info |
查詢指定模板信息。 |
content_blocks.list |
查詢獲取內容塊的列表。 |
content_blocks.create |
在儀表板上創建一個新的Content Block。 |
的名字 | 描述 |
---|---|
subscription.status.set |
設置訂閱組狀態。 |
subscription.status.get |
獲取訂閱組狀態。 |
subscription.groups.get |
獲取特定用戶顯式訂閱/取消訂閱的訂閱組的狀態。 |
創建和管理REST API密鑰
要創建新的REST API密鑰,請訪問開發人員控製台在你的儀表盤上。此頁麵顯示您現有的API鍵。單擊,創建新的密鑰創建新的API密鑰.
然後你可以進行以下操作:
- 為您的新密鑰指定一個名稱,以便一目了然地進行識別
- 選擇您希望與新密鑰相關聯的權限
- 為新密鑰指定允許列出的IP地址和子網
通過單擊設置,可以查看或刪除現有的REST API鍵並選擇相應的選項。
請記住,一旦創建了新的API密鑰,就不能編輯權限範圍或允許列出的ip。這種限製是出於安全原因。如果需要更改密鑰的範圍,請使用更新後的權限創建一個新密鑰,並在舊密鑰的位置實現該密鑰。完成實現後,繼續執行並刪除舊的密鑰。
REST API密鑰安全性
API密鑰用於驗證API調用。當您創建一個新的REST API密鑰時,您需要讓它訪問特定的端點。通過給API密鑰分配特定的權限,可以精確地限製API密鑰可以驗證哪些調用。
鑒於REST API密鑰允許訪問可能敏感的REST API端點,請保護這些密鑰,隻與可信的合作夥伴共享它們。它們不應該被公開曝光。例如,不要使用此密鑰從您的網站進行AJAX調用或以任何其他公開方式公開它。
一個好的安全實踐是隻給用戶分配完成其工作所需的訪問權限:通過給每個密鑰分配權限,這個原則也可以應用於API密鑰。這些權限為您提供了更好的安全性和對帳戶不同區域的控製。
鑒於REST API鍵允許訪問潛在敏感的REST API端點,請確保它們被安全地存儲和使用。例如,不要使用此密鑰從您的網站進行AJAX調用或以任何其他公開方式公開它。
如果密鑰意外暴露,可以從開發人員控製台中刪除它。要獲得此過程的幫助,請打開一個支持的票.
API IP allowlisting
為了額外的安全性,您可以指定一個IP地址和子網列表,這些IP地址和子網允許對給定的REST API密鑰發出REST API請求。這被稱為允許列表或白名單。如果需要允許指定的IP地址或子網,可將其添加到白名單“誘導多能性”section創建一個新的REST API鍵:
如果不指定,則可以從任何IP地址發送請求。
做一個Braze-to-Braze webhook和使用allowlisting?看看我們的清單ip加入白名單.
額外的資源
Ruby客戶端庫
如果您使用Ruby實現Braze,您可以使用我們的Ruby客戶端庫減少數據導入時間。客戶端庫是特定於一種編程語言(在本例中是ruby)的代碼集合,它使API的使用更加容易。
Ruby客戶端庫支持用戶終端.
這個客戶端庫目前處於測試階段。想幫我們把圖書館做得更好嗎?向我們發送反饋(電子郵件保護).