API 개요
이 참조 문서는 API 기본 사항, 일반 용어 및 REST API 키, 권한 및 이를 안전하게 유지하는 방법에 대한 개요를 다룹니다.
Braze REST API 컬렉션
| 컬렉션 | 목적 |
|---|---|
| 카탈로그 | Braze 캠페인에서 참조할 카탈로그와 카탈로그 항목을 생성하고 관리합니다. |
| 클라우드 데이터 수집 | 데이터 웨어하우스 통합 및 동기화를 관리합니다. |
| 이메일 목록 및 주소 | Braze와 이메일 시스템 간의 양방향 동기화를 설정하고 관리합니다. |
| 내보내기 | 캠페인, 캔버스, KPI 등에 대한 다양한 세부 정보에 액세스하고 내보냅니다. |
| 미디어 라이브러리 | Braze 내 자산을 관리합니다. |
| 메시지 | 캠페인과 캔버스를 예약, 전송 및 관리합니다. |
| 환경설정 센터 | 환경설정 센터를 구축하고 스타일링을 업데이트합니다. |
| SCIM | 클라우드 기반 애플리케이션 및 서비스에서 사용자 ID를 관리합니다. |
| SMS | 구독 그룹에서 사용자의 전화번호를 관리합니다. |
| 구독 그룹 | Braze 대시보드에 저장된 SMS 및 이메일 구독 그룹을 모두 나열하고 업데이트합니다. |
| 템플릿 | 이메일 메시징 및 콘텐츠 블록용 템플릿을 만들고 업데이트합니다. |
| 사용자 데이터 | 사용자를 식별, 추적 및 관리합니다. |
API 정의
다음은 Braze REST API 설명서에서 볼 수 있는 용어에 대한 개요입니다.
엔드포인트
Braze는 대시보드 및 REST 엔드포인트에 대한 다양한 인스턴스를 관리합니다. 계정이 프로비저닝되면 다음 URL 중 하나에 로그인합니다. 프로비저닝된 인스턴스에 따라 올바른 REST 엔드포인트를 사용하세요. 확실하지 않은 경우, 지원 티켓을 열거나 사용 중인 대시보드의 URL을 올바른 REST 엔드포인트에 맞추기 위해 다음 표를 사용하세요.
Braze에서 REST 엔드포인트를 찾으려면:
- Braze에 로그인하고 설정 > API 및 식별자 > API 키로 이동합니다.
- 기존 API 키를 선택하거나 API 키 생성을 선택하여 새 키를 만듭니다.
- 이 탭에 표시된 REST 엔드포인트를 복사하고 API 요청에 해당 엔드포인트를 사용합니다.
| 인스턴스 | 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 |
| US-10 | https://dashboard.us-10.braze.com |
https://rest.us-10.braze.com |
sdk.us-10.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 |
| AU-01 | https://dashboard.au-01.braze.com |
https://rest.au-01.braze.com |
sdk.au-01.braze.com |
| ID-01 | https://dashboard.id-01.braze.com |
https://rest.id-01.braze.com |
sdk.id-01.braze.com |
| JP-01 | https://dashboard.jp-01.braze.com |
https://rest.jp-01.braze.com |
sdk.jp-01.braze.com |
API 제한
대부분의 API에 대해 Braze는 시간당 250,000건의 요청이라는 기본 사용량 제한을 적용합니다. 그러나 특정 요청 유형에는 고객 기반의 대량 데이터를 더 잘 처리하기 위해 자체 사용량 제한이 적용됩니다. 자세한 내용은 API 사용량 제한을 참조하세요.
사용자 ID
- 외부 사용자 ID:
external_id는 데이터를 제출하는 사용자에 대한 고유 식별자로 사용됩니다. 이 식별자는 동일한 사용자에 대해 여러 프로필이 생성되지 않도록 Braze SDK에 설정한 것과 동일해야 합니다. - Braze 사용자 ID:
braze_id는 Braze가 설정하는 고유한 사용자 식별자 역할을 합니다. 이 식별자를 사용하여 external_ids 외에도 REST API를 통해 사용자를 삭제할 수 있습니다.
자세한 내용은 플랫폼에 따라 iOS, Android 및 웹 문서를 참조하세요.
REST API 키에 대하여
REST 애플리케이션 프로그래밍 인터페이스 키(REST API 키)는 API 호출을 인증하고 호출하는 애플리케이션 또는 사용자를 식별하기 위해 API에 전달하는 고유한 코드입니다. 회사의 REST API 엔드포인트에 HTTPS 웹 요청을 사용하여 API에 액세스합니다. 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 키 생성을 선택합니다.
- 새 키에 한눈에 식별할 수 있는 이름을 지정합니다.
- 새 키의 허용 목록에 포함할 IP 주소 및 서브넷을 지정합니다.
- 새 키에 연결할 권한을 선택합니다.
새 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 |
이메일 주소를 차단 목록에 추가합니다. |
| 권한 | 엔드포인트 | 설명 |
|---|---|---|
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 |
일정 기간 동안의 커스텀 이벤트 발생 횟수를 조회합니다. |
| 권한 | 엔드포인트 | 설명 |
|---|---|---|
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 |
기존 카탈로그의 항목을 교체합니다. |
| 권한 | 엔드포인트 | 설명 |
|---|---|---|
sdk_authentication.create |
/app_group/sdk_authentication/create |
앱을 위한 새로운 SDK 인증 키를 생성합니다. |
sdk_authentication.primary |
/app_group/sdk_authentication/primary |
SDK 인증 키를 앱의 기본 키로 표시합니다. |
sdk_authentication.delete |
/app_group/sdk_authentication/delete |
앱의 SDK 인증 키를 삭제합니다. |
sdk_authentication.keys |
/app_group/sdk_authentication/keys |
앱의 모든 SDK 인증 키를 가져옵니다. |
REST API 키 관리
기존 REST API 키의 세부 정보를 보거나 삭제하려면 설정 > API 및 식별자 > API 키 탭으로 이동하세요. 생성한 후에는 REST API 키를 편집할 수 없습니다.
API 키 탭에는 각 키에 대한 다음 정보가 포함됩니다:
| 필드 | 설명 |
|---|---|
| API 키 이름 | 생성 시 키에 부여된 이름입니다. |
| 식별자 | API 키입니다. |
| 생성자 | 키를 생성한 사용자의 이메일 주소입니다. 이 필드는 2023년 6월 이전에 생성된 키에 대해 “N/A”로 표시됩니다. |
| 생성일 | 이 키가 생성된 날짜입니다. |
| 마지막 조회 | 이 키를 마지막으로 사용한 날짜입니다. 이 필드는 한 번도 사용되지 않은 키에 대해 “N/A”로 표시됩니다. |
API 키의 세부 정보를 보려면 키 위에 마우스를 올리고 보기를 선택하세요. 여기에는 이 키가 가진 모든 권한, 화이트리스트에 등록된 IP(있는 경우), 그리고 이 키가 Braze IP 화이트리스트에 등록되었는지 여부가 포함됩니다.

