File size: 1,568 Bytes
460669a
 
 
7b129e2
47771f4
43e41ae
7b129e2
 
 
 
 
 
 
 
 
 
a8b8ea2
43e41ae
 
 
6d4ae82
 
 
 
09410e1
6d4ae82
 
 
 
09410e1
 
 
 
 
43e41ae
09410e1
 
 
 
 
 
 
 
 
 
 
 
43e41ae
 
 
09410e1
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
40
41
42
43
44
45
46
47
48
49
50
51
52
DROP TABLE IF EXISTS api_call_results;
DROP TABLE IF EXISTS api_configurations;

CREATE TABLE api_configurations (
    id SERIAL PRIMARY KEY,
    config_id INTEGER NOT NULL UNIQUE,
    mcp_api_key VARCHAR(255) NOT NULL,
    name VARCHAR(255) NOT NULL,
    description TEXT,
    method VARCHAR(10) NOT NULL DEFAULT 'GET',
    base_url VARCHAR(500) NOT NULL,
    endpoint VARCHAR(500),
    params JSONB,
    headers JSONB,
    additional_params JSONB,
    is_active BOOLEAN DEFAULT FALSE,
    schedule_interval_minutes DECIMAL(10,2),
    start_at TIMESTAMP,
    stop_at TIMESTAMP,
    created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);

CREATE TABLE api_call_results (
    id SERIAL PRIMARY KEY,
    config_id INTEGER REFERENCES api_configurations(config_id) ON DELETE CASCADE,
    response_data JSONB,
    is_successful BOOLEAN,
    error_message TEXT,
    called_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);

INSERT INTO api_configurations (
    config_id, mcp_api_key, name, description, method, base_url, endpoint,
    params, headers, additional_params,
    is_active, schedule_interval_minutes, start_at, stop_at
) VALUES (
	10101,
    'abc123xyz',            
    'Track NVDA Price',               
    'Tracking NVIDIA stock price every 20 minutes',
    'GET',
    'https://api.example.com',         
    '/stocks/nvda',                   
    '{"interval":"1d","range":"5d"}',  
    '{"Authorization":"Bearer token"}', 
    '{}',                               
    TRUE,                              
    20,
    '2025-06-04T12:00:00',
    '2025-06-11T12:00:00'
);