원격 ꡬ성

πŸ“˜

HTTP APIλŠ” μ„œλ²„ ν™˜κ²½μ—μ„œλ§Œ μ‚¬μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

HTTP APIλ₯Ό μ‚¬μš©ν•˜μ—¬ μ‚¬μš©μžμ— λŒ€ν•œ 원격 ꡬ성 νŒŒλΌλ―Έν„° 정보λ₯Ό μ‘°νšŒν•  수 μžˆμŠ΅λ‹ˆλ‹€.


Authentication

SDK ν‚€λ₯Ό 톡해 인증을 μ§„ν–‰ν•©λ‹ˆλ‹€. SDK ν‚€λ₯Ό HTTP ν—€λ”λ‘œ 전솑해야 ν•©λ‹ˆλ‹€.
APIλ₯Ό ν˜ΈμΆœν•˜λŠ” 곳에따라 Browser, App, Server SDK 킀쀑 ν•˜λ‚˜λ₯Ό ν—€λ”λ‘œ μ„€μ •ν•©λ‹ˆλ‹€.

X-HACKLE-API-KEY: {YOUR_SDK_KEY}


Request

POST https://api.hackle.io/v1/remote-config

Request Body

FieldTypeRequiredDescription
parameterKeystringO원격 ꡬ성 νŒŒλΌλ―Έν„°
defaultValuestring, number, booleanO원격 ꡬ성 값을 κ²°μ •ν•  수 없을 λ•Œ λ°˜ν™˜λ˜λŠ” κ°’
userUser objectO원격 ꡬ성 λΆ„λ°° μ‚¬μš©μž

πŸ“˜

defaultValue의 Type은 원격 ꡬ성 μ„€μ •μ˜ νŒŒλΌλ―Έν„° μœ ν˜•κ³Ό μΌμΉ˜ν•΄μ•Ό ν•©λ‹ˆλ‹€.

defaultValue 의 Type κ³Ό νŒŒλΌλ―Έν„° μœ ν˜•μ΄ μΌμΉ˜ν•˜μ§€ μ•ŠλŠ” 경우, defaultValue 의 값을 μ‘λ‹΅λ°›μŠ΅λ‹ˆλ‹€. (λΆ„λ°°μ‚¬μœ : TYPE_MISMATCH)
νŒŒλΌλ―Έν„° μœ ν˜•μ΄ JSON 인 경우 defaultValue λŠ” string Type 으둜 μž…λ ₯ν•΄μ•Ό ν•©λ‹ˆλ‹€.

User Object

FieldTypeRequiredDescription
userIdstringXμ‚¬μš©μž ID (핡클 ν†΅ν•©μ‹λ³„μž μ‚¬μš© κ°€λŠ₯)
deviceIdstringXλ””λ°”μ΄μŠ€ ID (핡클 톡합 μ‹λ³„μž μ‚¬μš©κ°€λŠ₯)
identifiersobjectXμ‚¬μš©μž μ •μ˜ μ‹λ³„μž
key(string)-value(string) Pair
propertiesobjectXμ‚¬μš©μž 속성
key(string)-value(string|number|boolean) Pair

Example

curl -i -X POST \
  'https://api.hackle.io/v1/remote-config' \
  -H 'X-HACKLE-API-KEY: YOUR_SDK_KEY_HERE' \
  -H 'Content-Type: application/json' \
  -d '{
    "parameterKey": "parameter_key",
    "defaultValue": "default_value",
    "user": {
      "userId": "19285035",
      "deviceId": "ae2182e0",
      "identifiers": {
        "sessionId": "16930492542",
        "myCustomId": "ff01eae2"
      },
      "properties": {
        "grade": "GOLD",
        "age": 30,
        "isLogin": true
      }
    }
  }'

Response

200 OK

성곡적인 μš”μ²­μΈ 경우 200 응닡과 λΆ„λ°° κ²°κ³Όλ₯Ό λ°˜ν™˜ν•©λ‹ˆλ‹€.

Response Body

FieldTypeDescription
valuestring, number, boolean원격 ꡬ성 νŒŒλΌλ―Έν„° κ°’
reasonstringλΆ„λ°°μ‚¬μœ 

Example

{
  "value": "paramter_value",
  "reason": "DEFAULT_RULE"
}

400 Bad Request

μœ νš¨ν•˜μ§€ μ•Šμ€ μš”μ²­ 정보인 경우 400 μƒνƒœλ₯Ό λ°˜ν™˜ν•©λ‹ˆλ‹€.

401 Unauthorized

X-HACKLE-API-KEY 헀더값이 μ—†κ±°λ‚˜ μœ νš¨ν•˜μ§€ μ•Šμ€ SDK 킀인 경우 401 μƒνƒœλ₯Ό λ°˜ν™˜ν•©λ‹ˆλ‹€