curl --request POST \
--url https://api.apimart.ai/v1beta/models/gemini-2.5-pro:generateContent \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"contents": [
{
"role": "user",
"parts": [
{
"text": "안녕하세요, 자기소개를 해주세요"
}
]
}
]
}'
{
"code": 200,
"data": {
"candidates": [
{
"content": {
"role": "model",
"parts": [
{
"text": "안녕하세요! 제 소개를 드리겠습니다.\n\n저는 Google에서 훈련하고 개발한 대규모 언어 모델입니다..."
}
]
},
"finishReason": "STOP",
"index": 0,
"safetyRatings": [
{
"category": "HARM_CATEGORY_HATE_SPEECH",
"probability": "NEGLIGIBLE"
}
]
}
],
"promptFeedback": {
"safetyRatings": [
{
"category": "HARM_CATEGORY_HATE_SPEECH",
"probability": "NEGLIGIBLE"
}
]
]
},
"usageMetadata": {
"promptTokenCount": 4,
"candidatesTokenCount": 611,
"totalTokenCount": 2422,
"thoughtsTokenCount": 1807,
"promptTokensDetails": [
{
"modality": "TEXT",
"tokenCount": 4
}
]
}
}
curl --request POST \
--url https://api.apimart.ai/v1beta/models/gemini-2.5-pro:generateContent \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"contents": [
{
"role": "user",
"parts": [
{
"text": "안녕하세요, 자기소개를 해주세요"
}
]
}
]
}'
{
"code": 200,
"data": {
"candidates": [
{
"content": {
"role": "model",
"parts": [
{
"text": "안녕하세요! 제 소개를 드리겠습니다.\n\n저는 Google에서 훈련하고 개발한 대규모 언어 모델입니다..."
}
]
},
"finishReason": "STOP",
"index": 0,
"safetyRatings": [
{
"category": "HARM_CATEGORY_HATE_SPEECH",
"probability": "NEGLIGIBLE"
}
]
}
],
"promptFeedback": {
"safetyRatings": [
{
"category": "HARM_CATEGORY_HATE_SPEECH",
"probability": "NEGLIGIBLE"
}
]
]
},
"usageMetadata": {
"promptTokenCount": 4,
"candidatesTokenCount": 611,
"totalTokenCount": 2422,
"thoughtsTokenCount": 1807,
"promptTokensDetails": [
{
"modality": "TEXT",
"tokenCount": 4
}
]
}
}
curl --request POST \
--url https://api.apimart.ai/v1beta/models/gemini-2.5-pro:generateContent \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"contents": [
{
"role": "user",
"parts": [
{
"text": "안녕하세요, 자기소개를 해주세요"
}
]
}
]
}'
{
"code": 200,
"data": {
"candidates": [
{
"content": {
"role": "model",
"parts": [
{
"text": "안녕하세요! 제 소개를 드리겠습니다.\n\n저는 Google에서 훈련하고 개발한 대규모 언어 모델입니다..."
}
]
},
"finishReason": "STOP",
"index": 0,
"safetyRatings": [
{
"category": "HARM_CATEGORY_HATE_SPEECH",
"probability": "NEGLIGIBLE"
}
]
}
],
"promptFeedback": {
"safetyRatings": [
{
"category": "HARM_CATEGORY_HATE_SPEECH",
"probability": "NEGLIGIBLE"
}
]
]
},
"usageMetadata": {
"promptTokenCount": 4,
"candidatesTokenCount": 611,
"totalTokenCount": 2422,
"thoughtsTokenCount": 1807,
"promptTokensDetails": [
{
"modality": "TEXT",
"tokenCount": 4
}
]
}
}
Authorization: Bearer YOUR_API_KEY
gemini-2.5-pro를 사용하며, 다른 지원되는 Gemini 모델로 대체할 수 있습니다:gemini-2.5-flash - Gemini 2.5 고속 버전gemini-2.5-pro - Gemini 2.5 전문 버전gemini-2.5-flash-lite - Gemini 2.5 초경량 버전gemini-2.5-pro-thinking - Gemini 2.5 Pro 심층 사고 버전generateContent 권장):generateContent: 완전한 응답을 기다린 후 한 번에 반환streamGenerateContent: 스트림 형식으로 단계적으로 콘텐츠 반환generateContent, streamGenerateContent표시 contents 객체 구조
[
{
"role": "user",
"parts": [{ "text": "안녕하세요, 자기소개를 해주세요" }]
}
]
표시 generationConfig 속성
표시 safetySettings 객체 구조
HARM_CATEGORY_HATE_SPEECH: 혐오 발언HARM_CATEGORY_DANGEROUS_CONTENT: 위험한 콘텐츠HARM_CATEGORY_HARASSMENT: 괴롭힘HARM_CATEGORY_SEXUALLY_EXPLICIT: 성적으로 노골적인 콘텐츠BLOCK_NONE: 차단하지 않음BLOCK_ONLY_HIGH: 높은 위험만 차단BLOCK_MEDIUM_AND_ABOVE: 중간 이상 위험 차단BLOCK_LOW_AND_ABOVE: 낮은 이상 위험 차단표시 candidates 객체 구조
STOP: 정상 완료MAX_TOKENS: 최대 토큰 제한 도달SAFETY: 안전상의 이유로 중지RECITATION: 반복으로 인해 중지OTHER: 기타 이유표시 usageMetadata 속성