Skip to navigation

Overview

Flow AI’s API follows the OpenAI API, so the official OpenAI SDKs and plain HTTP both work.

Base URL

https://ai.hyperflow.fun/v1

Every request takes your key as Authorization: Bearer sk-...; see Authentication. Every inference request names a model by its id, lab/model, such as openai/gpt-6-luna; see Models.

Endpoints

EndpointWhat it does
POST /chat/completionsChat with a text model. See Streaming, Tool calling
POST /embeddingsTurn text into vectors. See Embeddings
POST /images/generationsGenerate images. See Image generation
POST /images/editsEdit images
POST /videosStart a video. See Video generation
GET /videosList your recent videos
GET /videos/{id}A video’s status
GET /videos/{id}/contentDownload a finished video
GET /modelsThe models your key can call

Parameters

Each endpoint takes the parameters below. Anything else is removed before the request reaches the model, so it has no effect. This includes a host’s own options, such as routing, plugins and web search, which the host would bill separately.

Chat completions

model, messages, stream, stream_options, max_tokens, max_completion_tokens, temperature, top_p, frequency_penalty, presence_penalty, stop, seed, n (1 to 8), logprobs, top_logprobs, logit_bias, tools (function tools only), tool_choice, parallel_tool_calls, response_format, reasoning_effort, user, metadata

Embeddings

model, input, dimensions, encoding_format, user, metadata

Image generation

model, prompt, n, size, quality, style, background, output_format, user, metadata

Image edits

model, prompt, image, mask, n, size, quality, background, output_format, user, metadata

Videos

model, prompt, seconds, size, input_reference, user, metadata

extra_body is removed too. If an SDK sends a model-specific option through it, that option has no effect on Flow AI.

The model list

GET /models returns the models the key may call, in OpenAI’s shape, with the lab as owned_by and the model’s type as mode:

{
"object": "list",
"data": [
{ "id": "openai/gpt-6-luna", "object": "model", "created": 0, "owned_by": "OpenAI", "mode": "chat" },
{ "id": "cohere/cohere-embed-v4", "object": "model", "created": 0, "owned_by": "Cohere", "mode": "embedding" }
]
}

mode is one of chat, embedding, image or video.

Next: Authentication — send your key with every request.