Integrate Enterprise Threat Intelligence in Minutes

    Real-time Threat Scanning

    Detect phishing, malware, and scams instantly with sub-100ms latency.

    Actionable Risk Data

    Get comprehensive risk scores, threat categorization, and clear allow/block verdicts.

    Seamless CI/CD Integration

    Drop-in REST APIs that fit perfectly into your existing pipelines and user flows.

    /**
     * HOW TO RUN:
     * 1. Save this file as `test-trust-sse-js.js` (standard CommonJS).
     * 2. Run the following command in your terminal:
     * node test-trust-sse-js.js
     */
    
    const API_BASE_URL = "https://trust-sse.oten.com";
    const API_KEY = "ot_live_-d5Il4kuuv..."; // Replace with your actual API Key
    const URL_TO_SCAN = "https://google.com";
    
    /**
     * Scans a URL using Server-Sent Events (SSE) via Fetch API
     * @param {string} url - The target URL to scan
     * @param {string} lang - Language for the response (default: "en")
     */
    async function scanUrl(url, lang = "en") {
      const endpoint = new URL('/api/v1/scan-url', API_BASE_URL);
      endpoint.searchParams.set('url', url);
      endpoint.searchParams.set('lang', lang);
    
      try {
        // Node.js 18+ has native fetch built-in
        const response = await fetch(endpoint.toString(), {
          method: 'GET',
          headers: {
            'Authorization': `Bearer ${API_KEY}`,
            'Accept': 'text/event-stream',
          },
        });
    
        if (!response.ok) {
          console.error(`[Error] Status: ${response.status} ${response.statusText}`);
          const errorText = await response.text();
          console.error("[Detail]:", errorText);
          return;
        }
    
        const reader = response.body.getReader();
        const decoder = new TextDecoder();
        let currentEvent = null;
    
        console.log(">>> Connected to Stream (CommonJS Mode)");
    
        while (true) {
          const { value, done } = await reader.read();
          if (done) break;
    
          const chunk = decoder.decode(value);
          const lines = chunk.split('\n');
    
          for (const line of lines) {
            const trimmedLine = line.trim();
            if (!trimmedLine) continue;
    
            if (trimmedLine.startsWith('event:')) {
              currentEvent = trimmedLine.replace('event:', '').trim();
              continue;
            }
    
            if (trimmedLine.startsWith('data:')) {
              const rawData = trimmedLine.replace('data:', '').trim();
    
              switch (currentEvent) {
                case 'progress':
                  console.log("[progress]", rawData);
                  break;
                case 'heartbeat':
                  console.log("[heartbeat] ❤️");
                  break;
                case 'result':
                  try {
                    const parsed = JSON.parse(rawData);
                    console.log("✅ [RESULT]:", JSON.stringify(parsed, null, 2));
                  } catch {
                    console.log("✅ [RESULT raw]:", rawData);
                  }
                  break;
                case 'error':
                  console.error("❌ [event error]:", rawData);
                  break;
                default:
                  console.log(`[${currentEvent || 'message'}]`, rawData);
              }
              currentEvent = null;
            }
          }
        }
        console.log(">>> Stream Closed");
    
      } catch (err) {
        console.error("!!! Execution Error:", err);
      }
    }
    
    // Execute the function
    scanUrl(URL_TO_SCAN);
    Built for Scale and Security
    Global Edge Network
    Global Edge Network
    Scan requests at the edge. Our globally distributed network guarantees high availability and low latency for your users worldwide.
    Granular Governance
    Granular Governance
    Implement zero-trust with OAuth 2.0, mTLS, and automated key rotation. Sovereignty via RBAC and policy-as-code.
    Developer Ecosystem
    Developer Ecosystem
    Native SDKs for Node.js, Python, Go, and PHP. Set up webhooks for instant alerts on high-risk threats.

    Oten Trust provides relentless protection for modern architectures

    Massive Scale

    1 million +

    URLs analyzed monthly

    High Availability

    99.99%

    API Uptime SLA

    Ultra-Low Latency

    < 50ms

    Average global latency

    TOKEN REQUEST INITIATED

    // Adding event listeners to DOM elements
    document.addEventListener('DOMContentLoaded', () => {
        const button = document.getElementById('myButton');
        const counterDisplay = document.getElementById('counter');
        let clickCount = 0;
    SECURE TOKEN RETRIEVED
    APPS ACCESSED

    Integrate Oten Trust
    in less than 5 minutes

    Drop our SDKs into your app—whether it's Node.js, Python, Go, or PHP. Start blocking threats before they reach your users.