사용자를 삭제할 때, Braze는 해당 사용자가 생성한 API 키를 삭제하지 않습니다. 키를 삭제하려면 키 위에 마우스를 올리고 삭제를 선택하세요.

REST API 키 보안
API 키는 API 호출을 인증하는 데 사용됩니다. 새로운 REST API 키를 생성할 때 특정 엔드포인트에 대한 액세스를 부여해야 합니다. API 키에 특정 권한을 할당하면 API 키가 인증할 수 있는 호출을 정확히 제한할 수 있습니다.
REST API 키는 잠재적으로 민감한 REST API 엔드포인트에 대한 액세스를 허용하므로 이러한 키를 안전하게 보호하고 신뢰할 수 있는 파트너와만 공유하세요. 키가 공개적으로 노출되어서는 안 됩니다. 예를 들어, 이 키를 사용하여 웹사이트에서 AJAX 호출을 하거나 다른 공개적인 방식으로 노출하지 마세요.
좋은 보안 관행은 사용자에게 작업을 완료하는 데 필요한 만큼의 액세스 권한만 할당하는 것입니다. 이 원칙은 각 키에 권한을 할당하여 API 키에도 적용할 수 있습니다. 이러한 권한을 통해 계정의 다양한 영역에 대한 보안과 제어를 강화할 수 있습니다.
REST API 키는 잠재적으로 민감한 REST API 엔드포인트에 대한 액세스를 허용하므로, 안전하게 저장하고 사용해야 합니다. 예를 들어, 이 키를 사용하여 웹사이트에서 AJAX 호출을 하거나 다른 공개적인 방식으로 노출하지 마세요.
키를 실수로 노출한 경우, 개발자 콘솔에서 삭제할 수 있습니다. 이 프로세스에 대한 도움이 필요하면 지원 티켓을 열어주세요.
REST API 키와 SDK API 키의 보안
REST API 키와 SDK API 키는 보안 프로필이 다릅니다.
| REST API 키 | SDK API 키 | |
|---|---|---|
| 목적 | REST API에 대한 서버 측 인증(메시지 전송, 데이터 내보내기, 사용자 관리) | Braze SDK에 대한 클라이언트 측 식별(데이터 수집, 인앱 메시지, 콘텐츠 카드) |
| 가시성 | 반드시 비공개로 유지해야 합니다. 클라이언트 측 코드, 공개 리포지토리 또는 사용자 애플리케이션에 노출하지 마세요. | 공개되도록 설계되었습니다. Google Analytics 추적 ID와 유사하게 앱 바이너리에 번들되거나 웹 브라우저 JavaScript에서 볼 수 있습니다. |
| 노출 시 해결 방법 | 즉시 키를 취소하고 설정 > API 및 식별자 > API 키에서 대체 키를 생성하세요. 노출된 REST API 키는 메시지 전송, 사용자 데이터 내보내기 또는 계정 설정 수정에 사용될 수 있습니다. | 조치가 필요하지 않습니다. SDK API 키는 데이터 수집과 클라이언트 측 메시징(예: 인앱 메시지 및 콘텐츠 카드) 검색만 가능합니다. 사용자 데이터를 내보내거나, 대신 메시지를 보내거나, 캠페인을 수정할 수 없습니다. |
API IP 허용 목록
보안을 강화하기 위해 특정 REST API 키에 대해 REST API 요청을 보낼 수 있는 IP 주소와 서브넷 목록을 지정할 수 있습니다. 이를 허용 목록 또는 화이트리스트라고 합니다. 특정 IP 주소 또는 서브넷을 허용하려면 새 REST API 키를 생성할 때 화이트리스트 IP 섹션에 추가하세요:

