---
version: 2
interactions:
- id: 0
  request:
    proto: HTTP/1.1
    proto_major: 1
    proto_minor: 1
    content_length: 494
    host: ""
    body: '{"messages":[{"content":"You are a helpful assistant","role":"system"},{"content":"What''s the weather in Florence,Italy?","role":"user"}],"model":"google/gemini-3-pro-preview","max_tokens":4000,"tool_choice":"auto","tools":[{"function":{"name":"weather","strict":false,"description":"Get weather information for a location","parameters":{"properties":{"location":{"description":"the city","type":"string"}},"required":["location"],"type":"object"}},"type":"function"}],"usage":{"include":true}}'
    headers:
      Accept:
      - application/json
      Content-Type:
      - application/json
      User-Agent:
      - OpenAI/Go 2.7.1
    url: https://openrouter.ai/api/v1/chat/completions
    method: POST
  response:
    proto: HTTP/2.0
    proto_major: 2
    proto_minor: 0
    content_length: -1
    uncompressed: true
    body: "\n         \n\n         \n\n         \n\n         \n\n         \n\n         \n\n         \n\n         \n\n         \n\n         \n\n         \n\n         \n\n         \n\n         \n\n         \n{\"id\":\"gen-1773323962-Rw07UNMeWA60q0rNXDzM\",\"object\":\"chat.completion\",\"created\":1773323962,\"model\":\"google/gemini-3-pro-preview-20251117\",\"provider\":\"Google\",\"system_fingerprint\":null,\"choices\":[{\"index\":0,\"logprobs\":null,\"finish_reason\":\"tool_calls\",\"native_finish_reason\":\"STOP\",\"message\":{\"role\":\"assistant\",\"content\":null,\"refusal\":null,\"reasoning\":\"**Gathering Weather Data**\\n\\nI'm zeroing in on the best approach. My strategy is to employ the `weather` function to get the required weather details. Right now, I'm focused on extracting the location from the user's initial request. I'll need to feed the function \\\"Florence, Italy\\\" as the location.\\n\\n\\n**Defining The Function Call**\\n\\nI'm solidifying the implementation strategy. I plan to call the `weather` function now that I have the location. The next step will be formatting the function call with \\\"Florence, Italy\\\" properly input as the location.\\n\\n\\n\",\"tool_calls\":[{\"type\":\"function\",\"index\":0,\"id\":\"tool_weather_LHAdTONWsMosyZwDGBmQ\",\"function\":{\"name\":\"weather\",\"arguments\":\"{\\\"location\\\":\\\"Florence,Italy\\\"}\"}}],\"reasoning_details\":[{\"type\":\"reasoning.text\",\"text\":\"**Gathering Weather Data**\\n\\nI'm zeroing in on the best approach. My strategy is to employ the `weather` function to get the required weather details. Right now, I'm focused on extracting the location from the user's initial request. I'll need to feed the function \\\"Florence, Italy\\\" as the location.\\n\\n\\n**Defining The Function Call**\\n\\nI'm solidifying the implementation strategy. I plan to call the `weather` function now that I have the location. The next step will be formatting the function call with \\\"Florence, Italy\\\" properly input as the location.\\n\\n\\n\",\"format\":\"google-gemini-v1\",\"index\":0},{\"type\":\"reasoning.encrypted\",\"data\":\"ClkBjz1rXxzgSFPYazsgAbVkNsxRfxt6rILuGXWuM905srXA5IqQHKYshHvdIQ4clY1SQSX9x7Zfqi+EIopTLVedHvJm/vuMzH8rJ6IK5lsgV7CYi3/hLyME5gprAY89a190CczLBN2BdlP2DpRaail2ts4NRlnoh9Ea/uT1Zx3OjkGaX1KmKQXdmyAyx0JPv8vAm6mBG7LT8kdBCCH5og9/wUmucf1YkhGH0LnK+BfmeyAkTQlinpMq9FS4wbl+Um3USz7DUX0KswEBjz1rX/VQvRaXzGVlq9MkoDfX5Zbjw23OcCOrKQDhFQhq9tT/0c7IEPHs2wsjVLrWnYdltTSfvX0z9ML0miKyTqQSLBdPh2WKWWmpdY/vdQ12rkAglUeIvTdINZKkY4mdoMKzDgvIFc2mdEUN7qfnYu/DBeLXr+FM0jjfOvDaVQjf6zfgUX6HS6u/d42j0XkLePkt56coejNz+8vfzW4UikY/FL9/i5HDSaN/aCAUnMHuPgpEAY89a18zrha3ifUOUwGIrCWFiaLNLRckJfRfAD6zeqthAAhv1p2oBCVbRtiSplusfcfZDq25CZ8pPGfp8hHv1JZ1Zh8=\",\"format\":\"google-gemini-v1\",\"id\":\"tool_weather_LHAdTONWsMosyZwDGBmQ\",\"index\":1}]}}],\"usage\":{\"prompt_tokens\":28,\"completion_tokens\":82,\"total_tokens\":110,\"cost\":0.00104,\"is_byok\":false,\"prompt_tokens_details\":{\"cached_tokens\":0,\"cache_write_tokens\":0,\"audio_tokens\":0,\"video_tokens\":0},\"cost_details\":{\"upstream_inference_cost\":0.00104,\"upstream_inference_prompt_cost\":0.000056,\"upstream_inference_completions_cost\":0.000984},\"completion_tokens_details\":{\"reasoning_tokens\":73,\"image_tokens\":0,\"audio_tokens\":0}}}"
    headers:
      Content-Type:
      - application/json
    status: 200 OK
    code: 200
    duration: 6.332650917s
