openai.json

  1{
  2  "name": "OpenAI",
  3  "id": "openai",
  4  "type": "openai",
  5  "api_key": "$OPENAI_API_KEY",
  6  "api_endpoint": "$OPENAI_API_ENDPOINT",
  7  "default_large_model_id": "gpt-5.1-codex",
  8  "default_small_model_id": "gpt-4o",
  9  "models": [
 10    {
 11      "id": "gpt-5.4",
 12      "name": "GPT-5.4",
 13      "cost_per_1m_in": 2.5,
 14      "cost_per_1m_out": 15,
 15      "cost_per_1m_in_cached": 0.25,
 16      "cost_per_1m_out_cached": 0,
 17      "context_window": 1050000,
 18      "default_max_tokens": 128000,
 19      "can_reason": true,
 20      "reasoning_levels": ["low", "medium", "high", "xhigh"],
 21      "default_reasoning_effort": "medium",
 22      "supports_attachments": true
 23    },
 24    {
 25      "id": "gpt-5.4-pro",
 26      "name": "GPT-5.4 Pro",
 27      "cost_per_1m_in": 30,
 28      "cost_per_1m_out": 180,
 29      "cost_per_1m_in_cached": 0,
 30      "cost_per_1m_out_cached": 0,
 31      "context_window": 1050000,
 32      "default_max_tokens": 128000,
 33      "can_reason": true,
 34      "reasoning_levels": ["medium", "high", "xhigh"],
 35      "default_reasoning_effort": "medium",
 36      "supports_attachments": true
 37    },
 38    {
 39      "id": "gpt-5.3-codex",
 40      "name": "GPT-5.3 Codex",
 41      "cost_per_1m_in": 1.75,
 42      "cost_per_1m_out": 14,
 43      "cost_per_1m_in_cached": 0.175,
 44      "cost_per_1m_out_cached": 0.175,
 45      "context_window": 400000,
 46      "default_max_tokens": 128000,
 47      "can_reason": true,
 48      "reasoning_levels": ["minimal", "low", "medium", "high"],
 49      "default_reasoning_effort": "medium",
 50      "supports_attachments": true
 51    },
 52    {
 53      "id": "gpt-5.2",
 54      "name": "GPT-5.2",
 55      "cost_per_1m_in": 1.75,
 56      "cost_per_1m_out": 14,
 57      "cost_per_1m_in_cached": 0.175,
 58      "cost_per_1m_out_cached": 0.175,
 59      "context_window": 400000,
 60      "default_max_tokens": 128000,
 61      "can_reason": true,
 62      "reasoning_levels": ["minimal", "low", "medium", "high"],
 63      "default_reasoning_effort": "medium",
 64      "supports_attachments": true
 65    },
 66    {
 67      "id": "gpt-5.2-codex",
 68      "name": "GPT-5.2 Codex",
 69      "cost_per_1m_in": 1.75,
 70      "cost_per_1m_out": 14,
 71      "cost_per_1m_in_cached": 0.175,
 72      "cost_per_1m_out_cached": 0.175,
 73      "context_window": 400000,
 74      "default_max_tokens": 128000,
 75      "can_reason": true,
 76      "reasoning_levels": ["minimal", "low", "medium", "high"],
 77      "default_reasoning_effort": "medium",
 78      "supports_attachments": true
 79    },
 80    {
 81      "id": "gpt-5.1",
 82      "name": "GPT-5.1",
 83      "cost_per_1m_in": 1.25,
 84      "cost_per_1m_out": 10,
 85      "cost_per_1m_in_cached": 0.125,
 86      "cost_per_1m_out_cached": 0.125,
 87      "context_window": 400000,
 88      "default_max_tokens": 128000,
 89      "can_reason": true,
 90      "reasoning_levels": ["minimal", "low", "medium", "high"],
 91      "default_reasoning_effort": "medium",
 92      "supports_attachments": true
 93    },
 94    {
 95      "id": "gpt-5.1-codex",
 96      "name": "GPT-5.1 Codex",
 97      "cost_per_1m_in": 1.25,
 98      "cost_per_1m_out": 10,
 99      "cost_per_1m_in_cached": 0.125,
100      "cost_per_1m_out_cached": 0.125,
101      "context_window": 400000,
102      "default_max_tokens": 128000,
103      "can_reason": true,
104      "reasoning_levels": ["minimal", "low", "medium", "high"],
105      "default_reasoning_effort": "medium",
106      "supports_attachments": true
107    },
108    {
109      "id": "gpt-5.1-codex-max",
110      "name": "GPT-5.1 Codex Max",
111      "cost_per_1m_in": 1.25,
112      "cost_per_1m_out": 10,
113      "cost_per_1m_in_cached": 0.125,
114      "cost_per_1m_out_cached": 0.125,
115      "context_window": 400000,
116      "default_max_tokens": 128000,
117      "can_reason": true,
118      "reasoning_levels": ["minimal", "low", "medium", "high"],
119      "default_reasoning_effort": "medium",
120      "supports_attachments": true
121    },
122    {
123      "id": "gpt-5.1-codex-mini",
124      "name": "GPT-5.1 Codex Mini",
125      "cost_per_1m_in": 0.25,
126      "cost_per_1m_out": 2,
127      "cost_per_1m_in_cached": 0.025,
128      "cost_per_1m_out_cached": 0.025,
129      "context_window": 400000,
130      "default_max_tokens": 128000,
131      "can_reason": true,
132      "reasoning_levels": ["low", "medium", "high"],
133      "default_reasoning_effort": "medium",
134      "supports_attachments": true
135    },
136    {
137      "id": "gpt-5-codex",
138      "name": "GPT-5 Codex",
139      "cost_per_1m_in": 1.25,
140      "cost_per_1m_out": 10,
141      "cost_per_1m_in_cached": 0.125,
142      "cost_per_1m_out_cached": 0.125,
143      "context_window": 400000,
144      "default_max_tokens": 128000,
145      "can_reason": true,
146      "reasoning_levels": ["minimal", "low", "medium", "high"],
147      "default_reasoning_effort": "medium",
148      "supports_attachments": true
149    },
150    {
151      "id": "gpt-5",
152      "name": "GPT-5",
153      "cost_per_1m_in": 1.25,
154      "cost_per_1m_out": 10,
155      "cost_per_1m_in_cached": 0.125,
156      "cost_per_1m_out_cached": 0.125,
157      "context_window": 400000,
158      "default_max_tokens": 128000,
159      "can_reason": true,
160      "reasoning_levels": ["minimal", "low", "medium", "high"],
161      "default_reasoning_effort": "medium",
162      "supports_attachments": true
163    },
164    {
165      "id": "gpt-5-mini",
166      "name": "GPT-5 Mini",
167      "cost_per_1m_in": 0.25,
168      "cost_per_1m_out": 2,
169      "cost_per_1m_in_cached": 0.025,
170      "cost_per_1m_out_cached": 0.025,
171      "context_window": 400000,
172      "default_max_tokens": 128000,
173      "can_reason": true,
174      "reasoning_levels": ["low", "medium", "high"],
175      "default_reasoning_effort": "medium",
176      "supports_attachments": true
177    },
178    {
179      "id": "gpt-5-nano",
180      "name": "GPT-5 Nano",
181      "cost_per_1m_in": 0.05,
182      "cost_per_1m_out": 0.4,
183      "cost_per_1m_in_cached": 0.005,
184      "cost_per_1m_out_cached": 0.005,
185      "context_window": 400000,
186      "default_max_tokens": 128000,
187      "can_reason": true,
188      "reasoning_levels": ["low", "medium", "high"],
189      "default_reasoning_effort": "medium",
190      "supports_attachments": true
191    },
192    {
193      "id": "o4-mini",
194      "name": "o4 Mini",
195      "cost_per_1m_in": 1.1,
196      "cost_per_1m_out": 4.4,
197      "cost_per_1m_in_cached": 0,
198      "cost_per_1m_out_cached": 0.275,
199      "context_window": 200000,
200      "default_max_tokens": 50000,
201      "can_reason": true,
202      "reasoning_levels": ["low", "medium", "high"],
203      "default_reasoning_effort": "medium",
204      "supports_attachments": true
205    },
206    {
207      "id": "o3",
208      "name": "o3",
209      "cost_per_1m_in": 2,
210      "cost_per_1m_out": 8,
211      "cost_per_1m_in_cached": 0,
212      "cost_per_1m_out_cached": 0.5,
213      "context_window": 200000,
214      "default_max_tokens": 50000,
215      "can_reason": true,
216      "reasoning_levels": ["low", "medium", "high"],
217      "default_reasoning_effort": "medium",
218      "supports_attachments": true
219    },
220    {
221      "id": "gpt-4.1",
222      "name": "GPT-4.1",
223      "cost_per_1m_in": 2,
224      "cost_per_1m_out": 8,
225      "cost_per_1m_in_cached": 0,
226      "cost_per_1m_out_cached": 0.5,
227      "context_window": 1047576,
228      "default_max_tokens": 16384,
229      "can_reason": false,
230      "supports_attachments": true
231    },
232    {
233      "id": "gpt-4.1-mini",
234      "name": "GPT-4.1 Mini",
235      "cost_per_1m_in": 0.39999999999999997,
236      "cost_per_1m_out": 1.5999999999999999,
237      "cost_per_1m_in_cached": 0,
238      "cost_per_1m_out_cached": 0.09999999999999999,
239      "context_window": 1047576,
240      "default_max_tokens": 16384,
241      "can_reason": false,
242      "supports_attachments": true
243    },
244    {
245      "id": "gpt-4.1-nano",
246      "name": "GPT-4.1 Nano",
247      "cost_per_1m_in": 0.09999999999999999,
248      "cost_per_1m_out": 0.39999999999999997,
249      "cost_per_1m_in_cached": 0,
250      "cost_per_1m_out_cached": 0.024999999999999998,
251      "context_window": 1047576,
252      "default_max_tokens": 16384,
253      "can_reason": false,
254      "supports_attachments": true
255    },
256    {
257      "id": "o3-mini",
258      "name": "o3 Mini",
259      "cost_per_1m_in": 1.1,
260      "cost_per_1m_out": 4.4,
261      "cost_per_1m_in_cached": 0,
262      "cost_per_1m_out_cached": 0.55,
263      "context_window": 200000,
264      "default_max_tokens": 50000,
265      "can_reason": true,
266      "reasoning_levels": ["low", "medium", "high"],
267      "default_reasoning_effort": "medium",
268      "supports_attachments": false
269    },
270    {
271      "id": "gpt-4o",
272      "name": "GPT-4o",
273      "cost_per_1m_in": 2.5,
274      "cost_per_1m_out": 10,
275      "cost_per_1m_in_cached": 0,
276      "cost_per_1m_out_cached": 1.25,
277      "context_window": 128000,
278      "default_max_tokens": 8192,
279      "can_reason": false,
280      "supports_attachments": true
281    },
282    {
283      "id": "gpt-4o-mini",
284      "name": "GPT-4o-mini",
285      "cost_per_1m_in": 0.15,
286      "cost_per_1m_out": 0.6,
287      "cost_per_1m_in_cached": 0,
288      "cost_per_1m_out_cached": 0.075,
289      "context_window": 128000,
290      "default_max_tokens": 8192,
291      "can_reason": false,
292      "reasoning_effort": "",
293      "supports_attachments": true
294    }
295  ]
296}