지정하지 않으면 모든 IP 주소에서 요청을 보낼 수 있습니다.
Braze-to-Braze 웹훅을 만들고 허용 목록을 사용하는 경우, 허용할 IP 목록을 참조하세요.
API 인증 및 보안
베어러 토큰 인증
Braze는 Authorization 요청 헤더에 베어러 토큰으로 전달된 REST API 키를 사용하여 REST API 요청을 인증합니다. 요청을 보낼 때 다음 형식으로 API 키를 포함하세요:
1
Authorization: Bearer YOUR_REST_API_KEY
각 요청에서 Braze는 다음과 같은 서버 측 유효성 검사를 수행합니다:
- 토큰 유효성: REST API 키가 Braze에 존재하고 활성 상태인지 확인합니다(예: 취소되거나 비활성화되지 않음).
- 토큰 권한: API 키가 요청된 엔드포인트에 필요한 권한을 가지고 있는지 확인합니다.
인증에 실패하면 API는 HTTP 상태 코드와 함께 오류 응답을 반환합니다. 예를 들어, 401 Unauthorized는 유효하지 않거나 누락된 키를 나타내고, 403 Forbidden은 키가 요청된 엔드포인트에 대한 권한이 없음을 나타냅니다. 자세한 내용은 API 오류를 참조하세요.
네트워크 수준 보안
Braze에 대한 REST API 요청은 전체 요청 경로에서 전송 계층 보안(TLS) 암호화로 보호됩니다. 다음 표는 서버에서 Braze로의 API 요청에 대한 네트워크 흐름을 설명합니다:
| 단계 | 구성요소 | 설명 |
|---|---|---|
| 1 | 사용자 서버 | TLS 암호화로 HTTPS 요청을 시작합니다. |
| 2 | Cloudflare | 클라이언트 TLS 연결을 종료하고 네트워크 수준의 보호를 적용합니다. |
| 3 | 네트워크 로드 밸런서(NLB) | 패킷을 애플리케이션 인프라로 전달합니다. NLB는 레이어 4에서 작동하므로 레이어 7 프록시가 없습니다. 패킷은 HTTP 수준의 검사나 수정 없이 전달됩니다. |
| 4 | NGINX 인그레스 | 내부 TLS 연결을 종료하고 요청을 라우팅합니다. |
| 5 | Unicorn(애플리케이션 서버) | 인증된 요청을 처리합니다. |
TLS 암호화는 체인의 모든 구간을 포함합니다. 사용자 서버는 TLS를 통해 Cloudflare에 연결하고, Cloudflare는 NLB를 통해 NGINX 인그레스로 별도의 TLS 연결을 설정하므로 API 키와 요청 데이터는 전송 중에 암호화된 상태로 유지됩니다.
추가 리소스
Ruby 클라이언트 라이브러리
Ruby를 사용하여 Braze를 구현하는 경우, 데이터 가져오기 시간을 줄이기 위해 Ruby 클라이언트 라이브러리를 사용할 수 있습니다. 클라이언트 라이브러리는 특정 프로그래밍 언어(이 경우 Ruby)에 특화된 코드 모음으로, API를 더 쉽게 사용할 수 있도록 해줍니다.
Ruby 클라이언트 라이브러리는 사용자 엔드포인트를 지원합니다.
이 클라이언트 라이브러리는 베타 버전입니다. 이 라이브러리를 개선하는 데 도움이 되도록 피드백을 [email protected]으로 보내주세요.
GitHub 에서 이 페이지를 편집합니다.