API Documentation

AI-based API Service Documentation

🔧 API Playground 💻 API Console
📝
API 계약 안내

이 문서는 API 개요를 제공합니다. 계약 완료 후 상세 구현 가이드, SDK, 샘플 코드가 별도로 제공됩니다.
계약 고객은 API Console에서 직접 API를 테스트할 수 있습니다.
문의: muse@resonance-space.net

Authentication

All API requests require an API key. Pass the API key in the Authorization header as a Bearer token.

Authorization: Bearer rs_your_api_key_here

Getting an API Key

Select a plan on the pricing page to receive an API key via email.

Security Note: Never expose your API key in client-side code (browser). Use it only on the server.

Rate Limits

Monthly API call limits apply based on your plan.

Plan Monthly Limit Price
Free 1,000 Free
Pro 50,000 99,000₩/mo
Enterprise Unlimited Contact

Check Usage

GET /api/v1/usage
{
  "success": true,
  "plan": "free",
  "month": "2025-12",
  "used": 150,
  "limit": 1000,
  "remaining": 850
}

Chat API

대화형 AI 챗봇 API입니다. 커스텀 시스템 프롬프트와 대화 히스토리를 지원합니다.

POST /api/v1/chat

Request Body

Parameter Type Description
message 필수 string 사용자 메시지
system_prompt 선택 string 시스템 프롬프트 (AI 역할 설정)
history 선택 array 대화 히스토리 [{role, content}, ...]
max_tokens 선택 number 최대 응답 길이 (기본: 1000, 최대: 4000)

Example

curl -X POST https://resonance-space.net/api/v1/chat \
  -H "Authorization: Bearer rs_your_api_key" \
  -H "Content-Type: application/json" \
  -d '{
    "message": "파이썬으로 피보나치 함수 만들어줘",
    "system_prompt": "당신은 친절한 프로그래밍 튜터입니다."
  }'

Response

{
  "success": true,
  "reply": "네, 파이썬으로 피보나치 함수를 만들어 드릴게요!\n\n```python\ndef fibonacci(n):\n    if n <= 1:\n        return n\n    return fibonacci(n-1) + fibonacci(n-2)\n```",
  "usage": {
    "prompt_tokens": 45,
    "completion_tokens": 89,
    "total_tokens": 134
  },
  "remaining_calls": 849
}

Document API

문서 요약, Q&A, 핵심 정보 추출 기능을 제공합니다.

문서 요약

POST /api/v1/document/summarize
Parameter Type Description
text 필수 string 요약할 텍스트
length 선택 string short / medium / long (기본: medium)
language 선택 string 출력 언어 (기본: ko)
curl -X POST https://resonance-space.net/api/v1/document/summarize \
  -H "Authorization: Bearer rs_your_api_key" \
  -H "Content-Type: application/json" \
  -d '{
    "text": "긴 문서 내용...",
    "length": "short"
  }'

문서 Q&A

POST /api/v1/document/qa
Parameter Type Description
document 필수 string 질문할 문서 내용
question 필수 string 질문

정보 추출

POST /api/v1/document/extract
Parameter Type Description
text 필수 string 분석할 텍스트
extract_type 선택 string key_points / entities / action_items / topics

Code API

코드 리뷰, 생성, 설명 기능을 제공합니다.

코드 리뷰

POST /api/v1/code/review
Parameter Type Description
code 필수 string 리뷰할 코드
language 선택 string 프로그래밍 언어 (기본: auto)
focus 선택 string all / bugs / security / performance / style
curl -X POST https://resonance-space.net/api/v1/code/review \
  -H "Authorization: Bearer rs_your_api_key" \
  -H "Content-Type: application/json" \
  -d '{
    "code": "function add(a, b) { return a + b }",
    "language": "javascript",
    "focus": "all"
  }'

코드 생성

POST /api/v1/code/generate
Parameter Type Description
prompt 필수 string 생성할 코드 설명
language 선택 string 프로그래밍 언어 (기본: javascript)

코드 설명

POST /api/v1/code/explain
Parameter Type Description
code 필수 string 설명할 코드
detail_level 선택 string brief / medium / detailed

Translation API

고품질 AI 번역 서비스입니다.

POST /api/v1/translate
Parameter Type Description
text 필수 string 번역할 텍스트
source 선택 string 원본 언어 (기본: auto)
target 선택 string 대상 언어 (기본: en)
style 선택 string natural / formal / casual / literal
curl -X POST https://resonance-space.net/api/v1/translate \
  -H "Authorization: Bearer rs_your_api_key" \
  -H "Content-Type: application/json" \
  -d '{
    "text": "안녕하세요, 반갑습니다.",
    "target": "en",
    "style": "formal"
  }'

