{"openapi":"3.1.0","info":{"title":"ModelDB API","description":"A free API for GenAI model information based on [LiteLLM](http://litellm.ai/) model data, bought to you by [Axiom](https://axiom.co).","version":"0.1.0"},"components":{"schemas":{},"parameters":{}},"paths":{"/api/v1/models":{"get":{"tags":["Models"],"summary":"List models","parameters":[{"schema":{"type":"string","description":"Comma-separated list of prefixes to filter models"},"required":false,"description":"Comma-separated list of prefixes to filter models","name":"prefixes","in":"query"},{"schema":{"type":"string","description":"Comma-separated list of providers to filter models"},"required":false,"description":"Comma-separated list of providers to filter models","name":"providers","in":"query"},{"schema":{"type":"string","description":"Comma-separated list of model types to filter"},"required":false,"description":"Comma-separated list of model types to filter","name":"type","in":"query"},{"schema":{"type":"string","description":"Comma-separated list of capabilities to filter"},"required":false,"description":"Comma-separated list of capabilities to filter","name":"capability","in":"query"},{"schema":{"type":"string","description":"Filter models by deprecation status (true/false)"},"required":false,"description":"Filter models by deprecation status (true/false)","name":"deprecated","in":"query"},{"schema":{"type":"string","description":"Comma-separated list of fields to return"},"required":false,"description":"Comma-separated list of fields to return","name":"project","in":"query"},{"schema":{"type":"string","enum":["json","csv","jsonl"],"default":"json","description":"Response format (json or csv)"},"required":false,"description":"Response format (json or csv)","name":"format","in":"query"},{"schema":{"type":"string","description":"Include headers in CSV output (defaults to false, use headers=true to include)"},"required":false,"description":"Include headers in CSV output (defaults to false, use headers=true to include)","name":"headers","in":"query"},{"schema":{"type":"string","default":"true","description":"Replace null values with 0 (true/false, defaults to true)"},"required":false,"description":"Replace null values with 0 (true/false, defaults to true)","name":"fill-with-zeros","in":"query"},{"schema":{"type":"string","description":"Pretty print JSON output with indentation (presence of parameter enables it)"},"required":false,"description":"Pretty print JSON output with indentation (presence of parameter enables it)","name":"pretty","in":"query"}],"responses":{"200":{"description":"List of optionally filtered models","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","properties":{"provider_id":{"type":"string","description":"Provider identifier (e.g., \"openai\")"},"provider_name":{"type":"string","description":"Human-friendly display name"},"model_id":{"type":"string","description":"Clean model identifier (e.g., \"gpt-4-turbo\")"},"model_name":{"type":"string","description":"Human-friendly display name"},"max_input_tokens":{"type":["number","null"],"description":"Maximum input tokens"},"max_output_tokens":{"type":["number","null"],"description":"Maximum output tokens per request"},"input_cost_per_token":{"type":["number","null"],"description":"Input cost per token in USD"},"input_cost_per_million":{"type":["number","null"],"description":"Input cost per million tokens in USD"},"output_cost_per_token":{"type":"number","description":"Output cost per token in USD"},"output_cost_per_million":{"type":"number","description":"Output cost per million tokens in USD"},"cache_read_cost_per_token":{"type":["number","null"]},"cache_read_cost_per_million":{"type":["number","null"]},"cache_write_cost_per_token":{"type":["number","null"]},"cache_write_cost_per_million":{"type":["number","null"]},"supports_function_calling":{"type":"boolean","default":false},"supports_vision":{"type":"boolean","default":false},"supports_json_mode":{"type":"boolean","default":false},"supports_parallel_functions":{"type":"boolean","default":false},"model_type":{"type":"string","default":"chat","description":"Model type (e.g., chat, completion, embedding)"},"deprecation_date":{"type":["string","null"],"description":"Date when the model becomes deprecated (YYYY-MM-DD format)"}},"additionalProperties":{}}}},"text/csv":{"schema":{"type":"string"}}}}}}},"/api/v1/models/:id":{"get":{"tags":["Models"],"summary":"Get a single model","parameters":[{"schema":{"type":"string","description":"Model ID"},"required":true,"description":"Model ID","name":"id","in":"path"},{"schema":{"type":"string","description":"Comma-separated list of fields to return"},"required":false,"description":"Comma-separated list of fields to return","name":"project","in":"query"},{"schema":{"type":"string","enum":["json","csv","jsonl"],"default":"json","description":"Response format (json or csv)"},"required":false,"description":"Response format (json or csv)","name":"format","in":"query"},{"schema":{"type":"string","description":"Include headers in CSV output (defaults to false, use headers=true to include)"},"required":false,"description":"Include headers in CSV output (defaults to false, use headers=true to include)","name":"headers","in":"query"},{"schema":{"type":"string","default":"true","description":"Replace null values with 0 (true/false, defaults to true)"},"required":false,"description":"Replace null values with 0 (true/false, defaults to true)","name":"fill-with-zeros","in":"query"},{"schema":{"type":"string","description":"Pretty print JSON output with indentation (presence of parameter enables it)"},"required":false,"description":"Pretty print JSON output with indentation (presence of parameter enables it)","name":"pretty","in":"query"}],"responses":{"200":{"description":"Model details","content":{"application/json":{"schema":{"type":"object","properties":{"provider_id":{"type":"string","description":"Provider identifier (e.g., \"openai\")"},"provider_name":{"type":"string","description":"Human-friendly display name"},"model_id":{"type":"string","description":"Clean model identifier (e.g., \"gpt-4-turbo\")"},"model_name":{"type":"string","description":"Human-friendly display name"},"max_input_tokens":{"type":["number","null"],"description":"Maximum input tokens"},"max_output_tokens":{"type":["number","null"],"description":"Maximum output tokens per request"},"input_cost_per_token":{"type":["number","null"],"description":"Input cost per token in USD"},"input_cost_per_million":{"type":["number","null"],"description":"Input cost per million tokens in USD"},"output_cost_per_token":{"type":"number","description":"Output cost per token in USD"},"output_cost_per_million":{"type":"number","description":"Output cost per million tokens in USD"},"cache_read_cost_per_token":{"type":["number","null"]},"cache_read_cost_per_million":{"type":["number","null"]},"cache_write_cost_per_token":{"type":["number","null"]},"cache_write_cost_per_million":{"type":["number","null"]},"supports_function_calling":{"type":"boolean","default":false},"supports_vision":{"type":"boolean","default":false},"supports_json_mode":{"type":"boolean","default":false},"supports_parallel_functions":{"type":"boolean","default":false},"model_type":{"type":"string","default":"chat","description":"Model type (e.g., chat, completion, embedding)"},"deprecation_date":{"type":["string","null"],"description":"Date when the model becomes deprecated (YYYY-MM-DD format)"}},"additionalProperties":{}}},"text/csv":{"schema":{"type":"string"}}}},"404":{"description":"Model not found","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"}},"required":["error"]}},"text/csv":{"schema":{"type":"string"}}}}}}},"/api/v1/providers":{"get":{"tags":["Providers"],"summary":"List providers","parameters":[{"schema":{"type":"string","description":"Comma-separated list of providers to return"},"required":false,"description":"Comma-separated list of providers to return","name":"filter","in":"query"},{"schema":{"type":"string","description":"Comma-separated list of fields to return"},"required":false,"description":"Comma-separated list of fields to return","name":"project","in":"query"},{"schema":{"type":"string","enum":["json","csv","jsonl"],"default":"json","description":"Response format (json or csv)"},"required":false,"description":"Response format (json or csv)","name":"format","in":"query"},{"schema":{"type":"string","description":"Include headers in CSV output (defaults to false, use headers=true to include)"},"required":false,"description":"Include headers in CSV output (defaults to false, use headers=true to include)","name":"headers","in":"query"},{"schema":{"type":"string","default":"true","description":"Replace null values with 0 (true/false, defaults to true)"},"required":false,"description":"Replace null values with 0 (true/false, defaults to true)","name":"fill-with-zeros","in":"query"},{"schema":{"type":"string","description":"Pretty print JSON output with indentation (presence of parameter enables it)"},"required":false,"description":"Pretty print JSON output with indentation (presence of parameter enables it)","name":"pretty","in":"query"}],"responses":{"200":{"description":"List of optionally filtered providers","content":{"application/json":{"schema":{"type":"object","additionalProperties":{"type":"array","items":{"type":"object","properties":{"provider_id":{"type":"string","description":"Provider identifier (e.g., \"openai\")"},"provider_name":{"type":"string","description":"Human-friendly display name"},"model_id":{"type":"string","description":"Clean model identifier (e.g., \"gpt-4-turbo\")"},"model_name":{"type":"string","description":"Human-friendly display name"},"max_input_tokens":{"type":["number","null"],"description":"Maximum input tokens"},"max_output_tokens":{"type":["number","null"],"description":"Maximum output tokens per request"},"input_cost_per_token":{"type":["number","null"],"description":"Input cost per token in USD"},"input_cost_per_million":{"type":["number","null"],"description":"Input cost per million tokens in USD"},"output_cost_per_token":{"type":"number","description":"Output cost per token in USD"},"output_cost_per_million":{"type":"number","description":"Output cost per million tokens in USD"},"cache_read_cost_per_token":{"type":["number","null"]},"cache_read_cost_per_million":{"type":["number","null"]},"cache_write_cost_per_token":{"type":["number","null"]},"cache_write_cost_per_million":{"type":["number","null"]},"supports_function_calling":{"type":"boolean","default":false},"supports_vision":{"type":"boolean","default":false},"supports_json_mode":{"type":"boolean","default":false},"supports_parallel_functions":{"type":"boolean","default":false},"model_type":{"type":"string","default":"chat","description":"Model type (e.g., chat, completion, embedding)"},"deprecation_date":{"type":["string","null"],"description":"Date when the model becomes deprecated (YYYY-MM-DD format)"}},"additionalProperties":{}}}}},"text/csv":{"schema":{"type":"string"}}}}}}},"/api/v1/providers/:id":{"get":{"tags":["Providers"],"summary":"Get a single provider","parameters":[{"schema":{"type":"string","description":"Provider ID"},"required":true,"description":"Provider ID","name":"id","in":"path"},{"schema":{"type":"string","description":"Comma-separated list of fields to return"},"required":false,"description":"Comma-separated list of fields to return","name":"project","in":"query"},{"schema":{"type":"string","enum":["json","csv","jsonl"],"default":"json","description":"Response format (json or csv)"},"required":false,"description":"Response format (json or csv)","name":"format","in":"query"},{"schema":{"type":"string","description":"Include headers in CSV output (defaults to false, use headers=true to include)"},"required":false,"description":"Include headers in CSV output (defaults to false, use headers=true to include)","name":"headers","in":"query"},{"schema":{"type":"string","default":"true","description":"Replace null values with 0 (true/false, defaults to true)"},"required":false,"description":"Replace null values with 0 (true/false, defaults to true)","name":"fill-with-zeros","in":"query"},{"schema":{"type":"string","description":"Pretty print JSON output with indentation (presence of parameter enables it)"},"required":false,"description":"Pretty print JSON output with indentation (presence of parameter enables it)","name":"pretty","in":"query"}],"responses":{"200":{"description":"Provider models","content":{"application/json":{"schema":{"type":"array","items":{"type":"object","properties":{"provider_id":{"type":"string","description":"Provider identifier (e.g., \"openai\")"},"provider_name":{"type":"string","description":"Human-friendly display name"},"model_id":{"type":"string","description":"Clean model identifier (e.g., \"gpt-4-turbo\")"},"model_name":{"type":"string","description":"Human-friendly display name"},"max_input_tokens":{"type":["number","null"],"description":"Maximum input tokens"},"max_output_tokens":{"type":["number","null"],"description":"Maximum output tokens per request"},"input_cost_per_token":{"type":["number","null"],"description":"Input cost per token in USD"},"input_cost_per_million":{"type":["number","null"],"description":"Input cost per million tokens in USD"},"output_cost_per_token":{"type":"number","description":"Output cost per token in USD"},"output_cost_per_million":{"type":"number","description":"Output cost per million tokens in USD"},"cache_read_cost_per_token":{"type":["number","null"]},"cache_read_cost_per_million":{"type":["number","null"]},"cache_write_cost_per_token":{"type":["number","null"]},"cache_write_cost_per_million":{"type":["number","null"]},"supports_function_calling":{"type":"boolean","default":false},"supports_vision":{"type":"boolean","default":false},"supports_json_mode":{"type":"boolean","default":false},"supports_parallel_functions":{"type":"boolean","default":false},"model_type":{"type":"string","default":"chat","description":"Model type (e.g., chat, completion, embedding)"},"deprecation_date":{"type":["string","null"],"description":"Date when the model becomes deprecated (YYYY-MM-DD format)"}},"additionalProperties":{}}}},"text/csv":{"schema":{"type":"string"}}}},"404":{"description":"Provider not found","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"}},"required":["error"]}},"text/csv":{"schema":{"type":"string"}}}}}}},"/api/v1/metadata":{"get":{"tags":["Metadata"],"summary":"Get models metadata","parameters":[{"schema":{"type":"string","enum":["json","csv","jsonl"],"default":"json","description":"Response format (json or csv)"},"required":false,"description":"Response format (json or csv)","name":"format","in":"query"},{"schema":{"type":"string","description":"Include headers in CSV output (defaults to false, use headers=true to include)"},"required":false,"description":"Include headers in CSV output (defaults to false, use headers=true to include)","name":"headers","in":"query"},{"schema":{"type":"string","description":"Pretty print JSON output with indentation (presence of parameter enables it)"},"required":false,"description":"Pretty print JSON output with indentation (presence of parameter enables it)","name":"pretty","in":"query"}],"responses":{"200":{"description":"Models metadata information","content":{"application/json":{"schema":{"type":"object","properties":{"source":{"type":"string","description":"Source URL of the model data"},"generated_at":{"type":"string","description":"ISO timestamp of when the data was generated"},"model_count":{"type":"number","description":"Total number of models in the database"},"schema_version":{"type":"string","description":"Version of the schema used"},"stats":{"type":"object","properties":{"providers":{"type":"object","additionalProperties":{"type":"number"},"description":"Model count by provider"},"types":{"type":"object","additionalProperties":{"type":"number"},"description":"Model count by type"},"capabilities":{"type":"object","additionalProperties":{"type":"number"},"description":"Model count by capability"},"deprecation":{"type":"object","properties":{"active":{"type":"number","description":"Number of active models"},"deprecated":{"type":"number","description":"Number of deprecated models"}},"required":["active","deprecated"]}},"required":["providers","types","capabilities","deprecation"]}},"required":["source","generated_at","model_count","schema_version","stats"]}},"text/csv":{"schema":{"type":"string"}}}}}}}},"webhooks":{}}