Skip to content

Commit ac971a9

Browse files
karlwaldmanclaude
andcommitted
feat: Add drilling intelligence, energy intelligence, webhooks, data sources resources and enhance alerts
Phase 3 of SDK gap analysis: adds 11 new resource files covering drilling intelligence (10 methods), energy intelligence sub-package with 7 modules (rig counts, oil inventories, OPEC production, drilling productivity, forecasts, well permits, frac focus), webhooks CRUD (7 methods), data sources CRUD (9 methods), and enhances alerts with test/triggers/analyticsHistory methods. TypeScript build passes with zero errors. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
1 parent 7fc76d6 commit ac971a9

File tree

14 files changed

+4061
-514
lines changed

14 files changed

+4061
-514
lines changed

src/client.ts

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,10 @@ import { BunkerFuelsResource } from "./resources/bunker-fuels.js";
2828
import { AnalyticsResource } from "./resources/analytics.js";
2929
import { ForecastsResource } from "./resources/forecasts.js";
3030
import { DataQualityResource } from "./resources/data-quality.js";
31+
import { DrillingIntelligenceResource } from "./resources/drilling.js";
32+
import { EnergyIntelligenceResource } from "./resources/ei/index.js";
33+
import { WebhooksResource } from "./resources/webhooks.js";
34+
import { DataSourcesResource } from "./resources/data-sources.js";
3135
import { SDK_VERSION, SDK_NAME, buildUserAgent } from "./version.js";
3236

3337
/**
@@ -117,6 +121,26 @@ export class OilPriceAPI {
117121
*/
118122
public readonly dataQuality: DataQualityResource;
119123

124+
/**
125+
* Drilling intelligence resource (US onshore drilling activity)
126+
*/
127+
public readonly drilling: DrillingIntelligenceResource;
128+
129+
/**
130+
* Energy intelligence resource (comprehensive market intelligence)
131+
*/
132+
public readonly ei: EnergyIntelligenceResource;
133+
134+
/**
135+
* Webhooks resource (webhook endpoint management)
136+
*/
137+
public readonly webhooks: WebhooksResource;
138+
139+
/**
140+
* Data sources resource (BYOS - Bring Your Own Source)
141+
*/
142+
public readonly dataSources: DataSourcesResource;
143+
120144
constructor(config: OilPriceAPIConfig) {
121145
if (!config.apiKey) {
122146
throw new OilPriceAPIError("API key is required");
@@ -143,6 +167,10 @@ export class OilPriceAPI {
143167
this.analytics = new AnalyticsResource(this);
144168
this.forecasts = new ForecastsResource(this);
145169
this.dataQuality = new DataQualityResource(this);
170+
this.drilling = new DrillingIntelligenceResource(this);
171+
this.ei = new EnergyIntelligenceResource(this);
172+
this.webhooks = new WebhooksResource(this);
173+
this.dataSources = new DataSourcesResource(this);
146174
}
147175

148176
/**

src/index.ts

Lines changed: 87 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -34,14 +34,7 @@ export type {
3434
CreateAlertParams,
3535
UpdateAlertParams,
3636
AlertOperator,
37-
WebhookTestResponse,
3837
} from "./resources/alerts.js";
39-
export type {
40-
Commodity,
41-
CommoditiesResponse,
42-
CommodityCategory,
43-
CategoriesResponse,
44-
} from "./resources/commodities.js";
4538
export type {
4639
FuturesPrice,
4740
HistoricalFuturesPrice,
@@ -83,7 +76,7 @@ export type {
8376
TrendAnalysis,
8477
SpreadAnalysis,
8578
ForecastPoint,
86-
PriceForecast,
79+
PriceForecast as AnalyticsPriceForecast,
8780
} from "./resources/analytics.js";
8881
export type {
8982
MonthlyForecast,
@@ -95,6 +88,79 @@ export type {
9588
DataQualityReportMeta,
9689
DataQualityReport,
9790
} from "./resources/data-quality.js";
91+
export type {
92+
DrillingIntelligenceData,
93+
LatestDrillingData,
94+
DrillingSummary,
95+
DrillingTrend,
96+
FracSpreadData,
97+
WellPermitData,
98+
DUCWellData,
99+
CompletionData,
100+
WellsDrilledData,
101+
BasinDrillingData,
102+
} from "./resources/drilling.js";
103+
export type {
104+
WellTimelineEvent,
105+
WellTimeline,
106+
RigCountRecord,
107+
RigCountByBasin,
108+
RigCountByState,
109+
HistoricalRigCount,
110+
OilInventoryRecord,
111+
OilInventorySummary,
112+
InventoryByProduct,
113+
HistoricalInventory,
114+
CushingInventory,
115+
OPECProductionRecord,
116+
TotalOPECProduction,
117+
ProductionByCountry,
118+
HistoricalProduction,
119+
TopProducer,
120+
DrillingProductivityRecord,
121+
DrillingProductivitySummary,
122+
DUCWellInventory,
123+
ProductivityByBasin,
124+
HistoricalProductivity,
125+
ProductivityTrend,
126+
ForecastRecord,
127+
ForecastSummary,
128+
PriceForecast,
129+
ProductionForecast,
130+
HistoricalForecast,
131+
ForecastComparison,
132+
WellPermitRecord,
133+
WellPermitSummary,
134+
PermitsByState,
135+
PermitsByOperator,
136+
PermitsByFormation,
137+
WellPermitSearchQuery,
138+
FracFocusRecord,
139+
FracFocusSummary,
140+
DisclosuresByState,
141+
DisclosuresByOperator,
142+
ChemicalUsage,
143+
WellChemical,
144+
FracFocusSearchQuery,
145+
} from "./resources/ei/index.js";
146+
export type {
147+
WebhookEndpoint,
148+
CreateWebhookParams,
149+
UpdateWebhookParams,
150+
WebhookTestResponse as WebhookTestResult,
151+
WebhookEvent,
152+
} from "./resources/webhooks.js";
153+
export type {
154+
DataSourceType,
155+
DataSourceStatus,
156+
DataSource,
157+
CreateDataSourceParams,
158+
UpdateDataSourceParams,
159+
DataSourceTestResponse,
160+
DataSourceLog,
161+
DataSourceHealth,
162+
CredentialRotationResponse,
163+
} from "./resources/data-sources.js";
98164
export {
99165
OilPriceAPIError,
100166
AuthenticationError,
@@ -113,3 +179,16 @@ export { BunkerFuelsResource } from "./resources/bunker-fuels.js";
113179
export { AnalyticsResource } from "./resources/analytics.js";
114180
export { ForecastsResource } from "./resources/forecasts.js";
115181
export { DataQualityResource } from "./resources/data-quality.js";
182+
export { DrillingIntelligenceResource } from "./resources/drilling.js";
183+
export {
184+
EnergyIntelligenceResource,
185+
EIRigCountsResource,
186+
EIOilInventoriesResource,
187+
EIOPECProductionResource,
188+
EIDrillingProductivityResource,
189+
EIForecastsResource,
190+
EIWellPermitsResource,
191+
EIFracFocusResource,
192+
} from "./resources/ei/index.js";
193+
export { WebhooksResource } from "./resources/webhooks.js";
194+
export { DataSourcesResource } from "./resources/data-sources.js";

0 commit comments

Comments
 (0)