---
title: 변경 내역
---

# 변경 내역

CaptchaLa API 및 SDK의 주요 변경 사항입니다. 날짜는 UTC 기준입니다.

## API

### 2026-06-20

- **`/v1/validate` 응답**이 이제 `captcha_args` 객체를 반환합니다. 로깅이나 자체 리스크 점수 산정을 위해 해결 시점의 컨텍스트를 돌려줍니다(합격/불합격 판정에는 필요하지 않습니다).
  - `platform` — `web` / `android` / `ios` / `flutter` / `windows` / …
  - `user_ip` — 해결 시점에 기록된 최종 사용자 IP
  - `referer` — 해결 페이지 URL(web). 네이티브에서는 `null`
  - `pkg` — 앱 패키지 / 번들 ID(네이티브). web에서는 `null`
  - `solved_at` — 해결 완료 시각(유닉스 초)
  - `risk_score` — 해결 시점의 리스크 점수(0~100, 높을수록 위험)
- `/v1/validate`의 **`client_ip`**는 **선택 사항이지만 권장**합니다. 들어오는 요청에 담긴 최종 사용자 IP로, 추가 리스크 검사에 사용됩니다. 생략해도 안전합니다. (해결 시점과 제출 시점의 IP를 정확히 일치시키는 방식은 CDN 및 듀얼 스택 IPv4/IPv6 네트워크에서 정상 사용자를 거부했기 때문에 폐기되었습니다.)
- 완전히 하위 호환됩니다. 기존 연동은 변경 없이 그대로 동작합니다.

## PHP SDK (`captchala/captchala-php`)

### 1.2.3 — 2026-06-20

- `ValidateResult::getUserIp()`와 `ValidateResult::getCaptchaArgs()`를 추가했습니다.
- `validate()`의 `$clientIp`는 이제 선택 사항이지만 권장됩니다(리스크 검사에 사용). 하위 호환됩니다.

## Go SDK (`github.com/Captcha-La/captchala-go`)

### 1.2.2 — 2026-06-20

- `ValidateResult.CaptchaArgs`를 추가했습니다(`CaptchaArgs` 구조체: `Platform`, `UserIP`, `Referer`, `Pkg`, `SolvedAt`, `RiskScore`).
- `ValidateWithClientIP`의 IP 인자는 이제 선택 사항이지만 권장됩니다. 하위 호환됩니다.
