Passer au contenu principal
POST
/
v1
/
responses
curl https://api.apimart.ai/v1/responses \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer <token>" \
  -d '{
    "model": "gpt-5",
    "input": [
      {
        "role": "user",
        "content": [
          {
            "type": "input_text",
            "text": "What is in this image?"
          },
          {
            "type": "input_image",
            "image_url": "https://openai-documentation.vercel.app/images/cat_and_otter.png"
          }
        ]
      }
    ]
  }'
{
  "code": 200,
  "data": {
    "id": "resp-9876543210",
    "object": "response",
    "created": 1677652288,
    "model": "gpt-5",
    "choices": [
      {
        "index": 0,
        "message": {
          "role": "assistant",
          "content": "This image shows a cat and an otter. They appear to be interacting with each other in a very cute and heartwarming scene. The cat and otter seem to be getting along well."
        },
        "finish_reason": "stop"
      }
    ],
    "usage": {
      "prompt_tokens": 156,
      "completion_tokens": 45,
      "total_tokens": 201
    }
  }
}

Documentation Index

Fetch the complete documentation index at: https://docs.apimart.ai/llms.txt

Use this file to discover all available pages before exploring further.

curl https://api.apimart.ai/v1/responses \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer <token>" \
  -d '{
    "model": "gpt-5",
    "input": [
      {
        "role": "user",
        "content": [
          {
            "type": "input_text",
            "text": "What is in this image?"
          },
          {
            "type": "input_image",
            "image_url": "https://openai-documentation.vercel.app/images/cat_and_otter.png"
          }
        ]
      }
    ]
  }'
{
  "code": 200,
  "data": {
    "id": "resp-9876543210",
    "object": "response",
    "created": 1677652288,
    "model": "gpt-5",
    "choices": [
      {
        "index": 0,
        "message": {
          "role": "assistant",
          "content": "This image shows a cat and an otter. They appear to be interacting with each other in a very cute and heartwarming scene. The cat and otter seem to be getting along well."
        },
        "finish_reason": "stop"
      }
    ],
    "usage": {
      "prompt_tokens": 156,
      "completion_tokens": 45,
      "total_tokens": 201
    }
  }
}

Autorisations

Authorization
string
requis
##Toutes les API nécessitent une authentification par Bearer Token##Obtenir la clé API :Rendez-vous sur la page de gestion des clés API pour obtenir votre clé APIAjouter dans l’en-tête de la requête :
Authorization: Bearer YOUR_API_KEY

Body

model
string
défaut:"gpt-5"
requis
Nom du modèleLes modèles pris en charge incluent :
  • gpt-5 — dernier modèle multimodal d’OpenAI
  • GPT-4o-image — modèle multimodal GPT-4 optimisé
  • gpt-4-vision — modèle GPT-4 de compréhension d’images
  • D’autres modèles à venir prochainement…
input
array
requis
Liste des contenus d’entréeTableau d’entrée, chaque élément contient les champs role et content.💡 Remplissage rapide (zone « Try it ») :
  1. Cliquez sur « + Add an item » pour ajouter un élément d’entrée
  2. Saisissez dans role : user (message utilisateur), assistant (réponse de l’IA) ou system (invite système)
  3. content ajouter des blocs de contenu (peuvent inclure du texte et des images)
temperature
number
Contrôle l’aléa de la sortie, plage 0–2
  • Les valeurs plus faibles (par ex. 0.2) rendent la sortie plus déterministe
  • Les valeurs plus élevées (par ex. 1.8) rendent la sortie plus aléatoire
Par défaut : 1.0
max_tokens
integer
Nombre maximal de tokens à générerLes différents modèles ont des limites maximales différentes, veuillez consulter la documentation du modèle concerné
stream
boolean
Utiliser ou non la sortie en streaming
  • true : réponse en streaming (format SSE)
  • false : renvoyer la réponse complète en une seule fois
Par défaut : false
top_p
number
Paramètre d’échantillonnage par noyau (nucleus sampling), plage 0–1Contrôle la diversité du texte généré, recommandé comme alternative à temperaturePar défaut : 1.0
tools
array
Liste d’outils pour étendre les capacités du modèleTypes d’outils pris en charge :
  • Recherche web (web_search) : recherche d’informations sur Internet en temps réel
  • Recherche de fichiers (file_search) : recherche dans le contenu des fichiers téléversés
  • Function Calling (function) : appel de fonctions personnalisées
  • MCP distant (remote_mcp) : connexion à des services distants Model Context Protocol
Exemple : [{"type": "web_search"}]

Response

