본문으로 건너뛰기
한국어 번역 진행 중한국어 문서를 완성하는 동안 일부 가이드와 API 설명은 아직 영어로 표시될 수 있습니다.

프로바이더 한도(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_betdecimal string>= 0최소 허용 베팅 금액
max_betdecimal 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_betdecimal string>= 0브랜드별 최소 베팅 금액
max_betdecimal 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_betmax_bet 이하여야 합니다. min_bet > max_bet인 요청은 422 Unprocessable Entity를 반환합니다.
  • 각 PUT 요청에 두 한도 값이 모두 필수입니다. 한도에 대한 부분 수정은 지원되지 않으며, 항상 min_betmax_bet을 모두 제공해야 합니다.
  • 팀 수준 한도가 "0.00" / "0.00"인 경우 "한도 미설정"으로 처리됩니다. 유효 값 관점에서, 팀 수준과 브랜드 수준 한도가 모두 설정되지 않으면 플랫폼은 베팅 금액 제한을 적용하지 않습니다.
  • 브랜드 수준 한도는 브랜드의 허용 목록에 있는 프로바이더에 대해서만 표시됩니다. 브랜드별 한도를 설정하기 전에 해당 프로바이더를 브랜드의 허용 목록에 추가하십시오.
  • 브랜드 수준 재정의 삭제는 아직 API를 통해 지원되지 않습니다. 팀 기본값으로 효과적으로 되돌리려면 브랜드 한도를 팀 한도 값과 동일하게 설정하십시오.
  • 프로바이더 ID가 필수입니다. 팀에서 사용 가능한 프로바이더 ID 및 코드 목록을 얻으려면 Ruby 담당 계정 매니저에게 문의하십시오.
  • 한도 변경 사항은 게임 서버에 자동으로 전파됩니다. 수동 재시작이나 새로고침이 필요하지 않습니다.