oilpriceapi 0.7.0 → 0.9.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.
Files changed (81) hide show
  1. package/README.md +244 -30
  2. package/dist/cjs/client.js +610 -0
  3. package/dist/cjs/errors.js +80 -0
  4. package/dist/cjs/index.js +96 -0
  5. package/dist/cjs/package.json +1 -0
  6. package/dist/cjs/resources/alerts.js +387 -0
  7. package/dist/cjs/resources/analytics.js +188 -0
  8. package/dist/cjs/resources/bunker-fuels.js +210 -0
  9. package/dist/cjs/resources/commodities.js +115 -0
  10. package/dist/cjs/resources/data-quality.js +144 -0
  11. package/dist/cjs/resources/data-sources.js +298 -0
  12. package/dist/cjs/resources/diesel.js +119 -0
  13. package/dist/cjs/resources/drilling.js +269 -0
  14. package/dist/cjs/resources/ei/drilling-productivity.js +108 -0
  15. package/dist/cjs/resources/ei/forecasts.js +106 -0
  16. package/dist/cjs/resources/ei/frac-focus.js +165 -0
  17. package/dist/cjs/resources/ei/index.js +98 -0
  18. package/dist/cjs/resources/ei/oil-inventories.js +97 -0
  19. package/dist/cjs/resources/ei/opec-production.js +97 -0
  20. package/dist/cjs/resources/ei/rig-counts.js +93 -0
  21. package/dist/cjs/resources/ei/well-permits.js +136 -0
  22. package/dist/cjs/resources/forecasts.js +168 -0
  23. package/dist/cjs/resources/futures.js +424 -0
  24. package/dist/cjs/resources/indicators.js +79 -0
  25. package/dist/cjs/resources/raw.js +128 -0
  26. package/dist/cjs/resources/rig-counts.js +164 -0
  27. package/dist/cjs/resources/spreads.js +105 -0
  28. package/dist/cjs/resources/storage.js +166 -0
  29. package/dist/cjs/resources/streaming.js +350 -0
  30. package/dist/cjs/resources/webhooks.js +283 -0
  31. package/dist/cjs/types.js +2 -0
  32. package/dist/cjs/version.js +24 -0
  33. package/dist/client.d.ts +130 -3
  34. package/dist/client.js +206 -30
  35. package/dist/errors.d.ts +6 -0
  36. package/dist/errors.js +25 -16
  37. package/dist/index.d.ts +28 -5
  38. package/dist/index.js +29 -1
  39. package/dist/resources/alerts.js +31 -77
  40. package/dist/resources/analytics.d.ts +147 -214
  41. package/dist/resources/analytics.js +104 -141
  42. package/dist/resources/bunker-fuels.d.ts +35 -12
  43. package/dist/resources/bunker-fuels.js +41 -26
  44. package/dist/resources/commodities.js +2 -1
  45. package/dist/resources/data-quality.js +2 -1
  46. package/dist/resources/data-sources.d.ts +31 -31
  47. package/dist/resources/data-sources.js +30 -85
  48. package/dist/resources/diesel.d.ts +1 -1
  49. package/dist/resources/diesel.js +9 -38
  50. package/dist/resources/drilling.js +2 -1
  51. package/dist/resources/ei/drilling-productivity.js +2 -1
  52. package/dist/resources/ei/forecasts.js +2 -1
  53. package/dist/resources/ei/frac-focus.d.ts +23 -9
  54. package/dist/resources/ei/frac-focus.js +20 -9
  55. package/dist/resources/ei/index.js +2 -1
  56. package/dist/resources/ei/oil-inventories.js +2 -1
  57. package/dist/resources/ei/opec-production.js +2 -1
  58. package/dist/resources/ei/rig-counts.js +2 -1
  59. package/dist/resources/ei/well-permits.d.ts +25 -9
  60. package/dist/resources/ei/well-permits.js +20 -7
  61. package/dist/resources/forecasts.d.ts +4 -1
  62. package/dist/resources/forecasts.js +13 -6
  63. package/dist/resources/futures.d.ts +178 -1
  64. package/dist/resources/futures.js +199 -8
  65. package/dist/resources/indicators.d.ts +170 -0
  66. package/dist/resources/indicators.js +75 -0
  67. package/dist/resources/raw.d.ts +94 -0
  68. package/dist/resources/raw.js +124 -0
  69. package/dist/resources/rig-counts.js +5 -2
  70. package/dist/resources/spreads.d.ts +121 -0
  71. package/dist/resources/spreads.js +101 -0
  72. package/dist/resources/storage.d.ts +5 -4
  73. package/dist/resources/storage.js +7 -6
  74. package/dist/resources/streaming.d.ts +272 -0
  75. package/dist/resources/streaming.js +342 -0
  76. package/dist/resources/webhooks.d.ts +73 -23
  77. package/dist/resources/webhooks.js +59 -77
  78. package/dist/types.d.ts +43 -1
  79. package/dist/version.d.ts +1 -1
  80. package/dist/version.js +2 -2
  81. package/package.json +21 -6