- id: 1
  request:
    proto: HTTP/1.1
    proto_major: 1
    proto_minor: 1
    content_length: 1499
    host: ""
    body: '{"messages":[{"content":"You are a helpful assistant","role":"system"},{"content":"What''s the weather in Florence,Italy?","role":"user"},{"tool_calls":[{"id":"tool_weather_LHAdTONWsMosyZwDGBmQ","function":{"arguments":"{\"location\":\"Florence,Italy\"}","name":"weather"},"type":"function"}],"role":"assistant","reasoning_details":[{"data":"ClkBjz1rXxzgSFPYazsgAbVkNsxRfxt6rILuGXWuM905srXA5IqQHKYshHvdIQ4clY1SQSX9x7Zfqi+EIopTLVedHvJm/vuMzH8rJ6IK5lsgV7CYi3/hLyME5gprAY89a190CczLBN2BdlP2DpRaail2ts4NRlnoh9Ea/uT1Zx3OjkGaX1KmKQXdmyAyx0JPv8vAm6mBG7LT8kdBCCH5og9/wUmucf1YkhGH0LnK+BfmeyAkTQlinpMq9FS4wbl+Um3USz7DUX0KswEBjz1rX/VQvRaXzGVlq9MkoDfX5Zbjw23OcCOrKQDhFQhq9tT/0c7IEPHs2wsjVLrWnYdltTSfvX0z9ML0miKyTqQSLBdPh2WKWWmpdY/vdQ12rkAglUeIvTdINZKkY4mdoMKzDgvIFc2mdEUN7qfnYu/DBeLXr+FM0jjfOvDaVQjf6zfgUX6HS6u/d42j0XkLePkt56coejNz+8vfzW4UikY/FL9/i5HDSaN/aCAUnMHuPgpEAY89a18zrha3ifUOUwGIrCWFiaLNLRckJfRfAD6zeqthAAhv1p2oBCVbRtiSplusfcfZDq25CZ8pPGfp8hHv1JZ1Zh8=","format":"google-gemini-v1","id":"tool_weather_LHAdTONWsMosyZwDGBmQ","index":0,"type":"reasoning.encrypted"}]},{"content":"40 C","tool_call_id":"tool_weather_LHAdTONWsMosyZwDGBmQ","role":"tool"}],"model":"google/gemini-3-pro-preview","max_tokens":4000,"tool_choice":"auto","tools":[{"function":{"name":"weather","strict":false,"description":"Get weather information for a location","parameters":{"properties":{"location":{"description":"the city","type":"string"}},"required":["location"],"type":"object"}},"type":"function"}],"usage":{"include":true}}'
    headers:
      Accept:
      - application/json
      Content-Type:
      - application/json
      User-Agent:
      - OpenAI/Go 2.7.1
    url: https://openrouter.ai/api/v1/chat/completions
    method: POST
  response:
    proto: HTTP/2.0
    proto_major: 2
    proto_minor: 0
    content_length: -1
    uncompressed: true
    body: "\n         \n\n         \n\n         \n\n         \n\n         \n\n         \n\n         \n\n         \n\n         \n\n         \n{\"id\":\"gen-1773323968-FAAVX4K7Zias1hgmd27W\",\"object\":\"chat.completion\",\"created\":1773323968,\"model\":\"google/gemini-3-pro-preview-20251117\",\"provider\":\"Google\",\"system_fingerprint\":null,\"choices\":[{\"index\":0,\"logprobs\":null,\"finish_reason\":\"stop\",\"native_finish_reason\":\"STOP\",\"message\":{\"role\":\"assistant\",\"content\":\"The weather in Florence, Italy is currently 40°C.\",\"refusal\":null,\"reasoning\":null}}],\"usage\":{\"prompt_tokens\":52,\"completion_tokens\":14,\"total_tokens\":66,\"cost\":0.000272,\"is_byok\":false,\"prompt_tokens_details\":{\"cached_tokens\":0,\"cache_write_tokens\":0,\"audio_tokens\":0,\"video_tokens\":0},\"cost_details\":{\"upstream_inference_cost\":0.000272,\"upstream_inference_prompt_cost\":0.000104,\"upstream_inference_completions_cost\":0.000168},\"completion_tokens_details\":{\"reasoning_tokens\":0,\"image_tokens\":0,\"audio_tokens\":0}}}"
    headers:
      Content-Type:
      - application/json
    status: 200 OK
    code: 200
    duration: 4.414599542s