id
string
Identifiant unique de la réponse
object
string
Type d’objet, fixé à response
created
integer
Horodatage de création
model
string
Nom du modèle réellement utilisé
choices
array
Liste des réponses générées
usage
object
Statistiques d’utilisation des tokens

Exemples d’utilisation

Entrée texte uniquement

{
  "model": "gpt-5",
  "input": [
    {
      "role": "user",
      "content": [
        {
          "type": "input_text",
          "text": "Hello, introduce artificial intelligence"
        }
      ]
    }
  ]
}

Utilisation de l’outil de recherche web

{
  "model": "gpt-5",
  "tools": [{"type": "web_search"}],
  "input": "What positive news is there today?"
}
cURL Example
curl "https://api.apimart.ai/v1/responses" \
    -H "Content-Type: application/json" \
    -H "Authorization: Bearer <token>" \
    -d '{
        "model": "gpt-5",
        "tools": [{"type": "web_search"}],
        "input": "What positive news is there today?"
    }'

Compréhension d’images

{
  "model": "gpt-5",
  "input": [
    {
      "role": "user",
      "content": [
        {
          "type": "input_text",
          "text": "Describe this image"
        },
        {
          "type": "input_image",
          "image_url": "https://example.com/image.jpg"
        }
      ]
    }
  ]
}

Analyse multi-images

{
  "model": "gpt-5",
  "input": [
    {
      "role": "user",
      "content": [
        {
          "type": "input_text",
          "text": "Compare the similarities and differences of these two images"
        },
        {
          "type": "input_image",
          "image_url": "https://example.com/image1.jpg"
        },
        {
          "type": "input_image",
          "image_url": "https://example.com/image2.jpg"
        }
      ]
    }
  ]
}

Image encodée en Base64

{
  "model": "gpt-5",
  "input": [
    {
      "role": "user",
      "content": [
        {
          "type": "input_text",
          "text": "Analyze this image"
        },
        {
          "type": "input_image",
          "image_url": "data:image/jpeg;base64,/9j/4AAQSkZJRg..."
        }
      ]
    }
  ]
}

Utilisation de l’outil de recherche de fichiers

{
  "model": "gpt-5",
  "tools": [{"type": "file_search"}],
  "input": "Based on uploaded documents, summarize the company's quarterly performance"
}

Utilisation du Function Calling

{
  "model": "gpt-5",
  "tools": [
    {
      "type": "function",
      "function": {
        "name": "get_weather",
        "description": "Get weather information for a specified city",
        "parameters": {
          "type": "object",
          "properties": {
            "city": {
              "type": "string",
              "description": "City name, e.g.: Beijing"
            },
            "unit": {
              "type": "string",
              "enum": ["celsius", "fahrenheit"],
              "description": "Temperature unit"
            }
          },
          "required": ["city"]
        }
      }
    }
  ],
  "input": "What's the weather like in Beijing today?"
}

Utilisation du MCP distant

{
  "model": "gpt-5",
  "tools": [
    {
      "type": "remote_mcp",
      "remote_mcp": {
        "url": "https://mcp.example.com/api",
        "auth_token": "your_mcp_token"
      }
    }
  ],
  "input": "Query user information in the database"
}

Combinaison de plusieurs outils

{
  "model": "gpt-5",
  "tools": [
    {"type": "web_search"},
    {"type": "file_search"},
    {
      "type": "function",
      "function": {
        "name": "calculate",
        "description": "Perform mathematical calculations",
        "parameters": {
          "type": "object",
          "properties": {
            "expression": {
              "type": "string",
              "description": "Mathematical expression"
            }
          },
          "required": ["expression"]
        }
      }
    }
  ],
  "input": "Search for the latest Bitcoin price and calculate the total value of 100 Bitcoins"
}

Spécifications des types de contenu

input_text

Type d’entrée texte Propriétés :
  • type : fixé à "input_text"
  • text : contenu textuel (chaîne)

input_image

Type d’entrée image Propriétés :
  • type : fixé à "input_image"
  • image_url : URL de l’image ou Data URI encodé en Base64
Formats d’image pris en charge :
  • JPEG
  • PNG
  • GIF
  • WebP
Limites de taille d’image :
  • Taille maximale du fichier : 20 Mo
  • Résolution recommandée : pas plus de 2048x2048 pixels

Détails d’utilisation des outils

Recherche web

L’outil de recherche web permet au modèle d’accéder aux informations Internet en temps réel. Exemple de configuration :
{
  "tools": [{"type": "web_search"}]
}
Cas d’usage :
  • Consulter les dernières actualités et événements en cours
  • Obtenir des données en temps réel (actions, météo, taux de change, etc.)
  • Rechercher la dernière documentation technique
  • Vérifier des informations factuelles

Recherche de fichiers