Response

{
  "success": true,
  "translation": "Hello, it is a pleasure to meet you.",
  "source": "auto",
  "target": "en",
  "remaining_calls": 848
}

Text Analysis API

감정 분석, 텍스트 분류, 맞춤법 교정 등 텍스트 분석 기능을 제공합니다.

감정/감성 분석

POST /api/v1/sentiment
Parameter Type Description
text 필수 string 분석할 텍스트
detailed 선택 boolean 상세 분석 여부 (기본: false)
language 선택 string 응답 언어 (기본: ko)
curl -X POST https://resonance-space.net/api/v1/sentiment \
  -H "Authorization: Bearer rs_your_api_key" \
  -H "Content-Type: application/json" \
  -d '{
    "text": "이 제품 정말 좋아요! 완전 추천합니다.",
    "detailed": true
  }'

Response (detailed: true)

{
  "success": true,
  "analysis": {
    "overall_sentiment": "positive",
    "confidence": 0.95,
    "emotions": [
      {"emotion": "기쁨", "score": 0.88},
      {"emotion": "만족", "score": 0.82}
    ],
    "key_phrases": ["정말 좋아요", "완전 추천"]
  },
  "remaining_calls": 847
}

텍스트 분류

POST /api/v1/classify
Parameter Type Description
text 필수 string 분류할 텍스트
categories 필수 array 카테고리 목록 (최소 2개)
multi_label 선택 boolean 다중 라벨 허용 (기본: false)
curl -X POST https://resonance-space.net/api/v1/classify \
  -H "Authorization: Bearer rs_your_api_key" \
  -H "Content-Type: application/json" \
  -d '{
    "text": "새로운 아이폰 16 출시 소식입니다.",
    "categories": ["기술", "스포츠", "정치", "연예"]
  }'

Response

{
  "success": true,
  "classification": {
    "category": "기술",
    "confidence": 0.94,
    "reasoning": "아이폰은 기술/전자제품 관련 주제입니다."
  },
  "remaining_calls": 846
}

문법/맞춤법 교정

POST /api/v1/correct
Parameter Type Description
text 필수 string 교정할 텍스트
language 선택 string 텍스트 언어 (기본: auto)
style 선택 string standard / formal / casual / academic
curl -X POST https://resonance-space.net/api/v1/correct \
  -H "Authorization: Bearer rs_your_api_key" \
  -H "Content-Type: application/json" \
  -d '{
    "text": "오늘 날씨가 좋슴니다. 외출하기 조습니다."
  }'

Response

{
  "success": true,
  "correction": {
    "corrected_text": "오늘 날씨가 좋습니다. 외출하기 좋습니다.",
    "changes": [
      {"original": "좋슴니다", "corrected": "좋습니다", "reason": "맞춤법 오류"},
      {"original": "조습니다", "corrected": "좋습니다", "reason": "오타"}
    ],
    "has_errors": true
  },
  "remaining_calls": 845
}

Embedding API

텍스트를 벡터로 변환하고 유사도를 계산합니다. RAG, 검색, 클러스터링 등에 활용할 수 있습니다.

텍스트 임베딩

POST /api/v1/embedding
Parameter Type Description
text 선택* string 단일 텍스트
texts 선택* array 텍스트 배열 (최대 100개)
model 선택 string 모델 (기본: text-embedding-3-small)

* text 또는 texts 중 하나는 필수

curl -X POST https://resonance-space.net/api/v1/embedding \
  -H "Authorization: Bearer rs_your_api_key" \
  -H "Content-Type: application/json" \
  -d '{
    "texts": ["안녕하세요", "반갑습니다"]
  }'

Response

{
  "success": true,
  "embeddings": [
    [0.023, -0.012, 0.089, ...],  // 1536 dimensions
    [0.018, -0.009, 0.076, ...]
  ],
  "model": "text-embedding-3-small",
  "dimensions": 1536,
  "remaining_calls": 844
}

텍스트 유사도

POST /api/v1/similarity
Parameter Type Description
text1 필수 string 기준 텍스트
text2 선택* string 비교할 단일 텍스트
texts 선택* array 비교할 텍스트 배열

* text2 또는 texts 중 하나는 필수

curl -X POST https://resonance-space.net/api/v1/similarity \
  -H "Authorization: Bearer rs_your_api_key" \
  -H "Content-Type: application/json" \
  -d '{
    "text1": "오늘 날씨가 좋네요",
    "texts": ["오늘 하늘이 맑아요", "점심 뭐 먹을까요", "비가 와서 우울해요"]
  }'

Response

{
  "success": true,
  "base_text": "오늘 날씨가 좋네요",
  "similarities": [
    {"index": 0, "text": "오늘 하늘이 맑아요", "similarity": 0.9234},
    {"index": 1, "text": "점심 뭐 먹을까요", "similarity": 0.4521},
    {"index": 2, "text": "비가 와서 우울해요", "similarity": 0.6123}
  ],
  "remaining_calls": 843
}

활용 예시: 유사 문서 검색, 중복 콘텐츠 감지, 의미 기반 클러스터링, FAQ 자동 매칭 등

Vision API

이미지 분석 및 OCR 기능을 제공합니다.

이미지 분석

POST /api/v1/vision/analyze
Parameter Type Description
image_url 선택* string 이미지 URL
image_base64 선택* string Base64 인코딩된 이미지
prompt 선택 string 분석 요청 (기본: 이미지 분석)

* image_url 또는 image_base64 중 하나는 필수

curl -X POST https://resonance-space.net/api/v1/vision/analyze \
  -H "Authorization: Bearer rs_your_api_key" \
  -H "Content-Type: application/json" \
  -d '{
    "image_url": "https://example.com/image.jpg",
    "prompt": "이 이미지에 무엇이 있나요?"
  }'

OCR (텍스트 추출)

POST /api/v1/vision/ocr
Parameter Type Description
image_url 선택* string 이미지 URL
image_base64 선택* string Base64 인코딩된 이미지

Attendance API (근태관리)

AI 기반 근태관리 시스템을 구축할 수 있는 API입니다.

POST /api/v1/attendance/clock

출퇴근 및 휴식 시간을 기록합니다.

curl -X POST https://api.resonance-space.net/api/v1/attendance/clock \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "employee_id": "EMP001",
    "action": "clock_in",
    "location": "서울 강남구",
    "note": "정상 출근"
  }'
ParameterTypeDescription
employee_id 필수 string 직원 고유 ID
action 필수 string clock_in, clock_out, break_start, break_end
location 선택 string 위치 정보
note 선택 string 메모

GET /api/v1/attendance/records

근태 기록을 조회합니다.

curl "https://api.resonance-space.net/api/v1/attendance/records?employee_id=EMP001&start_date=2024-01-01" \
  -H "Authorization: Bearer YOUR_API_KEY"
ParameterTypeDescription
employee_id 필수 string 직원 고유 ID
start_date 선택 string 조회 시작일 (YYYY-MM-DD)
end_date 선택 string 조회 종료일 (YYYY-MM-DD)

POST /api/v1/attendance/report

AI 기반 근태 리포트를 생성합니다.

curl -X POST https://api.resonance-space.net/api/v1/attendance/report \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "employee_id": "EMP001",
    "employee_name": "홍길동",
    "period": "weekly",
    "include_analysis": true
  }'
ParameterTypeDescription
employee_id 필수 string 직원 고유 ID
period 선택 string daily, weekly, monthly (기본: weekly)
include_analysis 선택 boolean AI 분석 포함 여부 (기본: true)

POST /api/v1/attendance/leave

휴가/휴무를 신청합니다.

curl -X POST https://api.resonance-space.net/api/v1/attendance/leave \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "employee_id": "EMP001",
    "leave_type": "annual",
    "start_date": "2024-01-15",
    "end_date": "2024-01-16",
    "reason": "개인 휴가"
  }'
ParameterTypeDescription
employee_id 필수 string 직원 고유 ID
leave_type 필수 string annual, sick, personal, maternity, paternity, unpaid, half_day
start_date 필수 string 시작일 (YYYY-MM-DD)
end_date 선택 string 종료일 (기본: start_date)

POST /api/v1/attendance/analyze

AI 기반 근태 패턴을 분석합니다.

curl -X POST https://api.resonance-space.net/api/v1/attendance/analyze \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "employee_id": "EMP001",
    "analysis_type": "pattern"
  }'
ParameterTypeDescription
employee_id 필수 string 직원 고유 ID
analysis_type 선택 string pattern, anomaly, prediction, optimization

NLP & Language API

자연어 처리 및 언어 분석을 위한 API입니다.

Language Detection

POST /api/v1/detect-language

텍스트의 언어를 자동으로 감지합니다.

