개발자
하나의 API로, 모든 제품에.
먼저 신원 확인을 한 뒤 후원 계정을 만들고, 그다음 바인드와 언락을 합니다. API 키는 여러분의 서버에 그대로 남습니다. 브라우저나 모바일 앱은 여러분의 백엔드와 통신하고, 그 백엔드가 저희와 통신합니다. WharfKit 지갑 세션과 패스키를 지원합니다.
const baseUrl = process.env.BOUND_IDENTITY_URL!;
const apiKey = process.env.BOUND_IDENTITY_API_KEY!; // server-side only
async function identityFetch(path, init) {
const res = await fetch(baseUrl + path, {
...init,
headers: {
Authorization: "Bearer " + apiKey,
Accept: "application/json",
"Content-Type": "application/json",
...init?.headers,
},
});
const body = await res.json();
if (!res.ok) throw new Error(body.message || "HTTP " + res.status);
return body;
}
// 1. Verify the person first — no chain account yet (default organization policy).
const { personDid, verificationUrl } = await identityFetch("/v1/kyc/start", {
method: "POST",
body: JSON.stringify({}),
});
// … open verificationUrl from your KYC provider …
// 2. When approved, take the one-time create token.
const { kycCreateToken } = await identityFetch(
"/v1/kyc/status?personDid=" + encodeURIComponent(personDid),
);
// 3. Sponsor the provisional account. Token replay is rejected.
const { accountDid } = await identityFetch("/v1/accounts/free", {
method: "POST",
body: JSON.stringify({
ownerPublicKey,
personDid,
kycCreateToken,
// Production also requires emailProofToken + phoneProofToken
}),
});
// 4. Bind the approved person to this account: the user signs once.
const { payloadToSign, message } = await identityFetch("/v1/bind/challenge", {
method: "POST",
body: JSON.stringify({ accountDid, personDid }),
});
await identityFetch("/v1/bind/confirm", {
method: "POST",
body: JSON.stringify({
accountDid,
personDid,
nonce: message.nonce,
signature, // WharfKit / passkey over payloadToSign
}),
});
// 5. Lift faucet limits. Done.
await identityFetch("/v1/accounts/unlock", {
method: "POST",
body: JSON.stringify({ accountDid }),
});신분증은 여러분의 코드를 거치지 않으며, 시크릿이 브라우저에 도달하지도 않습니다. 기본 조직은 KYC가 승인될 때까지 무료 계정 생성을 거부합니다. sandbox.identityinc.io 샌드박스에 먼저 연동하세요, 무료 테스트 확인, 시뮬레이션 체인, 그다음 프로덕션 트래픽을 Builder 또는 Growth로 옮기세요.
가이드 및 레퍼런스
빠른 시작, 인증, 웹훅, API가 반환하는 모든 오류 코드. 영어로 제공됩니다.
API
OpenAPI 사양: https://identityinc.io/openapi.yaml. 프로덕션: https://api.identityinc.io. 샌드박스: https://sandbox.identityinc.io (bi_test_ 키, 무료 테스트 확인, 시뮬레이션 체인). 로컬 개발 기본값은 http://127.0.0.1:4100입니다.
제품마다 키 하나
운영하는 제품마다 별도의 API 키를 발급하세요: 지갑, 마켓플레이스, 코어뱅킹 연동 등. 각 키는 자기 데이터만 볼 수 있으며, 이 분리는 관행이 아니라 API가 강제합니다. 샌드박스 키는 sandbox.identityinc.io 체크아웃의 bi_test_…, 프로덕션 키는 identityinc.io 가입의 bi_…: 호스트를 섞지 마세요.