{"templateId":"markdown","sharedDataIds":{"sidebar":"sidebar-sidebars.yaml"},"props":{"metadata":{"markdoc":{"tagList":[]},"type":"markdown"},"seo":{"title":"Best Practices — Medical Device — JondaX API Docs","description":"Best practices for integrating the JondaX Medical Device module. Covers image quality tips, multi-device handling, API key security, confidence scores, and rate limits.","llmstxt":{"hide":false,"sections":[{"title":"Table of contents","includeFiles":["**/*"],"excludeFiles":[]}],"excludeFiles":[]}},"dynamicMarkdocComponents":[],"compilationErrors":[],"ast":{"$$mdtype":"Tag","name":"article","attributes":{},"children":[{"$$mdtype":"Tag","name":"Heading","attributes":{"level":1,"id":"best-practices","__idx":0},"children":["Best Practices"]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"image-quality","__idx":1},"children":["Image quality"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Use a clear, well-lit, straight-on photo of the device display."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Avoid glare, blur, or partial cropping of the screen."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Ensure the device reading is fully visible and in focus."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["For PDF uploads, use exports with embedded text when available — image-only PDFs depend on OCR quality."]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"handling-multi-device-responses","__idx":2},"children":["Handling multi-device responses"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["When the image contains more than one device or multiple readings, the response includes an ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["items"]}," array instead of top-level ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["deviceType"]}," and ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["data"]}," fields. Always check for the presence of ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["items"]}," before reading top-level device fields:"]},{"$$mdtype":"Tag","name":"CodeBlock","attributes":{"data-language":"js","header":{"controls":{"copy":{}}},"source":"const result = response.data.extractions[0].result.data;\n\nif (Array.isArray(result.items)) {\n  // Multi-device response\n  result.items.forEach(item => console.log(item.deviceType, item.data));\n} else {\n  // Single-device response\n  console.log(result.deviceType, result.data);\n}\n","lang":"js"},"children":[]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"confidence-scores","__idx":3},"children":["Confidence scores"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Check ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["confidence"]}," on every extraction. A score below ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["0.7"]}," is a signal to prompt your user to retake the photo."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["For multi-device responses, each item in ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["items[]"]}," has its own ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["confidence"]}," score — evaluate them independently."]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"general","__idx":4},"children":["General"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Validate file size and format on the client side before uploading."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Store the API key securely and never expose it in client-side code."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["Handle unknown ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["deviceType"]}," values and unexpected ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["data"]}," keys gracefully — new device types are added over time."]}]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"rate-limits","__idx":5},"children":["Rate limits"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["No published per-second or daily rate limits. For high-volume integrations, contact ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"mailto:support@jonda.health"},"children":["support@jonda.health"]}," to discuss capacity planning."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"data-retention","__idx":6},"children":["Data retention"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Medical Device extraction records are stored and accessible via the transformation history endpoint (",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["GET /api/master/transformations?module=medical"]},") and the file retrieval endpoint (",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["GET /api/master/medical/:id"]},"). There is no ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["uploadId"]}," for medical device uploads — use the ",{"$$mdtype":"Tag","name":"code","attributes":{},"children":["id"]}," returned in the transformation history to retrieve specific records."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"environments","__idx":7},"children":["Environments"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["There is currently no separate sandbox or test environment. Use your production API key against the live endpoint. Test with sample device images before going live."]}]},"headings":[{"value":"Best Practices","id":"best-practices","depth":1},{"value":"Image quality","id":"image-quality","depth":2},{"value":"Handling multi-device responses","id":"handling-multi-device-responses","depth":2},{"value":"Confidence scores","id":"confidence-scores","depth":2},{"value":"General","id":"general","depth":2},{"value":"Rate limits","id":"rate-limits","depth":2},{"value":"Data retention","id":"data-retention","depth":2},{"value":"Environments","id":"environments","depth":2}],"frontmatter":{"seo":{"title":"Best Practices — Medical Device — JondaX API Docs","description":"Best practices for integrating the JondaX Medical Device module. Covers image quality tips, multi-device handling, API key security, confidence scores, and rate limits."}},"lastModified":"2026-07-07T05:23:45.000Z","pagePropGetterError":{"message":"","name":""}},"slug":"/docs/medical-device/best-practices","userData":{"isAuthenticated":false,"teams":["anonymous"]},"isPublic":true}