注册

Gemini 函数调用接口 (Function Calling)

POST https://api.quickrouter.ai/v1beta/models/gemini-2.5-pro:generateContent 在线调试 →
Authorization

在 Header 添加参数 Authorization,其值为 Bearer 之后拼接 Token

示例: Authorization: Bearer ********************

官方文档:https://ai.google.dev/gemini-api/docs/function-calling?hl=zh-cn&example=meeting

请求参数

Query 参数
key string
必需
示例: YOUR_API_KEY
Header 参数
Content-Type string
必需
示例: application/json
Body 参数 application/json
contents array [object]
必需
parts array [object]
可选
generationConfig object
必需
responseModalities array[string]
必需
示例
{
    "contents": [
        {
            "role": "user",
            "parts": [
                {
                    "text": "Schedule a meeting with Bob and Alice for 03/27/2025 at 10:00 AM about the Q3 planning."
                }
            ]
        }
    ],
    "tools": [
        {
            "functionDeclarations": [
                {
                    "name": "schedule_meeting",
                    "description": "Schedules a meeting with specified attendees at a given time and date.",
                    "parameters": {
                        "type": "object",
                        "properties": {
                            "attendees": {
                                "type": "array",
                                "items": {
                                    "type": "string"
                                },
                                "description": "List of people attending the meeting."
                            },
                            "date": {
                                "type": "string",
                                "description": "Date of the meeting (e.g., '2024-07-29')"
                            },
                            "time": {
                                "type": "string",
                                "description": "Time of the meeting (e.g., '15:00')"
                            },
                            "topic": {
                                "type": "string",
                                "description": "The subject or topic of the meeting."
                            }
                        },
                        "required": [
                            "attendees",
                            "date",
                            "time",
                            "topic"
                        ]
                    }
                }
            ]
        }
    ]
}

请求示例代码

curl --location -g --request POST 'https://api.quickrouter.ai/v1beta/models/gemini-2.5-pro:generateContent?key=' \
--header 'Authorization: Bearer YOUR_API_KEY' \
--header 'Content-Type: application/json' \
--data-raw '{
  "contents": [
    {
      "role": "user",
      "parts": [
        {
          "text": "Schedule a meeting with Bob and Alice for 03/27/2025 at 10:00 AM about the Q3 planning."
        }
      ]
    }
  ],
  "tools": [
    {
      "functionDeclarations": [
        {
          "name": "schedule_meeting",
          "description": "Schedules a meeting with specified attendees at a given time and date.",
          "parameters": {
            "type": "object",
            "properties": {
              "attendees": {
                "type": "array",
                "items": {
                  "type": "string"
                },
                "description": "List of people attending the meeting."
              },
              "date": {
                "type": "string",
                "description": "Date of the meeting (e.g., '2024-07-29')"
              },
              "time": {
                "type": "string",
                "description": "Time of the meeting (e.g., '15:00')"
              },
              "topic": {
                "type": "string",
                "description": "The subject or topic of the meeting."
              }
            },
            "required": [
              "attendees",
              "date",
              "time",
              "topic"
            ]
          }
        }
      ]
    }
  ]
}'
var myHeaders = new Headers();
myHeaders.append("Authorization", "Bearer YOUR_API_KEY");
myHeaders.append("Content-Type", "application/json");

var raw = JSON.stringify({
  "contents": [
    {
      "role": "user",
      "parts": [
        {
          "text": "Schedule a meeting with Bob and Alice for 03/27/2025 at 10:00 AM about the Q3 planning."
        }
      ]
    }
  ],
  "tools": [
    {
      "functionDeclarations": [
        {
          "name": "schedule_meeting",
          "description": "Schedules a meeting with specified attendees at a given time and date.",
          "parameters": {
            "type": "object",
            "properties": {
              "attendees": {
                "type": "array",
                "items": {
                  "type": "string"
                },
                "description": "List of people attending the meeting."
              },
              "date": {
                "type": "string",
                "description": "Date of the meeting (e.g., '2024-07-29')"
              },
              "time": {
                "type": "string",
                "description": "Time of the meeting (e.g., '15:00')"
              },
              "topic": {
                "type": "string",
                "description": "The subject or topic of the meeting."
              }
            },
            "required": [
              "attendees",
              "date",
              "time",
              "topic"
            ]
          }
        }
      ]
    }
  ]
});

var requestOptions = {
  method: 'POST',
  headers: myHeaders,
  body: raw,
  redirect: 'follow'
};

fetch("https://api.quickrouter.ai/v1beta/models/gemini-2.5-pro:generateContent?key=", requestOptions)
  .then(response => response.text())
  .then(result => console.log(result))
  .catch(error => console.log('error', error));
import http.client
import json

conn = http.client.HTTPSConnection("api.quickrouter.ai")

payload = json.dumps({
  "contents": [
    {
      "role": "user",
      "parts": [
        {
          "text": "Schedule a meeting with Bob and Alice for 03/27/2025 at 10:00 AM about the Q3 planning."
        }
      ]
    }
  ],
  "tools": [
    {
      "functionDeclarations": [
        {
          "name": "schedule_meeting",
          "description": "Schedules a meeting with specified attendees at a given time and date.",
          "parameters": {
            "type": "object",
            "properties": {
              "attendees": {
                "type": "array",
                "items": {
                  "type": "string"
                },
                "description": "List of people attending the meeting."
              },
              "date": {
                "type": "string",
                "description": "Date of the meeting (e.g., '2024-07-29')"
              },
              "time": {
                "type": "string",
                "description": "Time of the meeting (e.g., '15:00')"
              },
              "topic": {
                "type": "string",
                "description": "The subject or topic of the meeting."
              }
            },
            "required": [
              "attendees",
              "date",
              "time",
              "topic"
            ]
          }
        }
      ]
    }
  ]
})

headers = {
  'Authorization': 'Bearer YOUR_API_KEY',
  'Content-Type': 'application/json'
}

conn.request("POST", "/v1beta/models/gemini-2.5-pro:generateContent?key=YOUR_API_KEY", payload, headers)

res = conn.getresponse()
data = res.read()
print(data.decode("utf-8"))

返回响应

响应参数 🟢 200 OK · application/json
object
可选
{}
示例
{}