# Models ## List available models **get** `/models` Returns the public model catalog visible to API clients. Use the optional type filter to narrow results to image, video, audio, or text models. ### Query Parameters - `type: optional "image" or "video" or "audio" or "text"` Model type - `"image"` - `"video"` - `"audio"` - `"text"` ### Returns - `models: array of object { capabilities, estimated_credits, estimated_seconds, 6 more }` - `capabilities: array of string` Model capabilities - `estimated_credits: number` Estimated credits - `estimated_seconds: number` Estimated seconds - `model_id: string` Model identifier - `name: string` Model name - `params: array of object { name, required, type, 7 more }` Supported generation parameters for this model - `name: string` Parameter name to pass in generation params - `required: boolean` Whether the model requires this parameter - `type: "string" or "string[]" or "bool" or 5 more` Parameter value type - `"string"` - `"string[]"` - `"bool"` - `"int"` - `"int?"` - `"seed"` - `"float"` - `"dict"` - `default: optional unknown` Default parameter value - `description: optional string` Parameter help text - `label: optional string` Human-readable parameter label - `max: optional number` Maximum numeric value - `min: optional number` Minimum numeric value - `options: optional array of object { label, value, description }` Allowed values for enum-like parameters - `label: string` Displayed option label - `value: string` Option value to pass in generation params - `description: optional string` Option description - `properties: optional map[object { default, max, min } ]` Nested numeric properties for object parameters - `default: number` - `max: number` - `min: number` - `provider: string` Model provider - `type: "image" or "video" or "audio" or "text"` Model type - `"image"` - `"video"` - `"audio"` - `"text"` - `beta: optional boolean` Whether this model is in beta ### Example ```http curl https://app.flora.ai/api/v1/models \ -H "Authorization: Bearer $FLORA_API_KEY" ``` #### Response ```json { "models": [ { "capabilities": [ "string" ], "estimated_credits": 0, "estimated_seconds": 0, "model_id": "t2i-flux-2-pro", "name": "name", "params": [ { "name": "name", "required": true, "type": "string", "default": {}, "description": "description", "label": "label", "max": 0, "min": 0, "options": [ { "label": "label", "value": "value", "description": "description" } ], "properties": { "foo": { "default": 0, "max": 0, "min": 0 } } } ], "provider": "Black Forest Labs", "type": "image", "beta": true } ] } ``` ## Domain Types ### Model List Response - `ModelListResponse object { models }` - `models: array of object { capabilities, estimated_credits, estimated_seconds, 6 more }` - `capabilities: array of string` Model capabilities - `estimated_credits: number` Estimated credits - `estimated_seconds: number` Estimated seconds - `model_id: string` Model identifier - `name: string` Model name - `params: array of object { name, required, type, 7 more }` Supported generation parameters for this model - `name: string` Parameter name to pass in generation params - `required: boolean` Whether the model requires this parameter - `type: "string" or "string[]" or "bool" or 5 more` Parameter value type - `"string"` - `"string[]"` - `"bool"` - `"int"` - `"int?"` - `"seed"` - `"float"` - `"dict"` - `default: optional unknown` Default parameter value - `description: optional string` Parameter help text - `label: optional string` Human-readable parameter label - `max: optional number` Maximum numeric value - `min: optional number` Minimum numeric value - `options: optional array of object { label, value, description }` Allowed values for enum-like parameters - `label: string` Displayed option label - `value: string` Option value to pass in generation params - `description: optional string` Option description - `properties: optional map[object { default, max, min } ]` Nested numeric properties for object parameters - `default: number` - `max: number` - `min: number` - `provider: string` Model provider - `type: "image" or "video" or "audio" or "text"` Model type - `"image"` - `"video"` - `"audio"` - `"text"` - `beta: optional boolean` Whether this model is in beta