-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathexample-commodities.ts
More file actions
39 lines (31 loc) · 1.45 KB
/
example-commodities.ts
File metadata and controls
39 lines (31 loc) · 1.45 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
import { OilPriceAPI } from './src/index.js';
const API_KEY = '3839c085460dd3a9dac1291f937f5a6d1740e8c668c766bc9f95e166af59cb11';
async function testCommoditiesEndpoints() {
const client = new OilPriceAPI({ apiKey: API_KEY, debug: true });
console.log('\n=== Testing Commodities Endpoints ===\n');
try {
// Test 1: Get all commodities
console.log('1. Testing getCommodities()...');
const commoditiesResponse = await client.getCommodities();
console.log(`✓ Retrieved ${commoditiesResponse.commodities.length} commodities`);
console.log('First commodity:', commoditiesResponse.commodities[0]);
// Test 2: Get commodity categories
console.log('\n2. Testing getCommodityCategories()...');
const categoriesResponse = await client.getCommodityCategories();
console.log(`✓ Retrieved ${categoriesResponse.categories.length} categories`);
console.log('Categories:', categoriesResponse.categories);
// Test 3: Get specific commodity
console.log('\n3. Testing getCommodity("WTI_USD")...');
const wti = await client.getCommodity('WTI_USD');
console.log('✓ WTI Details:');
console.log(` Name: ${wti.name}`);
console.log(` Category: ${wti.category}`);
console.log(` Unit: ${wti.unit}`);
console.log(` Currency: ${wti.currency}`);
console.log('\n✅ All commodity endpoints working!');
} catch (error) {
console.error('\n❌ Error:', error);
process.exit(1);
}
}
testCommoditiesEndpoints();