API 키 발급받기
API 키는 Kaleidr에서 사용자의 조직을 식별합니다. 브라우저나 서버에서 키를 사용하는 모든 요청은 조직의 요금제에 따라 허용되고 조직의 사용량에 반영됩니다. kaleidr.com/api-keys에서 키를 만들고 관리할 수 있습니다.
Chat, Editor, Tile을 사용하거나 서버 API를 호출하려면 키가 필요합니다. 그러나 Viewer로 게시된 지도를 삽입할 때는 키가 필요하지 않으며 지도 ID만 있으면 됩니다.
두 가지 키 유형
키는 두 유형으로 나뉩니다. 키를 사용하는 코드가 실행되는 위치에 따라 선택하세요.
| 공개 가능 키 | 서버 키 | |
|---|---|---|
| 접두사 | kld_pk_live_… | kld_sk_live_… |
| 사용 위치 | 웹페이지의 SDK 및 <kaleidr-map> 요소 | 사용자 서버에서만 |
| 페이지 소스에 노출 가능 | 예 | 아니요. 비밀번호처럼 보호하세요. |
| 사용 방식 | SDK가 키를 단기 세션 토큰으로 교환하며, 세션으로 API 요청을 전송 | 매 요청에 Authorization: Bearer 또는 X-Api-Key로 직접 전송 |
| 제한 가능한 범위 | 허용된 출처 목록에 있는 웹사이트 | 키 API에서 설정하는 IP 허용 목록 등 모든 제한 |
| 요금제 | Free, Pro, Enterprise | Pro, Enterprise |
| API Keys 페이지의 이름 | Browser / Embed Key | Server Key |
방문자 브라우저에서 실행되는 코드에는 공개 가능 키를 사용하세요. 키가 공개되는 것을 전제로 설계되었습니다. 허용 출처 목록과 API를 직접 호출할 수 없다는 점이 보호 수단입니다. 공개 가능 키를 API 엔드포인트에 직접 보내면 401 publishable_requires_session으로 거부됩니다.
백엔드가 Kaleidr를 호출할 때는 서버 키를 사용하세요. 예를 들어 주소 지오코딩 작업, 자체 프런트엔드에 답변을 스트리밍하는 API 경로, 모바일 앱 백엔드에서 사용합니다. 브라우저가 보내는 Origin 헤더를 포함한 요청에서 서버 키를 사용하면 403 server_key_in_browser로 거부됩니다. SDK도 요청을 보내기 전에 해당 키를 사용한 마운트를 거부합니다. 웹페이지나 모바일 앱 바이너리에 서버 키를 절대 포함하지 마세요.
두 유형 모두 동일한 조직에 속하며 동일한 사용량 풀을 공유합니 다. 세션, 조직 및 사용량 계산은 Kaleidr 작동 원리를 참조하세요.
두 유형 도입 이전에 만들어진 키는 kld_live_로 시작합니다. 현재도 작동하며 서버 키처럼 직접 전송합니다.
요금제별 허용 범위
조직의 요금제는 생성 가능한 키 유형, 키가 가질 수 있는 권한 범위, 마운트할 수 있는 제품을 결정합니다.
| 요금제 | 공개 가능 | 서버 | 허용 범위 | 허용 제품 |
|---|---|---|---|---|
| Free | 예 | — (403 free_plan_publishable_only) | ai, maps, design | chat, editor, viewer, tile |
| Pro | 예 | 예 | ai, maps, design | chat, editor, viewer, tile |
| Enterprise | 예 | 예 | ai, maps, design, vendor* | chat, editor, viewer, tile |
* vendor는 기본으로 포함되지 않으며 Enterprise 키에만 부여할 수 있습니다. 범위를 참고하세요.
요금제마다 조직이 가질 수 있는 활성 키 수도 제한됩니다.
| 요금제 | 활성 키 수 |
|---|---|
| Free | 2 |
| Pro | 10 |
| Enterprise | 25 |
한도를 넘으면 키 생성이 409 key_limit_reached로 거부됩니다. 새 키를 만들려면 기존 키를 폐기하세요. 키 교체는 새 키 생성으로 계산하지 않지만, 이전 키는 유예 기간이 끝날 때까지 한도에 포함됩니다.
이 표에서 알아야 할 다섯 가지 사항은 다음과 같습니다.
- Free는 모든 브라우저 제품을 지원합니다. Free 조직은 사이트에 Chat, Editor, Tile, Viewer를 사용할 수 있습니다. Chat 답변은 매월 제공되는 AI 크레딧을 소모합니다. 소진되면 다음 청구 기간, 추가 팩 구매 또는 요금제 업그레이드 때까지 요청에 429가 반환됩니다.
- Viewer는 요금제가 지원하므로 표에 있는 것이지 키가 필요해서가 아닙니다. 게시된 지도는 모든 요금제에서 키 없이 삽입할 수 있습니다.
- Pro는 서버 키와 더 많은 키를 제공합니다. 백엔드용 서버 키를 생성할 수 있으며 활성 키 한도가 2개에서 10개로 늘어납니다. 지원되는 범위와 제품은 Free와 동일합니다.
- 자체 비즈니스 데이터를 AI 답변에 사용하는 기능은 업로드와 조회 모두 Enterprise 전용입니다. Enterprise 조직의 소유자 또는 관리자는 계약상 제한 안에서 비즈니스 데이터를 업로드할 수 있으며 Kaleidr Studio 도우미가 로그인된 조직 구성원의 질문에 활용합니다. Free와 Pro는 업로드할 수 없습니다. API 또는 SDK에서 해당 데이터를 읽는
vendor범위도 Enterprise에서만 허용됩니다. Free 또는 Pro에서vendor를 포함한 키를 만들려고 하면 403tier_capability_not_allowed가 반환됩니다. 내 데이터를 참고하세요. - 모든 요금제에서 Kaleidr Studio 지도에 데이터셋을 추가할 수 있습니다. 로그인 사용자는 Data 패널에서 스프레드시트와 지리 파일을 올립니다. Free는 데이터셋당 50,000행, 파일당 32 MiB, 조직 전체 250,000행까지 가능하고, Pro는 100,000행, 64 MiB, 전체 5,000,000행입니다. Enterprise의 데이터셋 및 파일 한도는 Pro와 같으며(100,000행과 64 MiB) 조직 전체 한도는 계약에 따릅니다. 데이터는 Studio와 게시된 지도에 표시되며 Studio AI 도우미가 답변에도 활용할 수 있으나 API 키로는 읽을 수 없습니다. 지도 데이터셋을 참고하세요.
요금제 가격과 제공량은 가격 페이지에 있습니다. Enterprise 한도는 계약에 따라 맞춤 설정됩니다.
범위
범위(scope)는 키에 부여된 권한입니다. 제품이나 엔드포인트는 필요한 권한을 확인합니다.
| 범위 | 허용되는 기능 | 새 키에 포함 여부 |
|---|---|---|
ai | Chat 및 서버 API의 채팅, 장소, 지오코딩 엔드포인트 | 포함 |
maps | Tile 기본 지도 세션 | 포함 |
design | Editor 및 서버 API의 디자인 엔드포인트 | 포함 |
vendor | 조직의 게시된 비즈니스 데이터를 Chat 답변에 활용 | 기본 미포함. 별도 요청 필요, Enterprise 전용. |
API Keys 페이지에서 만든 키는 항상 ai, maps, design을 포함합니다. 이 페이지에는 범위 선택기가 없습니다. vendor(Enterprise 전용)를 추가하거나 기본 범위를 제외하려면 키 API를 사용하세요.
범위는 키 생성 시 확정됩니다. 나중에 수정할 수 없으며 교체 시에도 보통 유지됩니다. 다만 현재 요금제에서 허용되지 않는 범위는 새 키에서 빠지고, Free에서는 새 키에 Free의 전체 기능을 부여합니다(요금제 변경 참조). 범위를 변경하려면 새 키를 만든 다음 이전 키를 폐기하세요.
요금제가 변경될 때
키가 할 수 있는 작업은 키의 권한과 현재 요금제가 허용하는 기능의 교집합으로 결정되며, 매 요청마다 확인합니다.
Enterprise에서 Pro 또는 Free로 변경할 때. 기존 키는 계속 작동합니다. vendor를 가진 키의 저장된 설정에는 그 범위가 남지만 실제로는 적용되지 않아 답변에 자체 비즈니스 데이터가 포함되지 않습니다. 오류 없이 일반 지식으로 답변합니다. 변경 전에 발급된 브라우저 세션은 종료되어 다음 요청이 401을 반환하고 SDK가 새 요금제에서 세션을 다시 받습니다. Pro에서 이러한 키를 교체하면 vendor가 없는 새 키가 발급되며 다른 범위와 제품 목록은 유지됩니다. 비즈니스 데이터 업로드는 403 vendor_data_not_on_plan로 거부됩니다. 소유자와 관리자는 이전 릴리스를 계속 조회, 게시 취소, 삭제할 수 있습니다.
Free로 변경할 때. 서버 키를 새로 만들거나 보유한 서버 또는 레거시 키를 교체할 수 없으며 403 free_plan_publishable_only가 반환됩니다. Free에서 공개 가능 키를 교체하면 기존 설정과 관계없이 ai, maps, design 및 네 가지 제품 모두를 허용하는 새 키가 발급됩니다. Studio 지도에 추가했던 데이터셋은 유지되지만 새 업로드에는 Free의 데이터셋 제한이 적용됩니다. 기존 브라우저 세션은 종료되고 SDK가 새 세션을 받습니다.
상위 요금제로 돌아가면 허용되는 기능이 복원됩니다. 설정에 vendor가 남아 있는 키는 Enterprise에서 데이터에 다시 접근할 수 있습니다. 낮은 요금제에서 교체한 새 키는 범위를 자동으로 복구하지 않으므로 새로 만들어야 합니다.
키 생성
조직의 소유자 또는 관리자여야 합니다.
- kaleidr.com에 로그인한 뒤 kaleidr.com/api-keys를 엽니다. Your API Keys에 조직의 키가 표시됩니다.
- Create Key를 선택하면 세 가지 필드가 있는 Create a Key 창이 열립니다.
- Key Name.
Production site와 같은 이름을 붙이세요. 방문자에게는 표시되지 않습니다. 폐기 시 구분할 수 있도 록 사용 위치에 따라 이름을 정하세요. - Key Type. Browser / Embed Key(공개 가능) 또는 Server Key를 선택합니다. Free에서는 Server Key 선택 항목이 보이지 않습니다. 유형은 나중에 바꿀 수 없습니다.
- Allowed Origins. 공개 가능 키의 경우 허용할 사이트를
https://www.example.com, https://app.example.com처럼 쉼표로 구분하여 입력합니다. 비워 두면 모든 사이트를 허용합니다. 형식은 허용 출처를 참고하세요. 서버 키는 특정 사이트에 연결되지 않으므로 비워 둡니다. - Create Key를 선택합니다.
- 지금 키를 복사하세요. 창에 “Copy this key now — it won't be shown again.”이라는 경고와 함께 전체 값이 단 한 번 표시됩니다. Copy를 눌러 안전하게 보관하고 Done을 선택하세요. Kaleidr는 키 전체 값을 저장하지 않습니다. 잃어버리면 키를 교체하여 새 값을 받아야 합니다.
확인할 결과: 새 키가 표에 나타나며 Key에 앞부분 문자, 이름, 유형(Browser 또는 Server), Active 상태, 오늘 날짜가 표시됩니다.
**"You must be an organization admin to manage API keys."**라는 메시지가 표시되면 조직 소유자나 관리자에게 키 생성 또는 역할 변경을 요청하세요.
허용된 출처
허용 출처는 공개 가능 키를 사용할 수 있는 사이트의 목록입니다. SDK가 키를 세션으로 교환할 때 브라우저는 페이지의 출처를 Origin 헤더로 전송하며 Kaleidr가 목록과 비교합니다.
- 목록이 비어 있으면 모든 사이트가 허용됩니다. 개발 단계에는 편리하지만 다른 사람이 페이지 소스의 키를 복사해 자기 사이트에서 사용하면서 조직의 할당량을 소모할 수 있습니다. 운영용 키에는 반드시 목록을 설정하세요.
- 항목이 하나 이상 있으면 목록에 있는 출처만 허용됩니다. 정확히 일치해야 합니다.
https://example.com은https://www.example.com을 포함하지 않으며http://localhost:3000은http://localhost:5173을 포함하지 않습니다. 각각 추가하세요.
출처는 스킴, 호스트, 선택적 포트로 구성되며 경로를 포함하지 않습니다.
| 항목 | 허용 여부 |
|---|---|
https://www.example.com | 예 |
https://app.example.com:8443 | 예 |
http://localhost:8000 | 예. http는 localhost 및 127.0.0.1에서만 허용됩니다. http://[::1]은 키 관리 API에서 설정할 수 있지만 이 페이지에서는 불가능합니다. |
http://www.example.com | 아니요. 로컬이 아닌 사이트는 https가 필요합니다. |
https://www.example.com/store | 아니요. 출처에는 경로가 없습니다. |
*.example.com | 아니요. 와일드카드는 지원하지 않습니다. https://*.example.com은 그대로 저장되지만 어떤 사이트와도 일치하지 않습니다. |
키 하나에 출처를 최대 100개까지 등록할 수 있습니다.
목록을 변경하려면 키 행의 편집(연필) 버튼을 선택하세요. Edit Key 창에서 Allowed Origins를 바꾸고 Save changes를 누릅니다. 같은 창에서 키 이름도 변경할 수 있습니다.
- 출처를 추가하면 해당 사이트에서 새로 발급하는 세션부터 적용됩니다.
- 출처를 제거하면 해당 사이트가 차단됩니다. 이전에 발급한 세션도 만료 때까지 유지되지 않고 다음 요청에서 401
Invalid or missing API key로 실패합니다.
차단된 사이트에서 보이는 현상. 목록에 없는 출처의 페이지가 제품을 마운트하면 세션 교환은 403 origin_not_allowed로 거부됩니다. 응답에 CORS 헤더가 없으므로 브라우저는 …/b2b/v1/sdk/sessions에서 CORS 오류를 표시하고 SDK는 [kaleidr:<product>] 오류를 기록하며 아무것도 렌더링되지 않습니다. 정확한 문구는 문제 해결을 참고하세요.
허용 출처 목록은 브라우저에서 키를 사용할 사이트만 제한하며 공개 가능 키를 비밀로 만들지는 않습니다. 브라우저 외부의 요청은 원하는 Origin 값을 보낼 수 있습니다. 보안 모델에서 보호 범위와 한계를, CORS 및 허용 출처에서 요청 세부 사항을 설명합니다.
키 교체 및 폐기
**키 교체(로테이션)**를 사용하면 서비스 중단 없이 값을 바꿀 수 있습니다. 키 행의 교체 작업을 선택하고 확인하세요. Kaleidr는 같은 유형, 범위, 허용 출처를 가진 새 키를 발급하고 전체 값을 한 번만 표시합니다. 기존 키는 새 값을 배포할 수 있도록 24시간 계속 작동합니다. 이 기간 기존 키는 요금제의 개수 제한에 포함되며 다시 교체할 수 없습니다.
키에 접근하던 사람이 퇴사하거나 보안 정책에서 정한 시점에 키를 교체하세요. 키가 유출되었다면 교체 대신 폐기하세요. 페이지에서 교체하면 이전 값이 24시간 더 작동합니다.
**키 폐기(취소)**는 키를 즉시 중지합니다. 행의 삭제(휴지통) 작업을 선택하고 확인하세요. “Revoke this API key? Any site using it will stop working immediately.”라는 경고가 나옵니다. 키로 발급된 모든 세션도 종료되므로 이미 열린 페이지도 다음 요청에 실패합니다. 폐기한 키는 복원할 수 없습니다.
서버 키가 유출되었다면 교체하지 말고 폐기하세요. 24시간 유예 기간 동안 유출된 키가 계속 작동하기 때문입니다.
테스트 키
두 키 유형 모두 테스트 변형이 있습니다: kld_pk_test_… 및 kld_sk_test_….
테스트 키는 샌드박스가 아닙니다. 동일한 API를 호출하고 동일한 답변을 받으며 실사용 키와 똑같이 AI 크레딧 및 지도 로드를 소모합니다. 단, 테스트 키는 기본 지도 타일을 로드할 수 없습니다.
테스트 키의 장점은 환경 분리입니다. 스테이징 사이트의 요청을 별도 키에 연결해 운영 환경에 영향 없이 폐기할 수 있습니다. 테스트 요청이 무료라고 가정하지 마세요.
API Keys 페이지는 실제 키만 만듭니다. 테스트 키는 키 API에서 "environment": "test"로 생성하세요.
관리 페이지에서 제공하지 않는 옵션
API Keys 페이지에서는 이름, 유형, 허용 출처를 설정합니다. 다른 옵션은 https://api.kaleidr.com/shared-api/api-keys의 키 API에서 사용할 수 있습니다.
키 API는 키가 아닌 로그인한 사용자 본인을 인증합니다. 조직 소유자 또는 관리자의 액세스 토큰을 Authorization: Bearer로 보내세요. API 키로 다른 키를 생성하거나 수정할 수는 없습니다.
| 필드 | 유형 | 기본값 | 설명 |
|---|---|---|---|
name | 1–200자 문자열 | 필수 | 키의 이름. |
org_id | UUID | 기본 조직 | 키가 속할 조직. 요청 본문에 넣어야 합니다. 생성 시 쿼리의 org_id는 무시됩니다. |
key_type | "publishable" 또는 "server" | "publishable" | 생성 후 변경 불가능한 키 유형. |
environment | "live" 또는 "test" | "live" | 실제 키 또는 테스트 키 생성. 이후 변경 불가. |
scopes | 문자열 배열 | ["ai", "maps", "design"] | 키의 범위, 생성 후 고정. |
vendor_acknowledged | 불리언 | false | vendor가 포함된 공개 가능 키를 만들려면 true여야 합니다. |
allowed_origins | 최대 100개 문자열 배열 | [] | 허용 출처, 공개 가능 키 전용. |
allowed_products | 문자열 배열 | [](모든 제품) | chat, editor, viewer, tile 일부로 제한. 모든 키 유형에 적용, 아래 참고. |
allowed_ips | 최대 100개 문자열 배열 | [](모든 주소) | 서버 키를 사용할 수 있는 IP 주소 또는 CIDR 범위. |
monthly_cap_tokens | 0 이상 정수 | 없음 | 청구 기간에 이 키가 사용할 수 있는 최대 AI 크레딧. 1 이상은 상한, 0 또는 null은 상한 없음. |
expires_at | 미래 일시 | 없음 | 키가 작동을 멈추는 시간. |
Free에서는 scopes와 allowed_products를 요청에 무엇이라고 적든 요금제에서 허용하는 전체(ai, maps, design; chat, editor, viewer, tile)로 설정하며, 교체 시에도 같습니다. 모든 요금제에서 허용하지 않는 범위 또는 제품을 요청하면 403 tier_capability_not_allowed가 반환되고 일부 값만 조용히 무시하지 않습니다.
제품 제한은 키를 사용하는 모든 곳에서 적용됩니다. 일부 제품만 허용하는 공개 가능 키로 다른 제품을 마운트하면 세션 교환에서 403 product_not_allowed가 반환됩니다. 제한된 서버 키나 레거시 키로 다른 제품의 엔드포인트를 요청해도 매번 403 product_not_allowed가 반환됩니다. 채팅, 장소, 지오코딩 엔드포인트는 chat에, 디자인 엔드포인트는 editor에 속합니다. 서버 키로 허용 범위의 모든 엔드포인트에 접근하려면 allowed_products를 비워 두세요. 매핑 표는 인증과 범위에 있습니다.
이 요청은 하나의 스테이징 사이트에서 Chat만 사용 가능한 공개 테스트 키를 생성합니다.
curl -X POST https://api.kaleidr.com/shared-api/api-keys \
-H "Authorization: Bearer $KALEIDR_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"name": "Staging site chat",
"key_type": "publishable",
"environment": "test",
"allowed_origins": ["https://staging.example.com"],
"allowed_products": ["chat"]
}'
201 응답은 키 설정과 전체 값을 plaintext_key에 단 한 번 포함합니다.
{
"id": "5f0c2a9e-…",
"name": "Staging site chat",
"key_prefix": "kld_pk_test_…",
"key_type": "publishable",
"environment": "test",
"scopes": ["ai", "maps", "design"],
"allowed_origins": ["https://staging.example.com"],
"allowed_products": ["chat"],
"allowed_ips": [],
"monthly_cap_tokens": null,
"status": "active",
"expires_at": null,
"plaintext_key": "kld_pk_test_…"
}
비즈니스 데이터를 읽을 수 있는 키
vendor 범 위를 사용하면 Chat이 조직에서 게시한 비즈니스 데이터를 답변에 활용할 수 있습니다. 데이터 업로드와 해당 데이터에 접근하는 키 권한 모두 Enterprise 전용이며 키 API를 통해서만 부여됩니다.
curl -X POST https://api.kaleidr.com/shared-api/api-keys \
-H "Authorization: Bearer $KALEIDR_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"name": "Site chat with our data",
"key_type": "publishable",
"scopes": ["ai", "vendor"],
"vendor_acknowledged": true,
"allowed_origins": ["https://www.example.com"]
}'
vendor_acknowledged는 공개 가능 키가 페이지 소스에 있기 때문에 필요합니다. 페이지를 볼 수 있는 누구나 Chat에 질문할 수 있고 답변에 업로드 데이터가 포함될 수 있습니다. 필드를 true로 설정하면 이 점을 의도적으로 허용함을 확인하는 것입니다.
- 공개 가능 키에서
vendor를 요청하면서"vendor_acknowledged": true가 없으면 422vendor_scope_requires_acknowledgement로 거부됩니다. - 서버 키는 별도 확인이 필요 없습니다.
- Free와 Pro에서는
vendor_acknowledged전송 여부와 관계없이vendor를 포함한 요청이 403tier_capability_not_allowed로 거부되고 키가 생성되지 않습니다.
내 데이터는 업로드 방법과 답변이 데이터를 사용했는지 확인하는 방법을 설명합니다.
키 변경(PATCH /shared-api/api-keys/{id})은 name, allowed_origins, allowed_products, allowed_ips, monthly_cap_tokens, expires_at를 받습니다. 교체(POST /shared-api/api-keys/{id}/rotate)는 grace_hours 값 0~8760을 받으며 기본값 0은 이전 키 즉시 중지를 의미합니다. 폐기는 POST /shared-api/api-keys/{id}/revoke를 사용합니다. 거부 코드는 오류에 있습니다.
모든 임베드에 필요한 두 가지 전제 조건
올바른 키만으로 키가 필요한 제품이 렌더링되는 것은 아닙니다. 페이지 자체도 두 가지 조건을 충족해야 하며, 실패 시 브라우저 오류가 원인을 명확히 알려주지 않을 수 있습니다.
1. 키에서 허용한 출처로 페이지 제공
- 개발 중에도 HTTP 또는 HTTPS로 페이지를 제공하세요. 디스크에서 직접 연 파일(
file://)에는 키 목록에 넣을 수 있는 출처가 없습니다. - 키에 허용 출처가 설정되어 있다면 페이지 출처가 목록에 정확히 일치해야 합니다. 스킴, 호스트, 포트까지 포함합니다. 로컬에서는 보통
http://localhost:<port>를 추가합니다.
잘못 설정하면 아무것도 표시되지 않고 콘솔에 세션 교환의 CORS 오류가 나옵니다. 네트워크 문제처럼 보이지만 실제 원인은 허용 출처 목록입니다.
2. 콘텐츠 보안 정책에서 제품 리소스 허용
사이트에서 Content-Security-Policy 헤더를 보낸다면 각 제품이 사용하는 Kaleidr 호스트를 허용해야 합니다. 해당 헤더가 없다면 별도 설정은 필요하지 않습니다.
| 제품 | 정책에서 허용할 리소스 |
|---|---|
| Viewer, Tile | https://cdn.kaleidr.com 스크립트, https://map-embed.kaleidr.com 프레임, 키를 사용하는 경우 https://api.kaleidr.com 연결 |
| Chat, Editor | https://cdn.kaleidr.com 스크립트, https://api.kaleidr.com 연결, 두 제품이 페이지에 스타일을 추가하므로 인라인 스타일 허용. Editor는 https://tile.kaleidr.com에서 기본 지도도 로드합니다. |
콘텐츠 보안 정책에서 제품별 모든 지시문을 확인할 수 있습니다.
설정이 잘못되면 브라우저가 Refused to load… 또는 Refused to connect… 메시지와 차단된 주소 및 정책 지시문을 표시합니다.
키 사용
웹페이지에서는 제품에 공개 가능 키를 전달합니다. SDK가 이를 세션으로 교환하고 제품이 마운트되어 있는 동안 갱신합니다.
<script src="https://cdn.kaleidr.com/embed/v1/kaleidr.js"></script>
<kaleidr-map
product="tile"
publishable-key="kld_pk_live_…"
style-id="kaleidr-morning"
style="display:block; height:480px"
></kaleidr-map>
확인할 결과: 기본 지도가 나타나고 Network 탭에서 https://api.kaleidr.com/inference-api/b2b/v1/sdk/sessions 요청이 200을 반환합니다. 빠른 시작에 제품별 전체 페이지가 있습니다.
서버에서는 매 요청에 서버 키를 전송합니다. 이 호출은 디자인 엔드포인트가 인식하는 지도 스타일 목록을 반환하며 AI 크레딧을 소모하지 않아 첫 번째 키 검증에 적합합니다.
curl https://api.kaleidr.com/inference-api/b2b/v1/design/styles \
-H "Authorization: Bearer kld_sk_live_…"
확인할 결과: styles 배열을 포함하는 JSON 객체와 200 응답. {"detail":"Invalid or missing API key"}가 포함된 401은 키가 잘못됐거나 폐기되었음을 뜻합니다. {"detail":"server_key_in_browser"}가 포함된 403은 요청에 Origin 헤더가 있다는 뜻이므로 제거하세요. 다음 단계는 서버 빠른 시작을 참고하세요.
다음 단계
- 빠른 시작: Chat, Viewer, Tile의 완전한 예제 페이지.
- Kaleidr 작동 원리: 세션, 조직, 두 가지 사용량 풀.
- 인증과 범위: 자격 증명의 전송과 검사.
- 운영 체크리스트: 사이트마다 별도 키, 허용 출처 등 배포 전 준비.