Rightis

개발자 빠른 시작

생성하기 전에 권리를 확인합니다.

Rights ID 와 하려는 일을 보내면 권리자가 정해 둔 허용 범위에 비춰 판단 하나를 돌려줍니다. 판단은 계약을 대신하지 않습니다. 계약은 권리자와 따로 맺습니다.

첫 판단까지 세 단계

  1. 01

    샌드박스 키를 받습니다

    개발자로 가입하면 콘솔에서 샌드박스 키를 바로 발급합니다. 키는 brk_test_ 로 시작하고, 샌드박스 호출에는 요금이 붙지 않습니다. 키는 서버 환경 변수에 두고 브라우저 코드에는 넣지 마세요.

    .env.local
    RIGHTIS_SECRET_KEY=brk_test_…
  2. 02

    요청을 한 번 보냅니다

    Rights ID, 쓰려는 용도(use_type), 쓰려는 자산(asset_types)을 보냅니다. 샌드박스에서는 실제 사람 대신 지어낸 샘플 사람을 씁니다. 샘플 사람의 Rights ID 는 같은 키로 받는 목록에 있습니다.

    샘플 사람 목록
    curl https://rightis.org/api/v1/sandbox/people \
      -H "Authorization: Bearer $RIGHTIS_SECRET_KEY"
    권리 확인 요청
    curl -X POST https://rightis.org/api/v1/rights/check \
      -H "Authorization: Bearer $RIGHTIS_SECRET_KEY" \
      -H "Content-Type: application/json" \
      -d '{
        "rights_id": "BR-SANDBOX-…",
        "use_type": "instagram ad",
        "asset_types": ["face"]
      }'
  3. 03

    decision 과 next_action 을 읽습니다

    decision 은 물어본 일에 대한 판단 하나입니다. 용도가 여러 범위에 걸치면 제한이 센 쪽이 이깁니다. 다음에 할 일은 next_action 이 알려 줍니다.

    응답 예시
    {
      "rights_id": "BR-SANDBOX-…",
      "registered": true,
      "decision": "allowed",
      "scopes": [
        { "scope": "social_media_ad", "state": "allowed" }
      ],
      "unmapped": [],
      "next_action": {
        "type": "request_license",
        "url": "https://rightis.org/…",
        "auto_approves": true
      }
    }

decision 읽는 법

allowed
권리자가 미리 허용해 둔 범위입니다. 무료로 써도 된다는 뜻이 아닙니다. 계약 요청이 권리자 확인 없이 승인될 수 있다는 뜻이고, 그래서 next_action 은 이때도 request_license 입니다.
requires_approval
권리자가 직접 결정합니다. 우리 분류로 옮기지 못한 낱말이 있을 때도 이 값입니다. next_action 은 request_license 입니다.
unspecified
권리자가 이 일에 대해 정한 적이 없습니다. 허용으로 읽지 마세요. next_action 은 request_license 입니다.
denied
권리자가 거부한 범위가 하나라도 있습니다. next_action 은 stop 이고, 생성하지 않습니다.

대장에 없는 Rights ID 는 decision 없이 next_action 이 not_registered 로 옵니다. 등록이 없다는 것은 허락이 아닙니다.

가입 없이 먼저 해 보기

키 없는 공개 경로가 같은 방식으로 판단을 돌려줍니다. 공개 등록소에 올라간 실제 사람만 답하고, 샌드박스 샘플 사람은 이 경로에서 찾을 수 없습니다.

키 없는 요청
curl -X POST https://rightis.org/api/public/v1/rights/resolve \
  -H "Content-Type: application/json" \
  -d '{
    "rights_id": "BR-XV7E-8X7Z-ERB7",
    "use_type": "instagram ad",
    "asset_types": ["face"]
  }'

CLI 와 SDK

CLI 는 키 발급부터 첫 확인까지를 터미널 몇 줄로 끝내고, SDK 는 그 확인을 코드 세 줄로 부릅니다. 둘 다 npm 에 공개돼 있고 소스는 GitHub 에 있습니다.

CLI (npm: rightis)
npx rightis login
npx rightis init
npx rightis people
npx rightis check BR-SANDBOX-ALLW --use "social media ad" --asset face
SDK (npm: @rightis/sdk)
npm install @rightis/sdk

import { Rightis } from '@rightis/sdk';
const rightis = new Rightis(); // RIGHTIS_SECRET_KEY 를 읽는다
const result = await rightis.rights.check({ rights_id: 'BR-SANDBOX-ALLW', use_type: 'social media ad', asset_types: ['face'] });
console.log(result.decision, result.next_action.type);

실제 인물을 다루는 기능을 만든다면

아바타, 얼굴 바꾸기, 목소리 복제, 유명인 챗봇처럼 실제 사람의 얼굴이나 목소리를 쓰는 기능에서 무엇을 확인하고 판단마다 무엇을 할지 정리했습니다. 관련 법은 시행 중인 것과 법안을 나눠 적었습니다.

코드를 쓰기 전에 ChatGPT 에서 Rightis 앱으로 이름이나 Rights ID 를 조회해 볼 수 있습니다. ChatGPT 에서 조회해 보기

AI 코딩 도구에 붙이기

Claude Code 나 Cursor 같은 코딩 도구가 생성 기능을 만들 때 Rightis 확인을 넣도록 알려 주는 규칙 파일을 GitHub 저장소에 둡니다. 도구가 이 저장소의 파일을 저절로 가져가지는 않습니다. 쓰려면 파일을 내 프로젝트에 복사해 넣습니다.

개발자 빠른 시작 | Rightis