프로바이더 한도(Provider Limits)
사용 사례
프로바이더 한도(Provider Limits)는 플랫폼이 게임 프로바이더별로 적용하는 최소 및 최대 베팅 금액을 제어합니다. 한도는 두 가지 수준에서 운영됩니다:
- 팀 수준 한도(Team-level limits) — 특정 프로바이더에 대해 모든 브랜드에 걸쳐 적용되는 기본 최소/최대 베팅 금액.
- 브랜드 수준 한도(Brand-level limits) — 특정 프로바이더에 대해 팀 수준 기본값보다 우선 적용되는 브랜드별 재정의 값.
이 2단계 시스템을 통해 플랫폼 전체에 합리적인 기본값을 설정한 후, 개별 브랜드에 대해 세밀하게 한도를 조정할 수 있습니다 (예: VIP 또는 대량 거래 운영사를 수용하기 위해).
유효 한도 우선순위:
Brand-level limit → (설정된 경우 이 값이 적용됩니다)
Team-level limit → (브랜드 재정의가 없을 때의 대체값)
No limit → (어느 쪽도 설정되지 않은 경우 한도 미적용)
전체 흐름 — 팀 수준 한도
단계 1 — 팀 수준 한도 목록 조회
GET /api/provider-limit/team
팀에 설정된 모든 팀 수준 프로바이더 한도를 반환합니다.
쿼리 파라미터 없음.
응답:
[
{
"provider_id": 3,
"provider_code": "evolution",
"min_bet": "1000.00",
"max_bet": "5000000.00"
},
{
"provider_id": 7,
"provider_code": "pragmatic",
"min_bet": "500.00",
"max_bet": "2000000.00"
},
{
"provider_id": 12,
"provider_code": "betconstruct",
"min_bet": "1000.00",
"max_bet": "10000000.00"
}
]
한도 기록이 있는 프로바이더만 반환됩니다. 한도가 설정되지 않은 프로바이더는 목록에 표시되지 않습니다.
단계 2 — 팀 수준 한도 설정 또는 수정
PUT /api/provider-limit/team/{provider_id}
특정 프로바이더의 팀 수준 최소/최대 베팅 금액을 생성하거나 수정합니다. 이 작업은 업서트(upsert) 방식으로 동작합니다 — 한도가 이미 존재하면 수정되고, 그렇지 않으면 새 기록이 생성됩니다.
경로 파라미터: provider_id — 프로바이더의 숫자 ID.
요청 본문:
{
"min_bet": "1000.00",
"max_bet": "5000000.00"
}
| 필드 | 타입 | 필수 여부 | 제약 조건 | 설명 |
|---|---|---|---|---|
min_bet | decimal string | 예 | >= 0 | 최소 허용 베팅 금액 |
max_bet | decimal string | 예 | >= 0, >= min_bet | 최대 허용 베팅 금액 |
응답 (200 OK):
{
"provider_id": 3,
"provider_code": "evolution",
"min_bet": "1000.00",
"max_bet": "5000000.00"
}
한도 변경 사항은 게임 서버에 자동으로 전파됩니다. 수동 재시작이나 새로고침이 필요하지 않습니다.
전체 흐름 — 브랜드 수준 한도
단계 3 — 브랜드 수준 한도 목록 조회
GET /api/provider-limit/brand/{brand_id}
특정 브랜드의 허용 목록(Whitelist)에 있는 모든 프로바이더에 대한 한도 설정을 반환합니다. 각 항목에는 팀 수준 한도, 브랜드 수준 재정의(설정된 경우), 그리고 산출된 유효 한도가 포함됩니다.
경로 파라미터: brand_id — 브랜드의 숫자 ID.
응답:
[
{
"provider_id": 3,
"provider_code": "evolution",
"team_min_bet": "1000.00",
"team_max_bet": "5000000.00",
"brand_min_bet": "5000.00",
"brand_max_bet": "10000000.00",
"effective_min_bet": "5000.00",
"effective_max_bet": "10000000.00",
"has_override": true
},
{
"provider_id": 7,
"provider_code": "pragmatic",
"team_min_bet": "500.00",
"team_max_bet": "2000000.00",
"brand_min_bet": null,
"brand_max_bet": null,
"effective_min_bet": "500.00",
"effective_max_bet": "2000000.00",
"has_override": false
}
]
| 필드 | 설명 |
|---|---|
team_min_bet / team_max_bet | 해당 프로바이더의 팀 수준 기본값. 팀 한도가 설정되지 않은 경우 "0.00". |
brand_min_bet / brand_max_bet | 브랜드별 재정의 값. 해당 브랜드에 재정의가 설정되지 않은 경우 null. |
effective_min_bet / effective_max_bet | 실제 적용되는 한도: 브랜드 재정의가 있으면 해당 값, 없으면 팀 기본값. |
has_override | 해당 브랜드에 이 프로바이더에 대한 명시적 재정의가 있으면 true. |
브랜드의 프로바이더 허용 목록에 포함된 프로바이더만 반환됩니다. 허용 목록 설정 방법은 브랜드 관리 가이드를 참조하십시오.
브랜드가 존재하지 않거나 다른 팀에 속한 경우 404 Not Found가 반환됩니다.
단계 4 — 브랜드 수준 한도 설정 또는 수정
PUT /api/provider-limit/brand/{brand_id}/{provider_id}
특정 프로바이더에 대한 브랜드 수준 한도 재정의를 생성하거나 수정합니다. 이 작업은 업서트(upsert) 방식으로 동작합니다.
경로 파라미터:
| 파라미터 | 설명 |
|---|---|
brand_id | 브랜드의 숫자 ID |
provider_id | 프로바이더의 숫자 ID |
요청 본문:
{
"min_bet": "5000.00",
"max_bet": "10000000.00"
}
| 필드 | 타입 | 필수 여부 | 제약 조건 | 설명 |
|---|---|---|---|---|
min_bet | decimal string | 예 | >= 0 | 브랜드별 최소 베팅 금액 |
max_bet | decimal string | 예 | >= 0, >= min_bet | 브랜드별 최대 베팅 금액 |
응답 (200 OK): 유효 값이 포함된 전체 BrandLimitResponse:
{
"provider_id": 3,
"provider_code": "evolution",
"team_min_bet": "1000.00",
"team_max_bet": "5000000.00",
"brand_min_bet": "5000.00",
"brand_max_bet": "10000000.00",
"effective_min_bet": "5000.00",
"effective_max_bet": "10000000.00",
"has_override": true
}
한도 변경 사항은 게임 서버에 자동으로 전파됩니다. 수동 재시작이나 새로고침이 필요하지 않습니다.
주요 참고 사항
min_bet은max_bet이하여야 합니다.min_bet > max_bet인 요청은422 Unprocessable Entity를 반환합니다.- 각 PUT 요청에 두 한도 값이 모두 필수입니다. 한도에 대한 부분 수정은 지원되지 않으며, 항상
min_bet과max_bet을 모두 제공해야 합니다. - 팀 수준 한도가
"0.00"/"0.00"인 경우 "한도 미설정"으로 처리됩니다. 유효 값 관점에서, 팀 수준과 브랜드 수준 한도가 모두 설정되지 않으면 플랫폼은 베팅 금액 제한을 적용하지 않습니다. - 브랜드 수준 한도는 브랜드의 허용 목록에 있는 프로바이더에 대해서만 표시됩니다. 브랜드별 한도를 설정하기 전에 해당 프로바이더를 브랜드의 허용 목록에 추가하십시오.
- 브랜드 수준 재정의 삭제는 아직 API를 통해 지원되지 않습니다. 팀 기본값으로 효과적으로 되돌리려면 브랜드 한도를 팀 한도 값과 동일하게 설정하십시오.
- 프로바이더 ID가 필수입니다. 팀에서 사용 가능한 프로바이더 ID 및 코드 목록을 얻으려면 Ruby 담당 계정 매니저에게 문의하십시오.
- 한도 변경 사항은 게임 서버에 자동으로 전파됩니다. 수동 재시작이나 새로고침이 필요하지 않습니다.