USE null_terminal;

INSERT IGNORE INTO api_connectors (conn_key, display_name, category, requires_key, is_enabled, rate_limit_per_min, docs_url, signup_url) VALUES
('abuseipdb', 'AbuseIPDB', 'ip_intel', 1, 0, 10, 'https://docs.abuseipdb.com/', 'https://www.abuseipdb.com/register'),
('breachdirectory', 'BreachDirectory', 'breach', 1, 0, 10, 'https://rapidapi.com/rohan-patra/api/breachdirectory', 'https://rapidapi.com/rohan-patra/api/breachdirectory'),
('censys', 'Censys Search', 'osint', 1, 0, 10, 'https://search.censys.io/api', 'https://accounts.censys.io/register'),
('crtsh', 'crt.sh Certificate Search', 'dns_ssl', 0, 0, 10, 'https://crt.sh/', 'none (no key required)'),
('googledns', 'Google DNS-over-HTTPS', 'dns_ssl', 0, 0, 10, 'https://developers.google.com/speed/public-dns/docs/doh', 'none (no key required)'),
('emailrep', 'EmailRep.io', 'email_security', 1, 0, 10, 'https://docs.sublime.security/docs/emailrep', 'https://emailrep.io/key'),
('githubsearch', 'GitHub Code Search (OSINT/leak hunting)', 'osint', 1, 0, 10, 'https://docs.github.com/en/rest/search', 'https://github.com/settings/tokens'),
('greynoise', 'GreyNoise Community', 'threat_intel', 1, 0, 10, 'https://docs.greynoise.io/', 'https://www.greynoise.io/viz/signup'),
('hibp', 'Have I Been Pwned', 'breach', 1, 0, 10, 'https://haveibeenpwned.com/API/v3', 'https://haveibeenpwned.com/API/Key'),
('ipinfo', 'ipinfo.io', 'ip_intel', 1, 0, 10, 'https://ipinfo.io/developers', 'https://ipinfo.io/signup'),
('ipqualityscore', 'IPQualityScore', 'ip_intel', 1, 0, 10, 'https://www.ipqualityscore.com/documentation/overview', 'https://www.ipqualityscore.com/create-account'),
('malwarebazaar', 'MalwareBazaar', 'malware', 0, 0, 10, 'https://bazaar.abuse.ch/api/', 'https://bazaar.abuse.ch/'),
('mitreattack', 'MITRE ATT&CK (STIX/TAXII)', 'threat_intel', 0, 0, 10, 'https://github.com/mitre/cti', 'none (no key required)'),
('numverify', 'Numverify (phone OSINT)', 'osint', 1, 0, 10, 'https://numverify.com/documentation', 'https://numverify.com/product'),
('nvd', 'NIST NVD (CVE Database)', 'vulnerability', 1, 0, 10, 'https://nvd.nist.gov/developers/vulnerabilities', 'https://nvd.nist.gov/developers/request-an-api-key'),
('otx', 'AlienVault OTX', 'threat_intel', 1, 0, 10, 'https://otx.alienvault.com/api', 'https://otx.alienvault.com/'),
('phishtank', 'PhishTank', 'threat_intel', 0, 0, 10, 'https://www.phishtank.com/api_info.php', 'https://www.phishtank.com/register.php'),
('pulsedive', 'Pulsedive', 'threat_intel', 1, 0, 10, 'https://pulsedive.com/api/', 'https://pulsedive.com/register/'),
('shodan', 'Shodan', 'osint', 1, 0, 10, 'https://developer.shodan.io/api', 'https://account.shodan.io/register'),
('sslabs', 'SSL Labs', 'dns_ssl', 0, 0, 10, 'https://github.com/ssllabs/ssllabs-scan/blob/master/ssllabs-api-docs-v3.md', 'none (no key required)'),
('threatfox', 'ThreatFox (abuse.ch)', 'threat_intel', 0, 0, 10, 'https://threatfox.abuse.ch/api/', 'https://threatfox.abuse.ch/'),
('urlhaus', 'URLhaus', 'malware', 0, 0, 10, 'https://urlhaus-api.abuse.ch/', 'https://urlhaus.abuse.ch/api/'),
('urlscan', 'urlscan.io', 'malware', 1, 0, 10, 'https://urlscan.io/docs/api/', 'https://urlscan.io/user/signup'),
('virustotal', 'VirusTotal', 'malware', 1, 0, 10, 'https://docs.virustotal.com/reference/overview', 'https://www.virustotal.com/gui/join-us'),
('whoisxml', 'WhoisXML API', 'dns_ssl', 1, 0, 10, 'https://whois.whoisxmlapi.com/documentation/making-requests', 'https://user.whoisxmlapi.com/signup');

-- Default feature flags: everything on except sensitive scanners, admin should review

INSERT INTO feature_flags (feature_key, is_enabled) VALUES
('challenges', 1),
('uploads', 1),
('leaderboard', 1),
('connector.shodan', 1),
('connector.censys', 1),
('connector.urlscan', 1)
ON DUPLICATE KEY UPDATE is_enabled = VALUES(is_enabled);
