File size: 2,150 Bytes
460669a
 
 
7b129e2
47771f4
09410e1
7b129e2
 
 
 
 
 
 
 
 
 
 
 
 
e1d35b4
7b129e2
 
6d4ae82
 
 
 
09410e1
6d4ae82
 
 
 
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
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
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_validated BOOLEAN DEFAULT FALSE,
    is_active BOOLEAN DEFAULT FALSE,
    stop BOOLEAN DEFAULT FALSE,
    schedule_interval_minutes INTEGER,
	time_to_start TIMESTAMP,
    created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
    validated_at 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_validated, is_active, stop, schedule_interval_minutes
) 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,                            
    TRUE,                              
    FALSE,                             
    20                                
);

INSERT INTO api_call_results (
    config_id, response_data, is_successful, error_message
) VALUES (
    10101,
    '{"symbol":"NVDA", "price":1142.50, "timestamp":"2025-06-03T14:20:00Z"}',
    TRUE,
    NULL
);

INSERT INTO api_call_results (
    config_id, response_data, is_successful, error_message
) VALUES (
    10101,
    NULL,
    FALSE,
    'Timeout while contacting the API'
);

select * from api_configurations;
select * from api_call_results;