L’outil de recherche de fichiers permet au modèle de rechercher des informations pertinentes dans les documents téléversés. Exemple de configuration :
{
  "tools": [{"type": "file_search"}]
}
Cas d’usage :
  • Analyser les documents internes de l’entreprise
  • Rechercher dans les spécifications techniques et manuels
  • Requêtes sur les contrats et documents juridiques
  • Systèmes de questions-réponses sur base de connaissances

Function Calling

Définissez des fonctions personnalisées pour permettre au modèle d’appeler des API externes ou d’effectuer des opérations spécifiques. Exemple de configuration complet :
{
  "tools": [
    {
      "type": "function",
      "function": {
        "name": "get_stock_price",
        "description": "Get real-time stock price",
        "parameters": {
          "type": "object",
          "properties": {
            "symbol": {
              "type": "string",
              "description": "Stock symbol, e.g.: AAPL"
            },
            "currency": {
              "type": "string",
              "enum": ["USD", "CNY"],
              "description": "Currency unit",
              "default": "USD"
            }
          },
          "required": ["symbol"]
        }
      }
    }
  ]
}
Description des paramètres :
  • name : nom de la fonction (obligatoire)
  • description : description de la fonction (obligatoire)
  • parameters : définition des paramètres au format JSON Schema
    • type : type de paramètre
    • properties : définitions des propriétés des paramètres
    • required : liste des paramètres obligatoires
Cas d’usage :
  • Appel d’API tierces
  • Exécution de requêtes en base de données
  • Déclenchement de processus métier
  • Intégration avec des systèmes internes

MCP distant

Connexion à des services distants Model Context Protocol (MCP) pour étendre les capacités du modèle. Exemple de configuration :
{
  "tools": [
    {
      "type": "remote_mcp",
      "remote_mcp": {
        "url": "https://your-mcp-server.com/api",
        "auth_token": "your_auth_token",
        "timeout": 30
      }
    }
  ]
}
Description des paramètres :
  • url : adresse du serveur MCP (obligatoire)
  • auth_token : jeton d’authentification (optionnel)
  • timeout : délai d’expiration en secondes, par défaut 30 secondes
Cas d’usage :
  • Connexion à des services IA d’entreprise
  • Utilisation de modèles spécifiques à un domaine
  • Accès à des sources de données protégées
  • Intégration de systèmes IA distribués

Format de réponse lors de l’utilisation d’outils

Lorsque le modèle utilise des outils, le format de réponse inclut les informations d’appel d’outil :
{
  "id": "resp-123456",
  "object": "response",
  "created": 1677652288,
  "model": "gpt-5",
  "choices": [
    {
      "index": 0,
      "message": {
        "role": "assistant",
        "content": null,
        "tool_calls": [
          {
            "id": "call_abc123",
            "type": "function",
            "function": {
              "name": "get_weather",
              "arguments": "{\"city\": \"Beijing\"}"
            }
          }
        ]
      },
      "finish_reason": "tool_calls"
    }
  ]
}
Flux de travail de l’appel d’outil :
  1. Le modèle reçoit l’entrée utilisateur
  2. Analyse si des outils sont nécessaires
  3. Si oui, renvoie une requête d’appel d’outil
  4. Le client exécute l’appel d’outil
  5. Renvoie les résultats de l’outil au modèle
  6. Le modèle génère la réponse finale

Remarques importantes

  1. Exigences relatives aux URL d’images :
    • Doit être une URL publiquement accessible
    • Ou utiliser le format Data URI encodé en Base64
  2. Facturation des tokens :
    • Les images consomment des tokens selon leur résolution
    • Les images en haute résolution sont automatiquement redimensionnées pour optimiser les coûts
    • Les appels d’outils consomment également des tokens supplémentaires
  3. Ordre du contenu :
    • L’ordre des éléments dans le tableau content influence la compréhension du modèle
    • Il est recommandé de placer d’abord les instructions textuelles, puis les images
  4. Combinaisons multimodales :
    • Plusieurs textes et images peuvent être mélangés dans une même requête
    • Prise en charge des conversations multi-tours avec cohérence du contexte
  5. Limitations d’utilisation des outils :
    • Lors de l’utilisation simultanée de plusieurs outils, le modèle sélectionne intelligemment l’outil le plus approprié
    • Le function calling nécessite des définitions de fonctions et des descriptions de paramètres claires
    • Les résultats de la recherche web peuvent être limités par région et par période
  6. Compatibilité API :
    • Entièrement compatible avec le format de l’API OpenAI Responses
    • Migration transparente du code OpenAI existant
    • Prend en charge toutes les fonctionnalités d’extension d’outils OpenAI