curl -X POST https://resonance-space.net/api/v1/detect-language \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "text": "Hello, how are you today?",
    "detailed": true
  }'
ParameterTypeDescription
text 필수string감지할 텍스트
detailed 선택boolean상세 정보 포함 여부

Keyword Extraction

POST /api/v1/keywords

텍스트에서 핵심 키워드를 추출합니다.

curl -X POST https://resonance-space.net/api/v1/keywords \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "text": "인공지능과 머신러닝은 현대 기술의 핵심입니다.",
    "max_keywords": 5,
    "include_scores": true
  }'
ParameterTypeDescription
text 필수string키워드를 추출할 텍스트
max_keywords 선택integer최대 키워드 수 (기본: 10)
include_scores 선택boolean관련도 점수 포함 여부

Named Entity Recognition (NER)

POST /api/v1/ner

텍스트에서 인물, 장소, 날짜 등 개체명을 추출합니다.

curl -X POST https://resonance-space.net/api/v1/ner \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "text": "삼성전자 이재용 회장이 서울에서 기자회견을 열었습니다.",
    "entity_types": ["PERSON", "ORGANIZATION", "LOCATION", "DATE"]
  }'
ParameterTypeDescription
text 필수string분석할 텍스트
entity_types 선택array추출할 개체 유형 (PERSON, ORGANIZATION, LOCATION, DATE, TIME, MONEY 등)

Text Rewriting

POST /api/v1/rewrite

텍스트를 다양한 스타일로 재작성합니다.

curl -X POST https://resonance-space.net/api/v1/rewrite \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "text": "오늘 날씨가 좋네요.",
    "style": "formal",
    "preserve_meaning": true
  }'
ParameterTypeDescription
text 필수string재작성할 텍스트
style 선택string스타일: neutral, formal, casual, simple, academic, creative, concise, expanded
preserve_meaning 선택boolean원래 의미 유지 여부

Content Moderation

POST /api/v1/moderate

콘텐츠를 검열하고 유해성을 감지합니다.

curl -X POST https://resonance-space.net/api/v1/moderate \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "text": "검열할 콘텐츠 내용",
    "strictness": "medium"
  }'
ParameterTypeDescription
text 필수string검열할 텍스트
strictness 선택string엄격도: low, medium, high
check_categories 선택array검사할 카테고리 (hate, harassment, violence, sexual, spam 등)

Audio & Tools API

음성 합성 및 유틸리티 API입니다.

Text-to-Speech (TTS)

POST /api/v1/tts

텍스트를 음성으로 변환합니다. MP3 파일을 반환합니다.

curl -X POST https://resonance-space.net/api/v1/tts \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "text": "안녕하세요, 반갑습니다.",
    "voice": "alloy",
    "speed": 1.0
  }' --output speech.mp3
ParameterTypeDescription
text 필수string변환할 텍스트 (최대 4096자)
voice 선택string음성: alloy, echo, fable, onyx, nova, shimmer
speed 선택number속도: 0.25 ~ 4.0 (기본: 1.0)

Question Generation

POST /api/v1/generate-questions

텍스트 내용을 기반으로 질문을 자동 생성합니다.

curl -X POST https://resonance-space.net/api/v1/generate-questions \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "text": "광합성은 식물이 빛 에너지를 화학 에너지로 변환하는 과정입니다.",
    "num_questions": 5,
    "difficulty": "medium"
  }'
ParameterTypeDescription
text 필수string질문을 생성할 원본 텍스트
num_questions 선택integer생성할 질문 수 (기본: 5)
difficulty 선택string난이도: easy, medium, hard
question_types 선택array질문 유형: factual, inferential, analytical

Tokenization

POST /api/v1/tokenize

텍스트의 토큰 수 및 통계를 분석합니다.

curl -X POST https://resonance-space.net/api/v1/tokenize \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "text": "인공지능 기술이 발전하고 있습니다."
  }'
ParameterTypeDescription
text 필수string분석할 텍스트

응답 필드: estimated_tokens, character_count, word_count, sentence_count, paragraph_count, average_word_length

Error Handling

The API uses standard HTTP status codes.

Status Description
200 성공
400 잘못된 요청 (필수 파라미터 누락 등)
401 인증 실패 (API 키 없음 또는 유효하지 않음)
429 사용량 제한 초과
500 서버 에러
503 서비스 이용 불가

Error Response Example

{
  "error": "Rate limit exceeded",
  "message": "Monthly usage limit exceeded",
  "usage": 1000,
  "limit": 1000
}