Skip to main content

Which endpoint should I call?

Use POST /v1/images/generations for image models and POST /v1/videos/generations for video models. Use POST /v1/chat/completions for OpenAI-compatible chat requests and POST /v1/messages for Anthropic-compatible messages. Use public GET https://api.linkmodel.ai/v1/models when your application needs the current visible model catalog. It does not require a Bearer API key. Catalog visibility does not guarantee that every parameter combination has a billable SKU, so use each model’s API Reference page as the request-schema source of truth.

How do I know which parameters a model supports?

Open the model page in the API Reference. Each model page defines required fields, optional fields, enum values, defaults, descriptions, and example requests.

Can I reuse existing OpenAI or Anthropic SDKs?

For chat-compatible endpoints, yes. Use POST /v1/chat/completions for OpenAI-style integrations and POST /v1/messages for Anthropic-style integrations. Image and video generation use LinkModel’s task-based endpoints. Handle SDK exceptions using the HTTP status and the endpoint’s protocol error fields. Chat-compatible errors do not use the platform’s top-level code/msg envelope. For streaming requests, also handle protocol error events and interrupted connections. See Error handling.

How do I send a video to Gemini for understanding?

Use the Gemini-native generateContent API with a file uploaded through the Gemini file workflow. See Video understanding with Gemini for the complete upload, processing, request, and cleanup sequence.
The /v1/files/* upload workflow is only for Google Gemini models that support native fileData input. Its gs:// URI cannot be used with OpenAI, Anthropic, /v1/chat/completions, /v1/messages, image-generation, or video-generation endpoints.

Are the historical generation endpoints still supported?

Yes. Existing clients can continue using /v1/image-generation, /v1/video-generation, and their query endpoints. New integrations should use the resource-oriented routes. See Legacy API compatibility for exact mappings.

Why are some fields model-specific?

Providers expose different controls. LinkModel keeps each model schema explicit so unsupported fields are not silently accepted.

What content type should I send?

Use JSON: