API 개요
이 참조 문서는 API 기본 사항, 일반 용어 및 REST API 키, 권한 및 이를 안전하게 유지하는 방법에 대한 개요를 다룹니다.
Braze REST API 컬렉션
컬렉션 | 목적 |
---|---|
카탈로그 | Braze 캠페인에서 참조할 카탈로그와 카탈로그 항목을 생성하고 관리합니다. |
클라우드 데이터 수집 | 데이터 웨어하우스 통합 및 동기화를 관리합니다. |
이메일 목록 및 주소 | Braze와 이메일 시스템 간의 양방향 동기화를 설정하고 관리하세요. |
내보내기 | 캠페인, 캔버스, KPI 등에 대한 다양한 세부 정보에 액세스하고 내보낼 수 있습니다. |
메시지 | 캠페인과 캔버스를 예약, 전송 및 관리하세요. |
환경 설정 센터 | 환경설정 센터를 구축하고 스타일링을 업데이트하세요. |
SCIM | 클라우드 기반 애플리케이션 및 서비스에서 사용자 ID를 관리하세요. |
SMS | 구독 그룹에서 사용자의 전화번호를 관리하세요. |
구독 그룹 | Braze 대시보드에 저장된 SMS 및 이메일 구독 그룹을 모두 나열하고 업데이트합니다. |
템플릿 | 이메일 메시징 및 콘텐츠 블록용 템플릿을 만들고 업데이트합니다. |
사용자 데이터 | 사용자를 식별, 추적 및 관리하세요. |
API 정의
다음은 Braze REST API 설명서에서 볼 수 있는 용어에 대한 개요입니다.
엔드포인트
Braze는 대시보드 및 REST 엔드포인트에 대한 다양한 인스턴스를 관리합니다. 계정이 프로비저닝되면 다음 URL 중 하나에 로그인하게 됩니다. 프로비저닝된 인스턴스에 따라 올바른 REST 엔드포인트를 사용하세요. 확실하지 않은 경우 [지원 티켓]] [지원] ]을 열거나 다음 표를 사용하여 사용 중인 대시보드의 URL을 올바른 REST 엔드포인트에 일치시키세요.
API 호출에 엔드포인트를 사용할 때는 REST 엔드포인트를 사용하세요.
SDK 통합을 위해 SDK 엔드포인트를 사용하고, 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-07 | https://dashboard-07.braze.com |
https://rest.iad-07.braze.com |
sdk.iad-07.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-01.braze.eu |
EU-02 | https://dashboard-02.braze.eu |
https://rest.fra-02.braze.eu |
sdk.fra-02.braze.eu |
API 제한
대부분의 API에 대해 Braze는 시간당 250,000개의 요청에 대한 기본값 속도 제한이 있습니다. 그러나 특정 요청 유형에는 고객 기반의 대량 데이터를 더 잘 처리하기 위해 적용되는 자체 요금 제한이 있습니다. 자세한 내용은 API 속도 제한을 참조하십시오.
사용자 ID
- 외부 사용자 ID:
external_id
는 데이터를 제출하는 사용자에 대한 고유 식별자로 사용됩니다. 이 식별자는 동일한 사용자를 위해 여러 프로필을 생성하지 않도록 Braze SDK에 설정한 것과 같아야 합니다. - 브레이즈 사용자 ID:
braze_id
는 브레이즈에 의해 설정된 고유 사용자 식별자로 사용됩니다. 이 식별자는 외부 ID 외에도 REST API를 통해 사용자를 삭제하는 데 사용할 수 있습니다.
자세한 내용은 플랫폼에 따라 iOS, Android 및 웹에 대한 다음 도움말 문서를 참조하세요.
REST API 키에 대하여
REST 애플리케이션 프로그래밍 인터페이스 키(REST API 키)는 API 호출을 인증하고 호출하는 애플리케이션 또는 사용자를 식별하기 위해 API에 전달되는 고유한 코드입니다. API 액세스는 회사의 REST API 엔드포인트에 대한 HTTPS 웹 요청을 사용하여 수행됩니다. 우리는 Braze에서 REST API 키를 앱 식별자 키와 함께 사용하여 데이터를 추적, 접근, 전송, 내보내기 및 분석하여 귀하와 저희 쪽 모두에서 모든 것이 원활하게 작동하는지 확인합니다.
작업 공간과 API 키는 Braze에서 함께 사용됩니다. 작업 공간은 여러 플랫폼에서 동일한 애플리케이션의 버전을 수용하도록 설계되었습니다. 많은 고객들이 또한 동일한 플랫폼에서 애플리케이션의 무료 및 프리미엄 버전을 포함하기 위해 작업 공간을 사용합니다. 당신이 알다시피, 이러한 작업 공간은 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 키 만들기
새 REST API 키를 만들려면 다음과 같이 하세요:
- 설정 > API 및 식별자로 이동합니다.
구형 내비게이션를 사용하고 있다면, 개발자 콘솔 > API 설정에서 API 키를 생성할 수 있습니다.
2. API 키 생성을 선택합니다. 3. 새 키에 한눈에 식별할 수 있는 이름을 지정하세요. 4. 새 키의 허용 목록에 있는 IP 주소 및 서브넷을 지정합니다. 5. 새 키에 연결할 권한을 선택합니다.
새 API 키를 생성한 후에는 권한 범위나 허용된 IP를 편집할 수 없습니다. 이 제한은 보안상의 이유로 시행되고 있습니다. 키의 범위를 변경해야 하는 경우 업데이트된 권한으로 새 키를 만들고 이전 키 대신 해당 키를 구현하세요. 구현을 완료한 후에는 이전 키를 삭제할 수 있습니다.
REST API 키 권한
API 키 권한은 사용자가 특정 API 호출에 대한 액세스를 제한할 수 있도록 사용자 또는 그룹에 할당할 수 있는 권한입니다. API 키 권한 목록을 보려면 설정 > API 및 식별자로 이동하여 API 키를 선택하십시오.
권한 | 엔드포인트 | 설명 |
---|---|---|
users.track |
/users/track |
사용자 속성, 사용자 지정 이벤트 및 구매 이벤트를 기록합니다. |
users.delete |
/users/delete |
사용자를 삭제합니다. |
users.alias.new |
/users/alias/new |
기존 사용자의 새 별칭을 생성합니다. |
users.identify |
/users/identify |
외부 ID로 별칭 전용 사용자를 식별합니다. |
users.export.ids |
/users/export/ids |
사용자 프로필 정보를 사용자 ID별로 조회합니다. |
users.export.segment |
/users/export/segment |
세그먼트별로 사용자 프로필 정보를 쿼리합니다. |
users.merge |
/users/merge |
기존 사용자 두 명을 서로 병합합니다. |
users.external_ids.rename |
/users/external_ids/rename |
기존 사용자의 외부 ID를 변경합니다. |
users.external_ids.remove |
/users/external_ids/remove |
기존 사용자의 외부 ID를 제거합니다. |
users.alias.update |
/users/alias/update |
기존 사용자의 별칭을 업데이트합니다. |
users.export.global_control_group |
/users/export/global_control_group |
전역 대조군에 있는 사용자 프로필 정보를 쿼리합니다. |
권한 | 엔드포인트 | 설명 |
---|---|---|
email.unsubscribe |
/email/unsubscribes |
구독취소한 이메일 주소를 조회합니다. |
email.status |
/email/status |
이메일 주소의 상태를 변경합니다. |
email.hard_bounces |
/email/hard_bounces |
하드바운스된 이메일 주소를 조회합니다. |
email.bounce.remove |
/email/bounce/remove |
하드바운스 목록의 이메일 주소를 제거합니다. |
email.spam.remove |
/email/spam/remove |
스팸 목록의 이메일 주소를 제거합니다. |
email.blacklist |
/email/blacklist |
이메일 주소를 차단 목록에 추가합니다. |
권한 | 엔드포인트 | 설명 |
---|---|---|
messages.send |
/messages/send |
특정 사용자에게 즉시 메시지를 보냅니다. |
messages.schedule.create |
/messages/schedule/create |
특정 시간에 발송할 메시지를 예약합니다. |
messages.schedule.update |
/messages/schedule/update |
예약된 메시지를 업데이트합니다. |
messages.schedule.delete |
/messages/schedule/delete |
예약된 메시지를 삭제합니다. |
messages.schedule_broadcasts |
/messages/scheduled_broadcasts |
예약된 모든 브로드캐스트 메시지를 조회합니다. |
messages.live_activity.update |
/messages/live_activity/update |
iOS 라이브 활동을 업데이트합니다. |
권한 | 엔드포인트 | 설명 |
---|---|---|
campaigns.trigger.send |
/campaigns/trigger/send |
기존 캠페인 전송을 트리거합니다. |
campaigns.trigger.schedule.create |
/campaigns/trigger/schedule/create |
API 트리거 전송을 통해 향후 캠페인 전송을 예약합니다. |
campaigns.trigger.schedule.update |
/campaigns/trigger/schedule/update |
API 트리거 전송으로 예약된 캠페인을 업데이트합니다. |
campaigns.trigger.schedule.delete |
/campaigns/trigger/schedule/delete |
API 트리거 전송으로 예약된 캠페인을 삭제합니다. |
campaigns.list |
/campaigns/list |
캠페인 목록을 쿼리합니다. |
campaigns.data_series |
/campaigns/data_series |
일정 기간 동안 캠페인 분석을 쿼리합니다. |
campaigns.details |
/campaigns/details |
특정 캠페인에 대한 세부 정보를 쿼리합니다. |
sends.data_series |
/sends/data_series |
일정 시간 범위에 대한 메시지 발송 분석을 조회합니다. |
sends.id.create |
/sends/id/create |
메시지 폭발 추적을 위한 전송 ID를 만듭니다. |
campaigns.url_info.details |
/campaigns/url_info/details |
캠페인 내 특정 메시지 배리언트의 URL 세부 정보를 조회합니다. |
transactional.send |
/transactional/v1/campaigns/{campaign_id}/send |
트랜잭션 메시징 엔드포인트를 사용하여 트랜잭션 메시징을 보낼 수 있습니다. |
권한 | 엔드포인트 | 설명 |
---|---|---|
canvas.trigger.send |
/canvas/trigger/send |
기존 캔버스의 발송을 트리거합니다. |
canvas.trigger.schedule.create |
/canvas/trigger/schedule/create |
향후 캔버스 발송을 API 트리거 전달로 예약합니다. |
canvas.trigger.schedule.update |
/canvas/trigger/schedule/update |
API 트리거 전달로 예약된 캔버스를 업데이트합니다. |
canvas.trigger.schedule.delete |
/canvas/trigger/schedule/delete |
API 트리거 전달로 예약된 캔버스를 삭제합니다. |
canvas.list |
/canvas/list |
캔버스의 목록을 조회합니다. |
canvas.data_series |
/canvas/data_series |
일정 시간 범위에 대한 캔버스 분석을 조회합니다. |
canvas.details |
/canvas/details |
특정 캔버스의 세부 정보를 조회합니다. |
canvas.data_summary |
/canvas/data_summary |
일정 시간 범위에 대한 캔버스 분석의 롤업을 조회합니다. |
canvas.url_info.details |
/canvas/url_info/details |
캔버스 단계 내에서 특정 메시지 변형에 대한 URL 세부 정보를 쿼리합니다. |
권한 | 엔드포인트 | 설명 |
---|---|---|
segments.list |
/segments/list |
세그먼트 목록을 쿼리합니다. |
segments.data_series |
/segments/data_series |
시간 범위에 대한 세그먼트 분석을 쿼리합니다. |
segments.details |
/segments/details |
특정 세그먼트에 대한 세부 정보를 쿼리합니다. |
권한 | 엔드포인트 | 설명 |
---|---|---|
purchases.product_list |
/purchases/product_list |
해당 앱에서 구매가 일어난 제품의 목록을 조회합니다. |
purchases.revenue_series |
/purchases/revenue_series |
일정 시간 범위 내 해당 앱에서 기록된 일일 총 지출액을 조회합니다. |
purchases.quantity_series |
/purchases/quantity_series |
특정 기간 동안 앱의 하루 총 구매 수를 쿼리합니다. |
권한 | 엔드포인트 | 설명 |
---|---|---|
events.list |
/events/list |
사용자 지정 이벤트 목록을 쿼리합니다. |
events.data_series |
/events/data_series |
시간 범위에 따른 사용자 지정 이벤트 발생을 쿼리합니다. |
News Feed is being deprecated. We recommend migrating to our Content Cards messaging channel instead—it’s more flexible, customizable, and reliable. To get started, check out Migrating from News Feed.
권한 | 엔드포인트 | 설명 |
---|---|---|
feed.list |
/feed/list |
뉴스피드 카드의 목록을 조회합니다. |
feed.data_series |
/feed/data_series |
일정 시간 범위에 대한 뉴스피드 분석을 조회합니다. |
feed.details |
/feed/details |
특정 뉴스피드의 세부 정보를 조회합니다. |
권한 | 엔드포인트 | 설명 |
---|---|---|
sessions.data_series |
/sessions/data_series |
일정 시간 범위 내 일일 세션 수를 조회합니다. |
권한 | 엔드포인트 | 설명 |
---|---|---|
kpi.dau.data_series |
/kpi/dau/data_series |
일정 시간 범위 내 일일 고유 활성 사용자 수를 조회합니다. |
kpi.mau.data_series |
/kpi/mau/data_series |
일정 시간 범위 내 30일 롤링 기간 동안의 총 고유 활성 사용자 수를 조회합니다. |
kpi.new_users.data_series |
/kpi/new_users/data_series |
일정 시간 범위 내 일일 새로운 사용자 수를 조회합니다. |
kpi.uninstalls.data_series |
/kpi/uninstalls/data_series |
일정 시간 범위 내 일일 앱 설치 제거 횟수를 조회합니다. |
권한 | 엔드포인트 | 설명 |
---|---|---|
templates.email.create |
/templates/email/create |
대시보드에서 새 이메일 템플릿을 만듭니다. |
templates.email.info |
/templates/email/info |
특정 템플릿의 정보를 조회합니다. |
templates.email.list |
/templates/email/list |
이메일 템플릿의 목록을 조회합니다. |
templates.email.update |
/templates/email/update |
대시보드에 저장된 이메일 템플릿을 업데이트합니다. |
권한 | 설명 |
---|---|
sso.saml.login |
ID 공급자 시작 로그인을 설정합니다. 자세한 내용은 서비스 제공업체(SP) 시작 로그인을 참조하세요. |
권한 | 엔드포인트 | 설명 |
---|---|---|
content_blocks.info |
/content_blocks/info |
특정 템플릿의 정보를 조회합니다. |
content_blocks.list |
/content_blocks/list |
콘텐츠 블록의 목록을 조회합니다. |
content_blocks.create |
/content_blocks/create |
대시보드에서 새 콘텐츠 블록을 만듭니다. |
content_blocks.update |
/content_blocks_update |
대시보드에서 기존 콘텐츠 블록을 업데이트합니다. |
권한 | 엔드포인트 | 설명 |
---|---|---|
preference_center.get |
/preference_center/v1/{preferenceCenterExternalId} |
환경설정 센터를 가져옵니다. |
preference_center.list |
/preference_center/v1/list |
환경설정 센터를 열거합니다. |
preference_center.update |
/preference_center/v1 /preference_center/v1/{preferenceCenterExternalID} |
환경설정 센터를 만들거나 업데이트합니다. |
preference_center.user.get |
/preference_center/v1/{preferenceCenterExternalId}/url/{userId} |
사용자 대상의 환경설정 센터 링크를 가져옵니다. |
권한 | 엔드포인트 | 설명 |
---|---|---|
subscription.status.set |
/subscription/status/set |
구독 그룹 상태를 설정합니다. |
subscription.status.get |
/subscription/status/get |
구독 그룹 상태를 가져옵니다. |
subscription.groups.get |
/subscription/user/status |
특정 사용자가 명시적으로 구독 및 구독 취소한 구독 그룹의 상태를 확인합니다. |
권한 | 엔드포인트 | 설명 |
---|---|---|
sms.invalid_phone_numbers |
/sms/invalid_phone_numbers |
잘못된 전화번호를 조회합니다. |
sms.invalid_phone_numbers.remove |
/sms/invalid_phone_numbers/remove |
사용자에게서 잘못된 전화번호 플래그를 제거합니다. |
권한 | 엔드포인트 | 설명 |
---|---|---|
catalogs.add_items |
/catalogs/{catalog_name}/items |
기존 카탈로그에 여러 항목을 추가합니다. |
catalogs.update_items |
/catalogs/{catalog_name}/items |
기존 카탈로그에 포함된 여러 항목을 업데이트합니다. |
catalogs.delete_items |
/catalogs/{catalog_name}/items |
기존 카탈로그에서 여러 항목을 삭제합니다. |
catalogs.get_item |
/catalogs/{catalog_name}/items/{item_id} |
기존 카탈로그에서 단일 항목을 가져옵니다. |
catalogs.update_item |
/catalogs/{catalog_name}/items/{item_id} |
기존 카탈로그에 포함된 단일 항목을 업데이트합니다. |
catalogs.create_item |
/catalogs/{catalog_name}/items/{item_id} |
기존 카탈로그 내에 단일 항목을 생성합니다. |
catalogs.delete_item |
/catalogs/{catalog_name}/items/{item_id} |
기존 카탈로그에서 단일 항목을 삭제합니다. |
catalogs.replace_item |
/catalogs/{catalog_name}/items/{item_id} |
기존 카탈로그에 포함된 단일 항목을 교체합니다. |
catalogs.create |
/catalogs |
카탈로그를 만듭니다. |
catalogs.get |
/catalogs |
카탈로그 목록 가져오기 |
catalogs.delete |
/catalogs/{catalog_name} |
카탈로그를 삭제합니다. |
catalogs.get_items |
/catalogs/{catalog_name}/items |
기존 카탈로그에서 항목 미리보기를 가져옵니다. |
catalogs.replace_items |
/catalogs/{catalog_name}/items |
기존 카탈로그의 항목을 교체합니다. |
REST API 키 관리
기존 REST API 키의 세부 정보를 보거나 삭제할 수 있습니다 설정 > API 및 식별자 > API 키 탭. REST API 키는 생성된 후에 편집할 수 없습니다.
API Keys 탭에는 각 키에 대한 다음 정보가 포함됩니다:
필드 | 설명 |
---|---|
API 키 이름 | 생성 시 키에 부여된 이름입니다. |
식별자 | API 키입니다. |
생성자 | 키를 생성한 사용자의 이메일 주소입니다. 2023년 6월 이전에 생성된 키의 경우 이 필드는 “N/A”로 표시됩니다. |
생성일 | 이 키가 생성된 날짜입니다. |
마지막 조회 | 이 키를 마지막으로 사용한 날짜입니다. 이 필드는 한 번도 사용하지 않은 키의 경우 “N/A”로 표시됩니다. |
API 키의 세부 정보를 보려면 키 위에 마우스를 올리고 보기를 선택하십시오. 이에는 이 키가 가진 모든 권한, 화이트리스트에 등록된 IP(있는 경우), 그리고 이 키가 Braze IP 화이트리스트에 등록되었는지 여부가 포함됩니다.
사용자를 삭제할 때, 사용자가 생성한 관련 API 키는 삭제되지 않습니다. 키를 삭제하려면 키 위에 마우스를 올리고 삭제를 선택하세요.
REST API 키 보안
API 키는 API 호출을 인증하는 데 사용됩니다. 새로운 REST API 키를 생성할 때, 특정 엔드포인트에 대한 액세스를 부여해야 합니다. API 키에 특정 권한을 할당하면 API 키가 인증할 수 있는 호출을 정확히 제한할 수 있습니다.
REST API 키는 잠재적으로 민감한 REST API 엔드포인트에 대한 액세스를 허용하므로 이러한 키를 안전하게 보호하고 신뢰할 수 있는 파트너와만 공유하십시오. 키가 공개적으로 노출되어서는 안 됩니다. 예를 들어, 이 키를 사용하여 웹사이트에서 AJAX 호출을 하거나 다른 공개적인 방식으로 노출하지 마십시오.
좋은 보안 관행은 사용자에게 작업을 완료하는 데 필요한 만큼의 액세스 권한만 할당하는 것입니다. 이 원칙은 각 키에 권한을 할당하여 API 키에도 적용할 수 있습니다. 이러한 권한을 통해 계정의 다양한 영역에 대한 보안과 제어를 강화할 수 있습니다.
REST API 키는 잠재적으로 민감한 REST API 엔드포인트에 대한 액세스를 허용하므로, 안전하게 저장하고 사용해야 합니다. 예를 들어, 이 키를 사용하여 웹사이트에서 AJAX 호출을 하거나 다른 공개적인 방식으로 노출하지 마십시오.
실수로 키가 노출된 경우 개발자 콘솔에서 키를 삭제할 수 있습니다. 이 프로세스에 대한 도움이 필요하면 [지원 티켓]] [지원]]을 열어주세요.
API IP 허용 목록
보안을 강화하기 위해 특정 REST API 키에 대해 REST API 요청을 보내도록 허용할 IP 주소와 서브넷 목록을 지정할 수 있습니다. 이를 허용 목록 또는 화이트리스트라고 합니다. 특정 IP 주소 또는 서브넷을 허용하려면 새 REST API 키를 생성할 때 화이트리스트 IP 섹션에 추가하세요.
지정하지 않으면 모든 IP 주소에서 요청을 보낼 수 있습니다.
Braze-Braze 웹훅을 생성하고 허용 목록을 사용하려면? 화이트리스트에 추가할 IP 목록을 확인하세요.
추가 리소스
루비 클라이언트 라이브러리
루비를 사용하여 Braze를 구현하는 경우, 데이터 가져오기 시간을 줄이기 위해 루비 클라이언트 라이브러리를 사용할 수 있습니다. 클라이언트 라이브러리는 특정 프로그래밍 언어, 이 경우에는 루비에 대한 코드 모음으로, API를 사용하는 것을 더 쉽게 만들어 줍니다.
루비 클라이언트 라이브러리는 사용자 엔드포인트을 지원합니다.
이 클라이언트 라이브러리는 현재 베타 버전입니다. 이 라이브러리를 개선하는 데 도움을 주고 싶으신가요? smb-product@braze.com 으로 피드백을 보내주세요.