package/dist/types.d.ts CHANGED
@@ -8,8 +8,9 @@ export type RetryStrategy = "exponential" | "linear" | "fixed";
8
8
  export interface OilPriceAPIConfig {
9
9
  /**
10
10
  * Your API key from https://www.oilpriceapi.com
11
+ * If not provided, reads from OILPRICEAPI_KEY environment variable.
11
12
  */
12
- apiKey: string;
13
+ apiKey?: string;
13
14
  /**
14
15
  * Base URL for the API (optional, for testing)
15
16
  * @default "https://api.oilpriceapi.com"
@@ -239,6 +240,47 @@ export interface Commodity {
239
240
  export interface CommoditiesResponse {
240
241
  commodities: Commodity[];
241
242
  }
243
+ /**
244
+ * A single price entry from the no-auth demo prices endpoint.
245
+ */
246
+ export interface DemoPrice {
247
+ code: string;
248
+ name: string;
249
+ price: number;
250
+ currency: string;
251
+ updated_at: string;
252
+ change_24h?: number;
253
+ source?: string;
254
+ }
255
+ /**
256
+ * Parsed response from the no-auth `GET /v1/demo/prices` endpoint.
257
+ */
258
+ export interface DemoPricesResponse {
259
+ prices: DemoPrice[];
260
+ meta: {
261
+ demo_mode?: boolean;
262
+ rate_limit?: string;
263
+ available_commodities?: number;
264
+ [key: string]: unknown;
265
+ };
266
+ examples?: unknown;
267
+ }
268
+ /**
269
+ * Parsed response from the no-auth `GET /v1/demo/commodities` endpoint.
270
+ */
271
+ export interface DemoCommoditiesResponse {
272
+ /** Commodities grouped by category key. */
273
+ commodities: Record<string, Commodity[]>;
274
+ meta: {
275
+ /** Total number of demo-listed commodities. */
276
+ total: number;
277
+ /** Category keys present in the listing. */
278
+ categories: string[];
279
+ /** Commodity codes available on the free demo tier. */
280
+ free_commodities: string[];
281
+ [key: string]: unknown;
282
+ };
283
+ }
242
284
  /**
243
285
  * Category with its commodities
244
286
  */
package/dist/version.d.ts CHANGED
@@ -7,7 +7,7 @@
7
7
  * - X-Client-Version header
8
8
  * - Package.json (should match)
9
9
  */
10
- export declare const SDK_VERSION = "0.7.0";
10
+ export declare const SDK_VERSION = "0.9.0";
11
11
  /**
12
12
  * SDK identifier used in User-Agent and X-Api-Client headers
13
13
  */
package/dist/version.js CHANGED
@@ -7,11 +7,11 @@
7
7
  * - X-Client-Version header
8
8
  * - Package.json (should match)
9
9
  */
10
- export const SDK_VERSION = '0.7.0';
10
+ export const SDK_VERSION = "0.9.0";
11
11
  /**
12
12
  * SDK identifier used in User-Agent and X-Api-Client headers
13
13
  */
14
- export const SDK_NAME = 'oilpriceapi-node';
14
+ export const SDK_NAME = "oilpriceapi-node";
15
15
  /**
16
16
  * Build the full User-Agent string
17
17
  */
package/package.json CHANGED
@@ -1,15 +1,20 @@
1
1
  {
2
2
  "name": "oilpriceapi",
3
- "version": "0.7.0",
3
+ "version": "0.9.0",
4
4
  "description": "Official Node.js SDK for Oil Price API - Real-time and historical oil & commodity prices",
5
5
  "type": "module",
6
- "main": "./dist/index.js",
6
+ "main": "./dist/cjs/index.js",
7
7
  "types": "./dist/index.d.ts",
8
8
  "exports": {
9
9
  ".": {
10
- "import": "./dist/index.js",
11
- "require": "./dist/index.js",
12
- "types": "./dist/index.d.ts"
10
+ "import": {
11
+ "types": "./dist/index.d.ts",
12
+ "default": "./dist/index.js"
13
+ },
14
+ "require": {
15
+ "types": "./dist/index.d.ts",
16
+ "default": "./dist/cjs/index.js"
17
+ }
13
18
  }
14
19
  },
15
20
  "files": [
@@ -18,9 +23,12 @@
18
23
  "LICENSE"
19
24
  ],
20
25
  "scripts": {
21
- "build": "tsc",
26
+ "build": "tsc && tsc -p tsconfig.cjs.json && echo '{\"type\":\"commonjs\"}' > dist/cjs/package.json",
27
+ "lint": "eslint src/",
22
28
  "test": "vitest run",
23
29
  "test:watch": "vitest",
30
+ "test:live": "vitest run --config vitest.live.config.ts",
31
+ "docs": "typedoc",
24
32
  "prepublishOnly": "npm run build"
25
33
  },
26
34
  "keywords": [
@@ -55,8 +63,15 @@
55
63
  },
56
64
  "devDependencies": {
57
65
  "@types/node": "^20.10.0",
66
+ "@types/ws": "^8.18.1",
58
67
  "@vitest/coverage-v8": "^4.0.16",
68
+ "eslint": "^9.39.4",
69
+ "typedoc": "^0.27.9",
59
70
  "typescript": "^5.3.0",
71
+ "typescript-eslint": "^8.57.2",
60
72
  "vitest": "^4.0.16"
73
+ },
74
+ "dependencies": {
75
+ "ws": "^8.21.0"
61
76
  }
62
77
  }