This section describes security architecture, controls, and recommended practices for secure usage of the SDK, including authentication, data protection,
media privacy, and enterprise compliance considerations.
Transport & network security
- All communication between the client SDK and servers MUST use HTTPS (TLS 1.2 or higher).
- WebSocket connections are established over secure WebSockets (WSS).
- Plain HTTP or unsecured WebSocket connections are not supported.
- Certificate validation is enforced by default to prevent man-in-the-middle (MITM) attacks.
Recommendation
Enforce HTTPS at the browser and server level and disable mixed-content loading.
Authentication & authorization
akey (API Key) and skey (Service Key) are unique credentials issued by JodoWorld and identify the integrating application and authorized services.
- API keys must never be hard-coded in public repositories.
- Keys should be domain restricted and IP restricted (where applicable), and rotated periodically.
- Recommended architecture: generate short-lived, signed session tokens from your backend and use the backend-issued token to initialize the widget instead of exposing long-lived keys directly.
Error handling & secure failures
Security-relevant events include APINotConnected, APITimeout, WebSocketNotConnected, and invalidLicenseKey.
- No sensitive data is exposed in error responses.
- Sessions are safely terminated on critical failures.
- Clients should display generic error messages to users.
Security FAQs
Q1. How is data secured during transmission?
All communication is encrypted using HTTPS (TLS 1.2+) and WSS. Unencrypted connections are not supported.
Q2. Are API keys exposed on the client side?
API and service keys are required for SDK initialization. For enterprise deployments, use backend-issued short-lived session tokens,
apply domain/IP restrictions, and rotate credentials periodically.
Q3. How are users authenticated and identified?
Each session is associated with a unique session identifier (systemcallid) and a unique user identifier (uniqueuserid).
For higher security, use signed identifiers (JWT or equivalent) with expiry and validation checks.
Q4. Is any Personally Identifiable Information (PII) stored?
The SDK may process PII only when explicitly provided by the integrating application (e.g., name, location, device metadata, chat transcripts).
Best practice: minimize PII collection, mask sensitive fields, avoid storing unnecessary personal data.
Q5. How is voice, video, and screensharing secured?
Media requires explicit user consent (accept/reject), is session-bound and time-limited, and terminates automatically when the session ends.
Screensharing/cobrowsing should exclude sensitive fields (passwords, OTPs).
Q6. Can agents access user data without consent?
No. Interactive features require explicit user initiation or acceptance. Users can terminate sessions at any time.
Q7. How is document sharing secured?
Documents are shared via secure HTTPS URLs. Recommended controls: file type allowlisting, file size limits, malware scanning, time-bound/signed URLs.
The SDK does not permanently store shared documents on the client.
Q8. How does the platform prevent session hijacking or replay attacks?
Controls include unique session IDs per interaction, message sequencing and validation, and automatic session termination on disconnects or errors.
Q9. Are logs and audit trails maintained?
Yes. System events, session activity, and error conditions are logged for troubleshooting, audit/compliance, and security monitoring.
Logs should be access-controlled, masked for sensitive data, and retained per defined policy.
Q10. How does the SDK support DPDP / GDPR compliance?
The SDK supports data minimization, purpose limitation, consent-based processing, and secure data handling. The integrating organization remains
the Data Fiduciary / Controller and defines retention periods, erasure workflows, and cross-border transfer policies.
Q11. What happens in case of a security incident?
For API failures, network issues, or security-related errors, the SDK terminates sessions safely, does not expose sensitive data, and triggers specific error events for handling.
Incident response and regulatory notifications follow organizational policies.
Q12. Is the SDK compliant with ISO 27001 or SOC 2?
The SDK architecture and controls are aligned with ISO 27001 and SOC 2 principles. Formal certification depends on the hosting environment and operational controls of the deploying organization.
Q13. Can security controls be customized for enterprise deployments?
Yes. Enterprise deployments can enable custom authentication mechanisms, restricted domains and IPs, enhanced logging and monitoring, and custom data masking rules.
Q14. Who owns the customer data?
The integrating organization retains full ownership of customer data. The platform processes data only to deliver requested services and does not use it for unrelated purposes.
Q15. How often are security controls reviewed?
Security controls are reviewed periodically, updated to address emerging threats, and improved through monitoring, testing, and audits.