Skip to content

사용량 제한

Braze API 인프라는 고객 기반 전체에서 대량의 데이터를 처리하도록 설계되었습니다. 이를 위해 워크스페이스별로 API 사용량 제한을 적용합니다.

사용량 제한은 API가 주어진 시간 동안 수신할 수 있는 요청의 수입니다. 대규모 시스템에서 발생하는 부하 기반 서비스 거부 사고의 대부분은 악의적인 공격이 아닌 소프트웨어 또는 구성 오류로 인해 의도치 않게 발생합니다. 사용량 제한은 이러한 오류로 인해 고객이 Braze API 리소스를 사용하지 못하는 상황을 방지합니다. 지정된 시간 프레임 내에 너무 많은 요청이 전송되면, 429 상태 코드와 함께 오류 응답이 표시될 수 있으며, 이는 사용량 제한에 도달했음을 나타냅니다.

요청 유형별 사용량 제한

다양한 요청 유형의 기본 API 사용량 제한에 대해서는 아래를 참고하세요. 이러한 기본 제한은 요청 시 증가할 수 있습니다. 자세한 내용은 고객 성공 매니저에게 문의하세요.

개별 사용량 제한이 적용되는 요청

요청 유형 기본 API 사용량 제한
/users/track 요청: 사용량 제한은 계약에 따라 다릅니다. 가격 책정에 데이터 포인트가 포함된 고객의 경우, Braze는 3초당 3,000건의 버스트 제한을 적용합니다. 그 외 모든 고객의 경우, 계약 조건에 따라 제한이 설정됩니다. 제한에 대한 질문은 Braze 지원팀 또는 고객 성공 매니저에게 문의하세요.

일괄 처리: API 요청당 attributes, events, purchases 전체에서 최대 75개의 오브젝트를 결합할 수 있습니다. 레거시 사용량 제한을 적용받는 고객은 배열별로 최대 75개의 오브젝트를 독립적으로 포함할 수 있습니다. 자세한 내용은 User Track 요청 일괄 처리를 참고하세요.

월간 활성 사용자 CY 24-25, 유니버설 MAU, 웹 MAU, 모바일 MAU 제한: 월간 활성 사용자 CY 24-25 제한을 참고하세요.
/users/export/ids 2024년 8월 22일 이후에 온보딩한 경우: 분당 250건의 요청.

2024년 8월 22일 이전에 온보딩한 경우: 분당 2,500건의 요청.
/users/delete
/users/alias/new
/users/alias/update
/users/identify
/users/merge
분당 20,000건의 요청이며, 엔드포인트 간에 공유됩니다.
/users/external_id/rename 분당 1,000건의 요청.
/users/external_id/remove 분당 1,000건의 요청.
/events/list 시간당 1,000건의 요청이며, /purchases/product_list 엔드포인트와 공유됩니다.
/purchases/product_list 시간당 1,000건의 요청이며, /events/list 엔드포인트와 공유됩니다.
/campaigns/data_series 분당 50,000건의 요청.
/messages/send
/campaigns/trigger/send
/canvas/trigger/send
/campaigns/trigger/schedule/create
/canvas/trigger/schedule/create
브로드캐스트 호출(Segments, 필터 또는 연결된 오디언스를 광범위하게 타겟팅하는 경우)의 경우, 전체 오디언스에 걸쳐 분당 250건의 요청, 그리고 고유 오디언스당 분당 10건의 요청(둘 중 먼저 도달하는 제한이 적용됩니다).

