문서
TypingMind
TypingMind에는 사용자 지정 모델용 기본 URL 필드가 없습니다. 각 모델은 전체 엔드포인트 경로, 모델 ID, 컨텍스트 길이, 직접 입력하는 헤더 키를 별도 항목으로 등록해야 합니다. 다음은 Kunavo용 항목과 한 달 전에는 작동하지 않았지만 지금은 브라우저에서 작동하는 이유입니다.
Models → Add custom model: 전체 Endpoint URL https://api.kunavo.com/v1/chat/completions, Bearer와 키를 포함한 Authorization 헤더, Model ID, 컨텍스트 길이를 입력합니다 — 모델마다 하나의 항목을 브라우저에서 직접 호출합니다
Models → Add custom model → Create Manually
Name Kunavo · Claude Sonnet 5
Model ID claude-sonnet-5
Context Length 1000000
Authentication tab
API Type OpenAI Chat Completions API
Endpoint URL https://api.kunavo.com/v1/chat/completions
Authentication Type API Key via HTTP Header
Header Key Authorization
Header Value Bearer sk-kn-...
Capabilities tab tick only what you have checked (see below)
Request Options tab leave "Route requests via TypingMind Cloud" off
→ Test & Savehttps://api.kunavo.com/v1/chat/completions입니다. TypingMind는 경로를 덧붙이지 않습니다. 자체 사용 예시에서도 https://api.minimax.io/v1/chat/completions 같은 전체 경로를 붙여 넣습니다. 따라서 https://api.kunavo.com/v1만 입력하면 존재하지 않는 경로로 채팅 요청을 보냅니다./v1/chat/completions, /v1/messages, /v1/models 모두에서 access-control-allow-origin: *와 읽을 수 있는 응답을 반환했습니다. 이 엔드포인트에는 Route requests via TypingMind Cloud 옵션이 필요하지 않습니다.sk-kn-로 시작합니다) $10부터 크레딧을 추가하세요. 호출 비용은 해당 잔액에서 차감되며 실패한 호출에는 요금이 부과되지 않습니다. 그러면 대시보드가 TypingMind 설정 화면에서 열립니다.단계별 안내
/app/keys에서 키를 생성해 복사하세요. 키는 한 번만 표시됩니다.- TypingMind에서 왼쪽 사이드바의 Models를 열고 Add custom model을 클릭하세요. Create Manually를 선택하세요. Import JSON과 Import OpenRouter는 다른 출처용입니다.
- Name(임의의 이름), Model ID(
GET /v1/models에 표시된 ID와 정확히 일치해야 합니다. 예:claude-sonnet-5), Context Length를 입력하세요. 양식에는 128000이 미리 입력되어 있습니다. TypingMind는 이 숫자를 기준으로 전송할 대화 기록의 양을 결정하므로, 모델 페이지에서 해당 모델의 실제 컨텍스트 윈도우를 확인해 설정하세요. - 인증 탭에서 API 유형 = OpenAI Chat Completions API를 선택하고, 전체 엔드포인트 URL을 붙여 넣은 다음 인증 유형을 HTTP 헤더를 통한 API 키로 설정합니다. 헤더 키에
Authorization를 입력하고 헤더 값에는Bearer sk-kn-...를 입력합니다. 즉, Bearer, 공백, 키 순서입니다. - 기능에서 기능을 직접 선택하거나 저장 시 기능 자동 확인을 켜 두세요. 양식 설명에 따르면 저장할 때 “몇 차례 테스트 요청”을 보내며, 토큰이 몇 개 청구됩니다. 선택 사항으로 가격에 아래 표의 백만 토큰당 요금을 입력하면 TypingMind의 비용 표시가 실제 청구액과 일치합니다. 그런 다음 테스트 및 저장을 클릭합니다.
- 모델마다 반복합니다. 사용자 지정 엔드포인트에는 공급자 단위 항목이 없습니다. Claude Sonnet, Claude Haiku, GPT 모델은 동일한 Endpoint URL과 헤더를 사용하는 별도의 사용자 지정 모델 세 개입니다.
TypingMind 모델 문서에서 확인했습니다(2026년 10월 1일 기준). 서드파티 설정은 변경될 수 있으므로, 여기의 필드 이름이 실제 화면과 다르면 이 문서가 아니라 해당 페이지를 기준으로 삼으세요.
클라이언트를 디버깅하기 전에 확인할 사항
한 번의 요청으로 문제가 엔드포인트, 키 또는 구성 파일 중 어디에 있는지 판단할 수 있습니다. 이 요청에서 JSON이 반환되면 동일한 base URL과 키가 TypingMind에서 작동합니다.
# Settles whether a failure is the endpoint, the key, or the client.
curl -sS https://api.kunavo.com/v1/models \
-H "Authorization: Bearer sk-kn-..."필드에 입력할 model id
모든 텍스트 모델은 model id로 접근할 수 있습니다. 현재 목록은 GET /v1/models이며, 가격이 포함된 카탈로그는 모델 페이지에서 확인할 수 있습니다. 요금은 토큰 100만 개당 USD 기준이며 입력 / 출력 순서입니다.
| 모델 ID | Kunavo 입력/출력 | TypingMind에서의 위치 |
|---|---|---|
claude-sonnet-5 | $1.40 / $7.00 | 긴 대화와 문서에 사용하는 일상적인 모델 — 컨텍스트 길이 1000000 |
claude-haiku-4-5 | $0.70 / $3.50 | 빠른 질문과 제목 생성용 저렴한 보조 모델 — 컨텍스트 길이 200000 |
claude-opus-5 | $3.50 / $17.50 | 필요할 때 신중하게 사용하는 고난도 추론 모델 — 컨텍스트 길이 1000000 |
나머지 세 가지 API 유형
실제 양식의 API Type 드롭다운에는 OpenAI Chat Completions API, OpenAI Responses API, Claude Messages API, Gemini API가 있습니다. Kunavo는 앞의 세 가지를 지원하며, 각 유형은 Endpoint URL에 해당하는 전체 경로를 입력해야 합니다.
- Claude Messages API — Endpoint URL은
https://api.kunavo.com/v1/messages입니다. TypingMind의 Claude 형식 예시에서는x-api-key헤더를 사용하지만, Kunavo는 이 경로에서 해당 헤더 또는Authorization: Bearer를 허용합니다. Kunavo는 이 경로에서 Claude 계열 ID만 제공합니다. - OpenAI Responses API — Endpoint URL은
https://api.kunavo.com/v1/responses이며, 동일한 Bearer 헤더를 사용합니다. TypingMind 문서에는 이 유형의 예제가 없으므로, 전체 경로 형식은 인용된 내용이 아니라 나머지 세 유형에서 추론한 것입니다. - Gemini API — 이 엔드포인트용이 아닙니다. Google의 기본 요청 형식을 기대하므로, Gemini 모델은 Chat Completions 유형을 통해 사용하세요.
이것은 TypingMind API가 아닙니다
“TypingMind API”는 보통 TypingMind Teams 인스턴스(custom.typingmind.com)의 REST API를 뜻하며, 해당 채팅 인스턴스를 관리합니다. 모델 토큰을 판매하지 않으며 이 설정과는 관련이 없습니다. 사용자 지정 모델은 TypingMind가 사용자가 제공한 키로 다른 사람의 엔드포인트를 호출하는 것입니다.
별도로 청구되는 두 가지 요금
TypingMind 라이선스는 앱 사용료입니다. 사용자 지정 모델을 통해 보내는 모든 메시지는 헤더에 설정한 키의 소유자가 토큰당 요금을 청구합니다. 이 경우 선불 잔액에서 Kunavo가 청구합니다. 라이선스 요금제와 이 요금으로 한 달간 채팅할 때 드는 비용은 TypingMind 가격 및 API 비용에서 자세히 설명합니다.
테스트 및 저장에 실패하는 경우
- “POST /v1 is the base URL, not an endpoint”라는 404 (또는 URL이 호스트에서 끝나면 “Not found: /”) — Endpoint URL에 경로가 빠져 있습니다.
/v1/chat/completions로 끝나야 합니다(해당 유형에서는/v1/messages,/v1/responses). 2026년 10월 1일 이전에는 두 경우 모두 HTML 페이지를 반환했습니다. - “No such endpoint”라는 404 — 예를 들어
/v1/chat/completion처럼 경로의 철자가 틀렸습니다. 같은 메시지에 Kunavo가 제공하는 가장 유사한 경로가 표시됩니다. - “Not found: /chat/completions. Kunavo's API lives under /v1”라는 404 — 경로는 있지만
/v1가 없습니다. Endpoint URL이https://api.kunavo.com/chat/completions로 되어 있습니다. 경로 앞에/v1를 추가하세요. (2026년 10월 1일 확인. 그 전에는 같은 실수로 HTML 페이지가 반환되었습니다.) - 401 “Missing or invalid API key” — 헤더가 잘못되었습니다. Header Key는
Authorization여야 하고 값은Bearer로 시작해야 합니다. 또는 키가 폐기되었을 수 있습니다. - 모델을 사용할 수 없다는 오류 — Model ID의 표기가
GET /v1/models에 나열된 것과 다릅니다. ID는 소문자와 하이픈으로 표기됩니다. - 브라우저 콘솔에 네트워크 또는 CORS 오류가 표시됨 — Endpoint URL이
https://api.kunavo.com인지 확인하고 웹사이트 도메인을 입력하지 않았는지 확인하세요. CORS 헤더는 API 호스트가 보냅니다.
자주 묻는 질문
TypingMind에서 내 API 키로 사용자 지정 모델을 추가하려면 어떻게 하나요?
왼쪽 사이드바에서 Models를 열고 Add custom model을 클릭한 다음 Create Manually를 선택합니다. Name, 정확한 Model ID, Context Length를 입력합니다. Authentication 탭에서 API Type을 선택하고 전체 Endpoint URL을 붙여 넣습니다. OpenAI 호환 공급자의 URL은 /v1/chat/completions로 끝납니다. 그런 다음 Authentication Type을 HTTP Header를 통한 API Key로 설정하고, Header Key에는 Authorization, Header Value에는 Bearer 다음에 키를 입력합니다. Test & Save를 클릭합니다. 이 라벨은 2026년 10월 1일 실제 앱에서 확인했습니다. TypingMind의 이전 문서에서도 같은 절차를 약간 다른 표현으로 설명합니다.
TypingMind에는 기본 URL을 입력해야 하나요, 전체 엔드포인트를 입력해야 하나요?
전체 엔드포인트입니다. 입력란 이름은 Endpoint URL이며 TypingMind 문서의 모든 예시에서 https://api.minimax.io/v1/chat/completions 또는 /anthropic/v1/messages로 끝나는 Azure URL처럼 완전한 경로를 붙여 넣습니다. TypingMind는 경로를 추가하지 않으므로 https://api.kunavo.com/v1처럼 기본 URL만 입력하면 존재하지 않는 경로로 요청이 전송되어 404가 반환됩니다.
TypingMind에서 브라우저를 통해 Kunavo를 직접 호출할 수 있나요?
네. 2026년 9월 29일부터 Kunavo API가 CORS 헤더를 보내기 시작했습니다. TypingMind는 웹페이지 자체에서 모델 요청을 보내므로 엔드포인트가 해당 페이지의 출처를 허용해야 합니다. 2026년 10월 1일 typingmind.com에서 Kunavo의 /v1/chat/completions, /v1/messages, /v1/models로 보낸 요청은 읽을 수 있는 본문과 함께 access-control-allow-origin: *을 반환했습니다. 이 요청에는 일부러 유효하지 않은 키를 사용했으므로, 브라우저 경로가 열려 있음을 입증할 뿐 전체 채팅이 실행되었음을 의미하지는 않습니다.
TypingMind의 프록시나 TypingMind Cloud 라우팅이 필요한가요?
Kunavo에서는 필요하지 않습니다. Request Options 탭에 Route requests via TypingMind Cloud 토글이 있으며, 양식에서는 브라우저 CORS 제한을 우회하기 위해 TypingMind 서버를 통해 요청을 라우팅하는 기능이라고 설명합니다. Kunavo API는 이미 브라우저 호출을 허용하므로 이 옵션을 끄면 브라우저에서 엔드포인트로 직접 요청이 전송됩니다.
Kunavo가 TypingMind를 사용해 처음부터 끝까지 테스트했나요?
유효한 키를 사용한 테스트는 없습니다. 2026년 10월 1일에 확인한 것은 실제 Add Custom Model 양식과 typingmind.com 페이지에서 유효하지 않은 키로 Kunavo에 보낸 브라우저 요청이며, 이 요청은 CORS 헤더와 함께 읽을 수 있는 응답을 반환했습니다. TypingMind에서 Kunavo를 대상으로 완성 응답, 스트리밍 응답 또는 도구 호출을 실행하지 않았으며 Test & Save 버튼도 누르지 않았습니다. 자체 Test & Save와 첫 메시지를 처음부터 끝까지 확인하는 절차로 삼으세요.