pricetoken 0.4.1 → 0.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.mts CHANGED
@@ -12,6 +12,7 @@ interface ModelPricing {
12
12
  status: ModelStatus | null;
13
13
  confidence: DataConfidence;
14
14
  lastUpdated: string | null;
15
+ launchDate: string | null;
15
16
  }
16
17
  interface PriceHistoryPoint {
17
18
  date: string;
@@ -56,15 +57,21 @@ interface PriceTokenError {
56
57
  interface ClientOptions {
57
58
  baseUrl?: string;
58
59
  apiKey?: string;
60
+ telemetry?: boolean;
59
61
  }
60
62
  declare class PriceTokenClient {
61
63
  private readonly baseUrl;
62
64
  private readonly apiKey?;
65
+ private readonly telemetryEnabled;
66
+ private telemetrySent;
63
67
  constructor(options?: ClientOptions);
68
+ private sendTelemetry;
64
69
  private request;
65
70
  getPricing(opts?: {
66
71
  provider?: string;
67
72
  currency?: string;
73
+ after?: string;
74
+ before?: string;
68
75
  }): Promise<ModelPricing[]>;
69
76
  getModel(modelId: string, opts?: {
70
77
  currency?: string;
@@ -81,6 +88,8 @@ declare class PriceTokenClient {
81
88
  getCheapest(opts?: {
82
89
  provider?: string;
83
90
  currency?: string;
91
+ after?: string;
92
+ before?: string;
84
93
  }): Promise<ModelPricing>;
85
94
  }
86
95
 
package/dist/index.d.ts CHANGED
@@ -12,6 +12,7 @@ interface ModelPricing {
12
12
  status: ModelStatus | null;
13
13
  confidence: DataConfidence;
14
14
  lastUpdated: string | null;
15
+ launchDate: string | null;
15
16
  }
16
17
  interface PriceHistoryPoint {
17
18
  date: string;
@@ -56,15 +57,21 @@ interface PriceTokenError {
56
57
  interface ClientOptions {
57
58
  baseUrl?: string;
58
59
  apiKey?: string;
60
+ telemetry?: boolean;
59
61
  }
60
62
  declare class PriceTokenClient {
61
63
  private readonly baseUrl;
62
64
  private readonly apiKey?;
65
+ private readonly telemetryEnabled;
66
+ private telemetrySent;
63
67
  constructor(options?: ClientOptions);
68
+ private sendTelemetry;
64
69
  private request;
65
70
  getPricing(opts?: {
66
71
  provider?: string;
67
72
  currency?: string;
73
+ after?: string;
74
+ before?: string;
68
75
  }): Promise<ModelPricing[]>;
69
76
  getModel(modelId: string, opts?: {
70
77
  currency?: string;
@@ -81,6 +88,8 @@ declare class PriceTokenClient {
81
88
  getCheapest(opts?: {
82
89
  provider?: string;
83
90
  currency?: string;
91
+ after?: string;
92
+ before?: string;
84
93
  }): Promise<ModelPricing>;
85
94
  }
86
95
 
package/dist/index.js CHANGED
@@ -28,14 +28,30 @@ __export(index_exports, {
28
28
  module.exports = __toCommonJS(index_exports);
29
29
 
30
30
  // src/client.ts
31
+ var SDK_VERSION = "0.6.0";
31
32
  var PriceTokenClient = class {
32
33
  baseUrl;
33
34
  apiKey;
35
+ telemetryEnabled;
36
+ telemetrySent = false;
34
37
  constructor(options) {
35
38
  this.baseUrl = (options?.baseUrl ?? "https://pricetoken.ai").replace(/\/$/, "");
36
39
  this.apiKey = options?.apiKey;
40
+ this.telemetryEnabled = options?.telemetry ?? false;
41
+ }
42
+ sendTelemetry() {
43
+ if (!this.telemetryEnabled || this.telemetrySent) return;
44
+ this.telemetrySent = true;
45
+ const runtime = typeof globalThis.process !== "undefined" ? `node-${globalThis.process.version?.replace("v", "") ?? "unknown"}` : "browser";
46
+ fetch(`${this.baseUrl}/api/v1/telemetry`, {
47
+ method: "POST",
48
+ headers: { "Content-Type": "application/json" },
49
+ body: JSON.stringify({ sdk: "js", version: SDK_VERSION, runtime })
50
+ }).catch(() => {
51
+ });
37
52
  }
38
53
  async request(path) {
54
+ this.sendTelemetry();
39
55
  const headers = {
40
56
  "Content-Type": "application/json"
41
57
  };
@@ -56,6 +72,8 @@ var PriceTokenClient = class {
56
72
  const params = new URLSearchParams();
57
73
  if (opts?.provider) params.set("provider", opts.provider);
58
74
  if (opts?.currency) params.set("currency", opts.currency);
75
+ if (opts?.after) params.set("after", opts.after);
76
+ if (opts?.before) params.set("before", opts.before);
59
77
  const qs = params.toString();
60
78
  return this.request(`/api/v1/pricing${qs ? `?${qs}` : ""}`);
61
79
  }
@@ -85,6 +103,8 @@ var PriceTokenClient = class {
85
103
  const params = new URLSearchParams();
86
104
  if (opts?.provider) params.set("provider", opts.provider);
87
105
  if (opts?.currency) params.set("currency", opts.currency);
106
+ if (opts?.after) params.set("after", opts.after);
107
+ if (opts?.before) params.set("before", opts.before);
88
108
  const qs = params.toString();
89
109
  return this.request(`/api/v1/pricing/cheapest${qs ? `?${qs}` : ""}`);
90
110
  }
@@ -104,7 +124,8 @@ var STATIC_PRICING = [
104
124
  source: "seed",
105
125
  status: "active",
106
126
  confidence: "high",
107
- lastUpdated: null
127
+ lastUpdated: null,
128
+ launchDate: "2026-02-05"
108
129
  },
109
130
  {
110
131
  modelId: "claude-sonnet-4-6",
@@ -117,7 +138,8 @@ var STATIC_PRICING = [
117
138
  source: "seed",
118
139
  status: "active",
119
140
  confidence: "high",
120
- lastUpdated: null
141
+ lastUpdated: null,
142
+ launchDate: "2026-02-17"
121
143
  },
122
144
  {
123
145
  modelId: "claude-haiku-4-5-20251001",
@@ -130,9 +152,38 @@ var STATIC_PRICING = [
130
152
  source: "seed",
131
153
  status: "active",
132
154
  confidence: "high",
133
- lastUpdated: null
155
+ lastUpdated: null,
156
+ launchDate: "2025-10-15"
134
157
  },
135
158
  // OpenAI
159
+ {
160
+ modelId: "gpt-5.3-chat-latest",
161
+ provider: "openai",
162
+ displayName: "GPT-5.3 Instant",
163
+ inputPerMTok: 1.75,
164
+ outputPerMTok: 14,
165
+ contextWindow: 128e3,
166
+ maxOutputTokens: 16384,
167
+ source: "seed",
168
+ status: "active",
169
+ confidence: "high",
170
+ lastUpdated: null,
171
+ launchDate: "2026-03-03"
172
+ },
173
+ {
174
+ modelId: "gpt-5.3-codex",
175
+ provider: "openai",
176
+ displayName: "GPT-5.3 Codex",
177
+ inputPerMTok: 1.75,
178
+ outputPerMTok: 14,
179
+ contextWindow: 4e5,
180
+ maxOutputTokens: 128e3,
181
+ source: "seed",
182
+ status: "active",
183
+ confidence: "high",
184
+ lastUpdated: null,
185
+ launchDate: "2026-02-24"
186
+ },
136
187
  {
137
188
  modelId: "gpt-5.2",
138
189
  provider: "openai",
@@ -144,7 +195,8 @@ var STATIC_PRICING = [
144
195
  source: "seed",
145
196
  status: "active",
146
197
  confidence: "high",
147
- lastUpdated: null
198
+ lastUpdated: null,
199
+ launchDate: "2025-12-11"
148
200
  },
149
201
  {
150
202
  modelId: "gpt-5",
@@ -157,7 +209,8 @@ var STATIC_PRICING = [
157
209
  source: "seed",
158
210
  status: "active",
159
211
  confidence: "high",
160
- lastUpdated: null
212
+ lastUpdated: null,
213
+ launchDate: "2025-08-07"
161
214
  },
162
215
  {
163
216
  modelId: "gpt-5-mini",
@@ -170,7 +223,8 @@ var STATIC_PRICING = [
170
223
  source: "seed",
171
224
  status: "active",
172
225
  confidence: "high",
173
- lastUpdated: null
226
+ lastUpdated: null,
227
+ launchDate: "2025-08-07"
174
228
  },
175
229
  {
176
230
  modelId: "gpt-5-nano",
@@ -183,7 +237,8 @@ var STATIC_PRICING = [
183
237
  source: "seed",
184
238
  status: "active",
185
239
  confidence: "high",
186
- lastUpdated: null
240
+ lastUpdated: null,
241
+ launchDate: "2025-08-07"
187
242
  },
188
243
  {
189
244
  modelId: "gpt-4.1",
@@ -196,7 +251,8 @@ var STATIC_PRICING = [
196
251
  source: "seed",
197
252
  status: "active",
198
253
  confidence: "high",
199
- lastUpdated: null
254
+ lastUpdated: null,
255
+ launchDate: "2025-04-14"
200
256
  },
201
257
  {
202
258
  modelId: "gpt-4.1-mini",
@@ -209,7 +265,8 @@ var STATIC_PRICING = [
209
265
  source: "seed",
210
266
  status: "active",
211
267
  confidence: "high",
212
- lastUpdated: null
268
+ lastUpdated: null,
269
+ launchDate: "2025-04-14"
213
270
  },
214
271
  {
215
272
  modelId: "gpt-4.1-nano",
@@ -222,7 +279,8 @@ var STATIC_PRICING = [
222
279
  source: "seed",
223
280
  status: "active",
224
281
  confidence: "high",
225
- lastUpdated: null
282
+ lastUpdated: null,
283
+ launchDate: "2025-04-14"
226
284
  },
227
285
  {
228
286
  modelId: "gpt-4o",
@@ -235,7 +293,8 @@ var STATIC_PRICING = [
235
293
  source: "seed",
236
294
  status: "active",
237
295
  confidence: "high",
238
- lastUpdated: null
296
+ lastUpdated: null,
297
+ launchDate: "2024-05-13"
239
298
  },
240
299
  {
241
300
  modelId: "gpt-4o-mini",
@@ -248,7 +307,8 @@ var STATIC_PRICING = [
248
307
  source: "seed",
249
308
  status: "active",
250
309
  confidence: "high",
251
- lastUpdated: null
310
+ lastUpdated: null,
311
+ launchDate: "2024-07-18"
252
312
  },
253
313
  {
254
314
  modelId: "o3",
@@ -261,7 +321,8 @@ var STATIC_PRICING = [
261
321
  source: "seed",
262
322
  status: "active",
263
323
  confidence: "high",
264
- lastUpdated: null
324
+ lastUpdated: null,
325
+ launchDate: "2025-04-16"
265
326
  },
266
327
  {
267
328
  modelId: "o4-mini",
@@ -274,7 +335,8 @@ var STATIC_PRICING = [
274
335
  source: "seed",
275
336
  status: "active",
276
337
  confidence: "high",
277
- lastUpdated: null
338
+ lastUpdated: null,
339
+ launchDate: "2025-04-16"
278
340
  },
279
341
  {
280
342
  modelId: "gpt-5.1",
@@ -287,7 +349,8 @@ var STATIC_PRICING = [
287
349
  source: "seed",
288
350
  status: "active",
289
351
  confidence: "high",
290
- lastUpdated: null
352
+ lastUpdated: null,
353
+ launchDate: "2025-11-13"
291
354
  },
292
355
  {
293
356
  modelId: "o3-pro",
@@ -300,7 +363,8 @@ var STATIC_PRICING = [
300
363
  source: "seed",
301
364
  status: "active",
302
365
  confidence: "high",
303
- lastUpdated: null
366
+ lastUpdated: null,
367
+ launchDate: "2025-06-10"
304
368
  },
305
369
  {
306
370
  modelId: "o3-mini",
@@ -313,7 +377,8 @@ var STATIC_PRICING = [
313
377
  source: "seed",
314
378
  status: "active",
315
379
  confidence: "high",
316
- lastUpdated: null
380
+ lastUpdated: null,
381
+ launchDate: "2025-01-31"
317
382
  },
318
383
  // Google
319
384
  {
@@ -327,7 +392,8 @@ var STATIC_PRICING = [
327
392
  source: "seed",
328
393
  status: "active",
329
394
  confidence: "high",
330
- lastUpdated: null
395
+ lastUpdated: null,
396
+ launchDate: "2025-06-17"
331
397
  },
332
398
  {
333
399
  modelId: "gemini-2.5-flash",
@@ -340,7 +406,8 @@ var STATIC_PRICING = [
340
406
  source: "seed",
341
407
  status: "active",
342
408
  confidence: "high",
343
- lastUpdated: null
409
+ lastUpdated: null,
410
+ launchDate: "2025-06-17"
344
411
  },
345
412
  {
346
413
  modelId: "gemini-2.0-flash",
@@ -353,7 +420,8 @@ var STATIC_PRICING = [
353
420
  source: "seed",
354
421
  status: "active",
355
422
  confidence: "high",
356
- lastUpdated: null
423
+ lastUpdated: null,
424
+ launchDate: "2025-02-05"
357
425
  },
358
426
  {
359
427
  modelId: "gemini-2.0-flash-lite",
@@ -366,7 +434,8 @@ var STATIC_PRICING = [
366
434
  source: "seed",
367
435
  status: "active",
368
436
  confidence: "high",
369
- lastUpdated: null
437
+ lastUpdated: null,
438
+ launchDate: "2025-02-25"
370
439
  },
371
440
  {
372
441
  modelId: "gemini-2.5-flash-lite",
@@ -379,7 +448,8 @@ var STATIC_PRICING = [
379
448
  source: "seed",
380
449
  status: "active",
381
450
  confidence: "high",
382
- lastUpdated: null
451
+ lastUpdated: null,
452
+ launchDate: "2025-07-22"
383
453
  },
384
454
  {
385
455
  modelId: "gemini-3.1-pro-preview",
@@ -392,7 +462,36 @@ var STATIC_PRICING = [
392
462
  source: "seed",
393
463
  status: "preview",
394
464
  confidence: "high",
395
- lastUpdated: null
465
+ lastUpdated: null,
466
+ launchDate: "2026-02-19"
467
+ },
468
+ {
469
+ modelId: "gemini-3.1-flash-lite-preview",
470
+ provider: "google",
471
+ displayName: "Gemini 3.1 Flash-Lite Preview",
472
+ inputPerMTok: 0.25,
473
+ outputPerMTok: 1.5,
474
+ contextWindow: 1048576,
475
+ maxOutputTokens: 65536,
476
+ source: "seed",
477
+ status: "preview",
478
+ confidence: "high",
479
+ lastUpdated: null,
480
+ launchDate: "2026-03-03"
481
+ },
482
+ {
483
+ modelId: "gemini-3-pro-preview",
484
+ provider: "google",
485
+ displayName: "Gemini 3 Pro Preview",
486
+ inputPerMTok: 2,
487
+ outputPerMTok: 12,
488
+ contextWindow: 1048576,
489
+ maxOutputTokens: 65536,
490
+ source: "seed",
491
+ status: "preview",
492
+ confidence: "high",
493
+ lastUpdated: null,
494
+ launchDate: "2025-11-20"
396
495
  },
397
496
  {
398
497
  modelId: "gemini-3-flash-preview",
@@ -405,7 +504,8 @@ var STATIC_PRICING = [
405
504
  source: "seed",
406
505
  status: "preview",
407
506
  confidence: "high",
408
- lastUpdated: null
507
+ lastUpdated: null,
508
+ launchDate: "2025-12-17"
409
509
  },
410
510
  // DeepSeek
411
511
  {
@@ -419,7 +519,8 @@ var STATIC_PRICING = [
419
519
  source: "seed",
420
520
  status: "active",
421
521
  confidence: "high",
422
- lastUpdated: null
522
+ lastUpdated: null,
523
+ launchDate: "2024-12-26"
423
524
  },
424
525
  {
425
526
  modelId: "deepseek-reasoner",
@@ -432,7 +533,8 @@ var STATIC_PRICING = [
432
533
  source: "seed",
433
534
  status: "active",
434
535
  confidence: "high",
435
- lastUpdated: null
536
+ lastUpdated: null,
537
+ launchDate: "2025-01-20"
436
538
  },
437
539
  // xAI
438
540
  {
@@ -446,7 +548,8 @@ var STATIC_PRICING = [
446
548
  source: "seed",
447
549
  status: "active",
448
550
  confidence: "high",
449
- lastUpdated: null
551
+ lastUpdated: null,
552
+ launchDate: "2025-07-09"
450
553
  },
451
554
  {
452
555
  modelId: "grok-4.1-fast",
@@ -459,7 +562,8 @@ var STATIC_PRICING = [
459
562
  source: "seed",
460
563
  status: "active",
461
564
  confidence: "high",
462
- lastUpdated: null
565
+ lastUpdated: null,
566
+ launchDate: "2025-11-19"
463
567
  },
464
568
  {
465
569
  modelId: "grok-3",
@@ -472,7 +576,8 @@ var STATIC_PRICING = [
472
576
  source: "seed",
473
577
  status: "active",
474
578
  confidence: "high",
475
- lastUpdated: null
579
+ lastUpdated: null,
580
+ launchDate: "2025-04-09"
476
581
  },
477
582
  {
478
583
  modelId: "grok-3-mini",
@@ -485,7 +590,8 @@ var STATIC_PRICING = [
485
590
  source: "seed",
486
591
  status: "active",
487
592
  confidence: "high",
488
- lastUpdated: null
593
+ lastUpdated: null,
594
+ launchDate: "2025-04-09"
489
595
  },
490
596
  // Mistral
491
597
  {
@@ -499,7 +605,8 @@ var STATIC_PRICING = [
499
605
  source: "seed",
500
606
  status: "active",
501
607
  confidence: "high",
502
- lastUpdated: null
608
+ lastUpdated: null,
609
+ launchDate: "2025-12-02"
503
610
  },
504
611
  {
505
612
  modelId: "mistral-medium-3",
@@ -512,7 +619,8 @@ var STATIC_PRICING = [
512
619
  source: "seed",
513
620
  status: "active",
514
621
  confidence: "high",
515
- lastUpdated: null
622
+ lastUpdated: null,
623
+ launchDate: "2025-05-07"
516
624
  },
517
625
  {
518
626
  modelId: "codestral",
@@ -525,7 +633,8 @@ var STATIC_PRICING = [
525
633
  source: "seed",
526
634
  status: "active",
527
635
  confidence: "high",
528
- lastUpdated: null
636
+ lastUpdated: null,
637
+ launchDate: "2025-01-13"
529
638
  },
530
639
  {
531
640
  modelId: "mistral-small-3.1",
@@ -538,7 +647,8 @@ var STATIC_PRICING = [
538
647
  source: "seed",
539
648
  status: "active",
540
649
  confidence: "high",
541
- lastUpdated: null
650
+ lastUpdated: null,
651
+ launchDate: "2025-03-17"
542
652
  }
543
653
  ];
544
654
 
package/dist/index.mjs CHANGED
@@ -1,12 +1,28 @@
1
1
  // src/client.ts
2
+ var SDK_VERSION = "0.6.0";
2
3
  var PriceTokenClient = class {
3
4
  baseUrl;
4
5
  apiKey;
6
+ telemetryEnabled;
7
+ telemetrySent = false;
5
8
  constructor(options) {
6
9
  this.baseUrl = (options?.baseUrl ?? "https://pricetoken.ai").replace(/\/$/, "");
7
10
  this.apiKey = options?.apiKey;
11
+ this.telemetryEnabled = options?.telemetry ?? false;
12
+ }
13
+ sendTelemetry() {
14
+ if (!this.telemetryEnabled || this.telemetrySent) return;
15
+ this.telemetrySent = true;
16
+ const runtime = typeof globalThis.process !== "undefined" ? `node-${globalThis.process.version?.replace("v", "") ?? "unknown"}` : "browser";
17
+ fetch(`${this.baseUrl}/api/v1/telemetry`, {
18
+ method: "POST",
19
+ headers: { "Content-Type": "application/json" },
20
+ body: JSON.stringify({ sdk: "js", version: SDK_VERSION, runtime })
21
+ }).catch(() => {
22
+ });
8
23
  }
9
24
  async request(path) {
25
+ this.sendTelemetry();
10
26
  const headers = {
11
27
  "Content-Type": "application/json"
12
28
  };
@@ -27,6 +43,8 @@ var PriceTokenClient = class {
27
43
  const params = new URLSearchParams();
28
44
  if (opts?.provider) params.set("provider", opts.provider);
29
45
  if (opts?.currency) params.set("currency", opts.currency);
46
+ if (opts?.after) params.set("after", opts.after);
47
+ if (opts?.before) params.set("before", opts.before);
30
48
  const qs = params.toString();
31
49
  return this.request(`/api/v1/pricing${qs ? `?${qs}` : ""}`);
32
50
  }
@@ -56,6 +74,8 @@ var PriceTokenClient = class {
56
74
  const params = new URLSearchParams();
57
75
  if (opts?.provider) params.set("provider", opts.provider);
58
76
  if (opts?.currency) params.set("currency", opts.currency);
77
+ if (opts?.after) params.set("after", opts.after);
78
+ if (opts?.before) params.set("before", opts.before);
59
79
  const qs = params.toString();
60
80
  return this.request(`/api/v1/pricing/cheapest${qs ? `?${qs}` : ""}`);
61
81
  }
@@ -75,7 +95,8 @@ var STATIC_PRICING = [
75
95
  source: "seed",
76
96
  status: "active",
77
97
  confidence: "high",
78
- lastUpdated: null
98
+ lastUpdated: null,
99
+ launchDate: "2026-02-05"
79
100
  },
80
101
  {
81
102
  modelId: "claude-sonnet-4-6",
@@ -88,7 +109,8 @@ var STATIC_PRICING = [
88
109
  source: "seed",
89
110
  status: "active",
90
111
  confidence: "high",
91
- lastUpdated: null
112
+ lastUpdated: null,
113
+ launchDate: "2026-02-17"
92
114
  },
93
115
  {
94
116
  modelId: "claude-haiku-4-5-20251001",
@@ -101,9 +123,38 @@ var STATIC_PRICING = [
101
123
  source: "seed",
102
124
  status: "active",
103
125
  confidence: "high",
104
- lastUpdated: null
126
+ lastUpdated: null,
127
+ launchDate: "2025-10-15"
105
128
  },
106
129
  // OpenAI
130
+ {
131
+ modelId: "gpt-5.3-chat-latest",
132
+ provider: "openai",
133
+ displayName: "GPT-5.3 Instant",
134
+ inputPerMTok: 1.75,
135
+ outputPerMTok: 14,
136
+ contextWindow: 128e3,
137
+ maxOutputTokens: 16384,
138
+ source: "seed",
139
+ status: "active",
140
+ confidence: "high",
141
+ lastUpdated: null,
142
+ launchDate: "2026-03-03"
143
+ },
144
+ {
145
+ modelId: "gpt-5.3-codex",
146
+ provider: "openai",
147
+ displayName: "GPT-5.3 Codex",
148
+ inputPerMTok: 1.75,
149
+ outputPerMTok: 14,
150
+ contextWindow: 4e5,
151
+ maxOutputTokens: 128e3,
152
+ source: "seed",
153
+ status: "active",
154
+ confidence: "high",
155
+ lastUpdated: null,
156
+ launchDate: "2026-02-24"
157
+ },
107
158
  {
108
159
  modelId: "gpt-5.2",
109
160
  provider: "openai",
@@ -115,7 +166,8 @@ var STATIC_PRICING = [
115
166
  source: "seed",
116
167
  status: "active",
117
168
  confidence: "high",
118
- lastUpdated: null
169
+ lastUpdated: null,
170
+ launchDate: "2025-12-11"
119
171
  },
120
172
  {
121
173
  modelId: "gpt-5",
@@ -128,7 +180,8 @@ var STATIC_PRICING = [
128
180
  source: "seed",
129
181
  status: "active",
130
182
  confidence: "high",
131
- lastUpdated: null
183
+ lastUpdated: null,
184
+ launchDate: "2025-08-07"
132
185
  },
133
186
  {
134
187
  modelId: "gpt-5-mini",
@@ -141,7 +194,8 @@ var STATIC_PRICING = [
141
194
  source: "seed",
142
195
  status: "active",
143
196
  confidence: "high",
144
- lastUpdated: null
197
+ lastUpdated: null,
198
+ launchDate: "2025-08-07"
145
199
  },
146
200
  {
147
201
  modelId: "gpt-5-nano",
@@ -154,7 +208,8 @@ var STATIC_PRICING = [
154
208
  source: "seed",
155
209
  status: "active",
156
210
  confidence: "high",
157
- lastUpdated: null
211
+ lastUpdated: null,
212
+ launchDate: "2025-08-07"
158
213
  },
159
214
  {
160
215
  modelId: "gpt-4.1",
@@ -167,7 +222,8 @@ var STATIC_PRICING = [
167
222
  source: "seed",
168
223
  status: "active",
169
224
  confidence: "high",
170
- lastUpdated: null
225
+ lastUpdated: null,
226
+ launchDate: "2025-04-14"
171
227
  },
172
228
  {
173
229
  modelId: "gpt-4.1-mini",
@@ -180,7 +236,8 @@ var STATIC_PRICING = [
180
236
  source: "seed",
181
237
  status: "active",
182
238
  confidence: "high",
183
- lastUpdated: null
239
+ lastUpdated: null,
240
+ launchDate: "2025-04-14"
184
241
  },
185
242
  {
186
243
  modelId: "gpt-4.1-nano",
@@ -193,7 +250,8 @@ var STATIC_PRICING = [
193
250
  source: "seed",
194
251
  status: "active",
195
252
  confidence: "high",
196
- lastUpdated: null
253
+ lastUpdated: null,
254
+ launchDate: "2025-04-14"
197
255
  },
198
256
  {
199
257
  modelId: "gpt-4o",
@@ -206,7 +264,8 @@ var STATIC_PRICING = [
206
264
  source: "seed",
207
265
  status: "active",
208
266
  confidence: "high",
209
- lastUpdated: null
267
+ lastUpdated: null,
268
+ launchDate: "2024-05-13"
210
269
  },
211
270
  {
212
271
  modelId: "gpt-4o-mini",
@@ -219,7 +278,8 @@ var STATIC_PRICING = [
219
278
  source: "seed",
220
279
  status: "active",
221
280
  confidence: "high",
222
- lastUpdated: null
281
+ lastUpdated: null,
282
+ launchDate: "2024-07-18"
223
283
  },
224
284
  {
225
285
  modelId: "o3",
@@ -232,7 +292,8 @@ var STATIC_PRICING = [
232
292
  source: "seed",
233
293
  status: "active",
234
294
  confidence: "high",
235
- lastUpdated: null
295
+ lastUpdated: null,
296
+ launchDate: "2025-04-16"
236
297
  },
237
298
  {
238
299
  modelId: "o4-mini",
@@ -245,7 +306,8 @@ var STATIC_PRICING = [
245
306
  source: "seed",
246
307
  status: "active",
247
308
  confidence: "high",
248
- lastUpdated: null
309
+ lastUpdated: null,
310
+ launchDate: "2025-04-16"
249
311
  },
250
312
  {
251
313
  modelId: "gpt-5.1",
@@ -258,7 +320,8 @@ var STATIC_PRICING = [
258
320
  source: "seed",
259
321
  status: "active",
260
322
  confidence: "high",
261
- lastUpdated: null
323
+ lastUpdated: null,
324
+ launchDate: "2025-11-13"
262
325
  },
263
326
  {
264
327
  modelId: "o3-pro",
@@ -271,7 +334,8 @@ var STATIC_PRICING = [
271
334
  source: "seed",
272
335
  status: "active",
273
336
  confidence: "high",
274
- lastUpdated: null
337
+ lastUpdated: null,
338
+ launchDate: "2025-06-10"
275
339
  },
276
340
  {
277
341
  modelId: "o3-mini",
@@ -284,7 +348,8 @@ var STATIC_PRICING = [
284
348
  source: "seed",
285
349
  status: "active",
286
350
  confidence: "high",
287
- lastUpdated: null
351
+ lastUpdated: null,
352
+ launchDate: "2025-01-31"
288
353
  },
289
354
  // Google
290
355
  {
@@ -298,7 +363,8 @@ var STATIC_PRICING = [
298
363
  source: "seed",
299
364
  status: "active",
300
365
  confidence: "high",
301
- lastUpdated: null
366
+ lastUpdated: null,
367
+ launchDate: "2025-06-17"
302
368
  },
303
369
  {
304
370
  modelId: "gemini-2.5-flash",
@@ -311,7 +377,8 @@ var STATIC_PRICING = [
311
377
  source: "seed",
312
378
  status: "active",
313
379
  confidence: "high",
314
- lastUpdated: null
380
+ lastUpdated: null,
381
+ launchDate: "2025-06-17"
315
382
  },
316
383
  {
317
384
  modelId: "gemini-2.0-flash",
@@ -324,7 +391,8 @@ var STATIC_PRICING = [
324
391
  source: "seed",
325
392
  status: "active",
326
393
  confidence: "high",
327
- lastUpdated: null
394
+ lastUpdated: null,
395
+ launchDate: "2025-02-05"
328
396
  },
329
397
  {
330
398
  modelId: "gemini-2.0-flash-lite",
@@ -337,7 +405,8 @@ var STATIC_PRICING = [
337
405
  source: "seed",
338
406
  status: "active",
339
407
  confidence: "high",
340
- lastUpdated: null
408
+ lastUpdated: null,
409
+ launchDate: "2025-02-25"
341
410
  },
342
411
  {
343
412
  modelId: "gemini-2.5-flash-lite",
@@ -350,7 +419,8 @@ var STATIC_PRICING = [
350
419
  source: "seed",
351
420
  status: "active",
352
421
  confidence: "high",
353
- lastUpdated: null
422
+ lastUpdated: null,
423
+ launchDate: "2025-07-22"
354
424
  },
355
425
  {
356
426
  modelId: "gemini-3.1-pro-preview",
@@ -363,7 +433,36 @@ var STATIC_PRICING = [
363
433
  source: "seed",
364
434
  status: "preview",
365
435
  confidence: "high",
366
- lastUpdated: null
436
+ lastUpdated: null,
437
+ launchDate: "2026-02-19"
438
+ },
439
+ {
440
+ modelId: "gemini-3.1-flash-lite-preview",
441
+ provider: "google",
442
+ displayName: "Gemini 3.1 Flash-Lite Preview",
443
+ inputPerMTok: 0.25,
444
+ outputPerMTok: 1.5,
445
+ contextWindow: 1048576,
446
+ maxOutputTokens: 65536,
447
+ source: "seed",
448
+ status: "preview",
449
+ confidence: "high",
450
+ lastUpdated: null,
451
+ launchDate: "2026-03-03"
452
+ },
453
+ {
454
+ modelId: "gemini-3-pro-preview",
455
+ provider: "google",
456
+ displayName: "Gemini 3 Pro Preview",
457
+ inputPerMTok: 2,
458
+ outputPerMTok: 12,
459
+ contextWindow: 1048576,
460
+ maxOutputTokens: 65536,
461
+ source: "seed",
462
+ status: "preview",
463
+ confidence: "high",
464
+ lastUpdated: null,
465
+ launchDate: "2025-11-20"
367
466
  },
368
467
  {
369
468
  modelId: "gemini-3-flash-preview",
@@ -376,7 +475,8 @@ var STATIC_PRICING = [
376
475
  source: "seed",
377
476
  status: "preview",
378
477
  confidence: "high",
379
- lastUpdated: null
478
+ lastUpdated: null,
479
+ launchDate: "2025-12-17"
380
480
  },
381
481
  // DeepSeek
382
482
  {
@@ -390,7 +490,8 @@ var STATIC_PRICING = [
390
490
  source: "seed",
391
491
  status: "active",
392
492
  confidence: "high",
393
- lastUpdated: null
493
+ lastUpdated: null,
494
+ launchDate: "2024-12-26"
394
495
  },
395
496
  {
396
497
  modelId: "deepseek-reasoner",
@@ -403,7 +504,8 @@ var STATIC_PRICING = [
403
504
  source: "seed",
404
505
  status: "active",
405
506
  confidence: "high",
406
- lastUpdated: null
507
+ lastUpdated: null,
508
+ launchDate: "2025-01-20"
407
509
  },
408
510
  // xAI
409
511
  {
@@ -417,7 +519,8 @@ var STATIC_PRICING = [
417
519
  source: "seed",
418
520
  status: "active",
419
521
  confidence: "high",
420
- lastUpdated: null
522
+ lastUpdated: null,
523
+ launchDate: "2025-07-09"
421
524
  },
422
525
  {
423
526
  modelId: "grok-4.1-fast",
@@ -430,7 +533,8 @@ var STATIC_PRICING = [
430
533
  source: "seed",
431
534
  status: "active",
432
535
  confidence: "high",
433
- lastUpdated: null
536
+ lastUpdated: null,
537
+ launchDate: "2025-11-19"
434
538
  },
435
539
  {
436
540
  modelId: "grok-3",
@@ -443,7 +547,8 @@ var STATIC_PRICING = [
443
547
  source: "seed",
444
548
  status: "active",
445
549
  confidence: "high",
446
- lastUpdated: null
550
+ lastUpdated: null,
551
+ launchDate: "2025-04-09"
447
552
  },
448
553
  {
449
554
  modelId: "grok-3-mini",
@@ -456,7 +561,8 @@ var STATIC_PRICING = [
456
561
  source: "seed",
457
562
  status: "active",
458
563
  confidence: "high",
459
- lastUpdated: null
564
+ lastUpdated: null,
565
+ launchDate: "2025-04-09"
460
566
  },
461
567
  // Mistral
462
568
  {
@@ -470,7 +576,8 @@ var STATIC_PRICING = [
470
576
  source: "seed",
471
577
  status: "active",
472
578
  confidence: "high",
473
- lastUpdated: null
579
+ lastUpdated: null,
580
+ launchDate: "2025-12-02"
474
581
  },
475
582
  {
476
583
  modelId: "mistral-medium-3",
@@ -483,7 +590,8 @@ var STATIC_PRICING = [
483
590
  source: "seed",
484
591
  status: "active",
485
592
  confidence: "high",
486
- lastUpdated: null
593
+ lastUpdated: null,
594
+ launchDate: "2025-05-07"
487
595
  },
488
596
  {
489
597
  modelId: "codestral",
@@ -496,7 +604,8 @@ var STATIC_PRICING = [
496
604
  source: "seed",
497
605
  status: "active",
498
606
  confidence: "high",
499
- lastUpdated: null
607
+ lastUpdated: null,
608
+ launchDate: "2025-01-13"
500
609
  },
501
610
  {
502
611
  modelId: "mistral-small-3.1",
@@ -509,7 +618,8 @@ var STATIC_PRICING = [
509
618
  source: "seed",
510
619
  status: "active",
511
620
  confidence: "high",
512
- lastUpdated: null
621
+ lastUpdated: null,
622
+ launchDate: "2025-03-17"
513
623
  }
514
624
  ];
515
625
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pricetoken",
3
- "version": "0.4.1",
3
+ "version": "0.6.0",
4
4
  "description": "Real-time LLM pricing data — typed client, cost calculator, and static pricing",
5
5
  "keywords": [
6
6
  "llm",