그 외 개별 수신자를 타겟팅하는 경우, 해당 요청은 시간당 250,000건의 공유 사용량 제한에 포함됩니다.
/sends/id/create 일당 100건의 요청.
/subscription/status/set 분당 5,000건의 요청.
/preference_center/v1/{preferenceCenterExternalId}/url/{userId}
/preference_center/v1/list
/preference_center/v1/{preferenceCenterExternalId}
분당 1,000건의 요청.
/preference_center/v1
/preference_center/v1/{preferenceCenterExternalId}
분당 10건의 요청.
/catalogs/{catalog_name}
/catalogs
/catalogs
분당 50건의 요청이며, 엔드포인트 간에 공유됩니다.
/catalogs/{catalog_name}/items
/catalogs/{catalog_name}/items
/catalogs/{catalog_name}/items
분당 16,000건의 요청이며, 엔드포인트 간에 공유됩니다.
/catalogs/{catalog_name}/items/{item_id}
/catalogs/{catalog_name}/items/{item_id}
/catalogs/{catalog_name}/items
/catalogs/{catalog_name}/items/{item_id}
/catalogs/{catalog_name}/items/{item_id}
분당 50건의 요청이며, 엔드포인트 간에 공유됩니다.
/catalogs/{catalog_name}/fields/{field_name}
/catalogs/{catalog_name}/fields
/catalogs/{catalog_name}/selections/{selection_name}
/catalogs/{catalog_name}/selections
분당 50건의 요청이며, 엔드포인트 간에 공유됩니다.
/scim/v2/Users/{id}
/scim/v2/Users?filter={[email protected]}
/scim/v2/Users/{id}
/scim/v2/Users/{id}}
/scim/v2/Users/
일당 회사당 5,000건의 요청이며, 엔드포인트 간에 공유됩니다.
/cdi/integrations 분당 50건의 요청.
/cdi/integrations/{integration_id}/sync 분당 20건의 요청.
/cdi/integrations/{integration_id}/job_sync_status 분당 100건의 요청.
/media_library/create 시간당 100건의 요청.
/media_library/replace_file 시간당 100건의 요청.

공유 사용량 제한이 적용되는 요청

다음 요청에는 시간당 250,000건의 사용량 제한이 적용되며, 엔드포인트 간에 공유됩니다.

동일한 고유 오디언스로 간주되는 기준

이 내용은 다음 엔드포인트에 적용됩니다: /messages/send, /campaigns/trigger/send, /canvas/trigger/send, /campaigns/trigger/schedule/create, /canvas/trigger/schedule/create.

이러한 엔드포인트에서 브로드캐스트 요청은 다음 항목이 모두 일치하는 경우 동일한 고유 오디언스를 타겟팅하는 것으로 간주됩니다:

  • 트리거되는 Campaign 또는 Canvas(API 요청의 campaign_id 또는 canvas_id(지정된 경우))
  • 타겟팅되는 오디언스(Segments 또는 필터, 또는 API Campaign의 경우 API 요청의 segment_id)
  • 연결된 오디언스 필터(API 요청의 audience 오브젝트(지정된 경우))

이러한 속성의 각 고유 조합은 별도의 오디언스로 간주되므로, 각 고유 오디언스에 대한 추가 사용량 제한은 각 조합에 독립적으로 적용됩니다.

API 요청 일괄 처리

Braze API는 일괄 처리(배칭)를 지원하도록 설계되었습니다. 일괄 처리를 사용하면 Braze가 단일 API 호출에서 가능한 한 많은 데이터를 수집할 수 있으므로 많은 API 호출을 수행할 필요가 없습니다. Braze는 한 번에 하나의 호출씩 데이터를 처리하는 것보다 일괄적으로 데이터를 처리하는 것이 더 효율적입니다. 예를 들어, 1,000건의 일괄 API 호출을 처리하는 것이 75,000건의 개별 호출을 처리하는 것보다 리소스를 훨씬 적게 소모합니다. 일괄 처리는 시간당 75,000건 이상의 호출이 필요할 수 있는 모든 애플리케이션에 매우 중요합니다.

사용자 생성 및 업데이트 엔드포인트에 대한 일괄 요청

/users/track 요청에는 attributes, events, purchases 전체를 합산하여 최대 75개의 객체를 포함할 수 있습니다. 각 객체는 한 명의 사용자를 업데이트할 수 있습니다. 단일 고객 프로필은 여러 객체에 의해 업데이트될 수 있습니다.

레거시 사용량 제한

레거시 사용량 제한이 적용되는 고객의 경우, 각 배열(attributes, events, purchases)에 독립적으로 최대 75개의 객체를 포함할 수 있으며, 요청당 최대 225개의 객체를 합산하여 포함할 수 있습니다.

/users/track 사용량 제한에 대한 자세한 내용은 POST: 사용자 생성 및 업데이트를 참조하세요.

이 엔드포인트에 대한 요청은 일반적으로 다음 순서로 처리되기 시작합니다:

  1. 속성
  2. 이벤트
  3. 구매

메시징 엔드포인트 요청 일괄 처리

