curl --request POST \
--url 'https://api.elkapi.com/v1beta/models/gemini-3.1-pro-preview:generateContent' \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"contents": [
"안녕하세요, 자기소개를 해 주세요"
],
"generationConfig": {
"responseModalities": [
"responseModalitie"
],
"speechConfig": {
"voiceConfig": {
"prebuiltVoiceConfig": {
"voiceName": "voiceName"
}
}
}
}
}'
import requests
url = "https://api.elkapi.com/v1beta/models/gemini-3.1-pro-preview:generateContent"
headers = {
"Authorization": "Bearer <token>"
}
headers["Content-Type"] = "application/json"
payload = {
"contents": [
"안녕하세요, 자기소개를 해 주세요"
],
"generationConfig": {
"responseModalities": [
"responseModalitie"
],
"speechConfig": {
"voiceConfig": {
"prebuiltVoiceConfig": {
"voiceName": "voiceName"
}
}
}
}
}
response = requests.request("POST", url, headers=headers, json=payload)
print(response.json())
const url = "https://api.elkapi.com/v1beta/models/gemini-3.1-pro-preview:generateContent";
const headers = {
"Authorization": "Bearer <token>"
};
headers["Content-Type"] = "application/json";
const payload = {
"contents": [
"안녕하세요, 자기소개를 해 주세요"
],
"generationConfig": {
"responseModalities": [
"responseModalitie"
],
"speechConfig": {
"voiceConfig": {
"prebuiltVoiceConfig": {
"voiceName": "voiceName"
}
}
}
}
};
const response = await fetch(url, {
method: "POST",
headers,
body: JSON.stringify(payload)
});
console.log(await response.json());
{
"candidates": [
{
"content": "안녕하세요, 자기소개를 해 주세요",
"finishReason": "finishReason",
"safetyRatings": [
{}
]
}
],
"usageMetadata": {
"promptTokenCount": 1,
"candidatesTokenCount": 1,
"totalTokenCount": 1
}
}
네이티브 Gemini 형식
Gemini 오디오 생성
- Gemini 오디오 생성 엔드포인트입니다.
- gemini-2.5-flash-preview-tts 등의 모델을 사용할 수 있습니다
POST
/
v1beta
/
models
/
{model}
:generateContent
curl --request POST \
--url 'https://api.elkapi.com/v1beta/models/gemini-3.1-pro-preview:generateContent' \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"contents": [
"안녕하세요, 자기소개를 해 주세요"
],
"generationConfig": {
"responseModalities": [
"responseModalitie"
],
"speechConfig": {
"voiceConfig": {
"prebuiltVoiceConfig": {
"voiceName": "voiceName"
}
}
}
}
}'
import requests
url = "https://api.elkapi.com/v1beta/models/gemini-3.1-pro-preview:generateContent"
headers = {
"Authorization": "Bearer <token>"
}
headers["Content-Type"] = "application/json"
payload = {
"contents": [
"안녕하세요, 자기소개를 해 주세요"
],
"generationConfig": {
"responseModalities": [
"responseModalitie"
],
"speechConfig": {
"voiceConfig": {
"prebuiltVoiceConfig": {
"voiceName": "voiceName"
}
}
}
}
}
response = requests.request("POST", url, headers=headers, json=payload)
print(response.json())
const url = "https://api.elkapi.com/v1beta/models/gemini-3.1-pro-preview:generateContent";
const headers = {
"Authorization": "Bearer <token>"
};
headers["Content-Type"] = "application/json";
const payload = {
"contents": [
"안녕하세요, 자기소개를 해 주세요"
],
"generationConfig": {
"responseModalities": [
"responseModalitie"
],
"speechConfig": {
"voiceConfig": {
"prebuiltVoiceConfig": {
"voiceName": "voiceName"
}
}
}
}
};
const response = await fetch(url, {
method: "POST",
headers,
body: JSON.stringify(payload)
});
console.log(await response.json());
{
"candidates": [
{
"content": "안녕하세요, 자기소개를 해 주세요",
"finishReason": "finishReason",
"safetyRatings": [
{}
]
}
],
"usageMetadata": {
"promptTokenCount": 1,
"candidatesTokenCount": 1,
"totalTokenCount": 1
}
}
curl --request POST \
--url 'https://api.elkapi.com/v1beta/models/gemini-3.1-pro-preview:generateContent' \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"contents": [
"안녕하세요, 자기소개를 해 주세요"
],
"generationConfig": {
"responseModalities": [
"responseModalitie"
],
"speechConfig": {
"voiceConfig": {
"prebuiltVoiceConfig": {
"voiceName": "voiceName"
}
}
}
}
}'
import requests
url = "https://api.elkapi.com/v1beta/models/gemini-3.1-pro-preview:generateContent"
headers = {
"Authorization": "Bearer <token>"
}
headers["Content-Type"] = "application/json"
payload = {
"contents": [
"안녕하세요, 자기소개를 해 주세요"
],
"generationConfig": {
"responseModalities": [
"responseModalitie"
],
"speechConfig": {
"voiceConfig": {
"prebuiltVoiceConfig": {
"voiceName": "voiceName"
}
}
}
}
}
response = requests.request("POST", url, headers=headers, json=payload)
print(response.json())
const url = "https://api.elkapi.com/v1beta/models/gemini-3.1-pro-preview:generateContent";
const headers = {
"Authorization": "Bearer <token>"
};
headers["Content-Type"] = "application/json";
const payload = {
"contents": [
"안녕하세요, 자기소개를 해 주세요"
],
"generationConfig": {
"responseModalities": [
"responseModalitie"
],
"speechConfig": {
"voiceConfig": {
"prebuiltVoiceConfig": {
"voiceName": "voiceName"
}
}
}
}
};
const response = await fetch(url, {
method: "POST",
headers,
body: JSON.stringify(payload)
});
console.log(await response.json());
{
"candidates": [
{
"content": "안녕하세요, 자기소개를 해 주세요",
"finishReason": "finishReason",
"safetyRatings": [
{}
]
}
],
"usageMetadata": {
"promptTokenCount": 1,
"candidatesTokenCount": 1,
"totalTokenCount": 1
}
}
Authorizations
string
필수
모든 엔드포인트는 Bearer Token 인증이 필요합니다.요청 헤더에 추가하세요:
Authorization: Bearer YOUR_API_KEY
Path Parameters
string
기본값:"gemini-3.1-pro-preview"
필수
모델 이름예시:
gemini-3.1-pro-previewBody
Response
⌘I