메시징 엔드포인트에 대한 단일 요청으로 다음 중 하나에 도달할 수 있습니다:

  • 각각 개별 메시지 파라미터를 가진 최대 50개의 특정 external_ids
  • Braze 대시보드에서 생성된 모든 크기의 Segment(segment_id로 지정)
  • 요청에서 연결된 오디언스 객체로 정의된 모든 크기의 추가 오디언스 필터와 일치하는 사용자

일괄 요청 예시

다음 예시에서는 external_id를 사용하여 이메일과 SMS에 대해 하나의 API 호출을 수행합니다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
curl --location --request POST 'https://rest.iad-01.braze.com/v2/subscription/status/set' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer YOUR-REST-API-KEY' \
--data-raw '{
  "subscription_groups":[
    {
      "subscription_group_id":"subscription_group_identifier",
      "subscription_state":"subscribed",
      "external_ids":["example-user","[email protected]"]
    },
    {
      "subscription_group_id":"subscription_group_identifier",
      "subscription_state":"subscribed",
      "external_ids":["example-user","[email protected]"]
    }
  ]
}

사용량 제한 모니터링

Braze로 전송되는 모든 API 요청은 응답 헤더에 다음 정보를 반환합니다.

헤더 이름 설명
X-RateLimit-Limit 지정된 간격 내에서 수행할 수 있는 최대 요청 수(사용량 제한)입니다.
X-RateLimit-Remaining 현재 사용량 제한 윈도우에 남아 있는 요청 수입니다.
X-RateLimit-Reset 현재 사용량 제한 윈도우가 초기화되는 시간(UTC 에포크 초 단위)입니다.

이 정보는 Braze 대시보드가 아닌 API 요청에 대한 응답 헤더에 의도적으로 포함됩니다. 이를 통해 API와 상호작용하는 동안 시스템이 실시간으로 더 잘 반응할 수 있습니다. 예를 들어, X-RateLimit-Remaining 값이 특정 임계값 아래로 떨어지면 모든 트랜잭션 이메일이 전송되도록 발송 속도를 늦출 수 있습니다. 또는 값이 0에 도달하면 X-RateLimit-Reset에 지정된 시간이 경과할 때까지 모든 발송을 일시 중지할 수 있습니다.

API 제한에 대한 질문이 있으시면 고객 성공 매니저에게 문의하거나 지원 티켓을 제출하세요.

엔드포인트 간 최적 지연 시간

Braze API에 연속 호출을 수행할 때 엔드포인트 간 최적 지연 시간을 이해하는 것이 중요합니다. 엔드포인트가 다른 엔드포인트의 성공적인 처리에 의존하는 경우, 너무 빨리 호출하면 오류가 발생할 수 있습니다. 예를 들어, /user/alias/new 엔드포인트를 통해 사용자에게 별칭을 할당한 다음, /users/track 엔드포인트를 통해 해당 별칭으로 커스텀 이벤트를 전송하는 경우 얼마나 기다려야 할까요?

정상적인 조건에서 데이터의 최종 일관성이 달성되는 시간은 10~100ms(1/10초)입니다. 그러나 일관성이 달성되는 데 더 오래 걸리는 경우도 있으므로, 오류 가능성을 최소화하기 위해 후속 호출 사이에 5분의 지연을 두는 것을 권장합니다.

페이로드 크기 제한

Braze API 요청에는 사용량 제한과는 별도로 페이로드 크기 제한이 적용됩니다. 대부분의 엔드포인트는 최대 4 MB의 요청 본문을 허용합니다. 요청이 해당 제한을 초과하면 엔드포인트에 따라 Braze에서 HTTP 413 Request Entity Too Large 또는 HTTP 400 Bad Request로 거부할 수 있습니다.

/users/track/bulk 엔드포인트는 2 MB 페이로드 제한이 적용되며, 요청 본문이 해당 제한을 초과하면 HTTP 400을 반환합니다. 엔드포인트별 제한 및 오류 처리에 대한 자세한 내용은 사용자 데이터 엔드포인트를 참조하세요.

사용량 제한 초기화

사용량 제한은 롤링 윈도우가 아닌 정시 기준으로 초기화됩니다. 예를 들어, 시간당 250,000건의 요청 제한이 있는 경우, 오후 10:00부터 오후 10:59 사이에 50,000건의 요청을 보내고, 오후 11:00부터 오후 11:59 사이에 다시 250,000건의 요청을 보낼 수 있습니다. 이는 매 정시에 카운터가 초기화되기 때문입니다.

New Stuff!