Skip to main content

🚗 āļĢāļ°āļšāļšāđāļāļ°āļ‚āđ‰āļ­āļĄāļđāļĨāļˆāļēāļāļĢāļđāļ›āđƒāļšāļ‚āļąāļšāļ‚āļĩāđˆāđ„āļ—āļĒ (Thai Driver License OCR)

🚗 āđƒāļšāļ‚āļąāļšāļ‚āļĩāđˆāđ„āļ—āļĒ

Version Status New

āļĒāļīāļ™āļ”āļĩāļ•āđ‰āļ­āļ™āļĢāļąāļšāļŠāļđāđˆ API āļĢāļ°āļšāļšāļ•āļĢāļ§āļˆāļŠāļ­āļšāđƒāļšāļ‚āļąāļšāļ‚āļĩāđˆāđ„āļ—āļĒāļ”āđ‰āļ§āļĒ OCR āđ€āļ§āļ­āļĢāđŒāļŠāļąāļ™ 1.1 āļœāļĨāļīāļ•āļ āļąāļ“āļ‘āđŒ AI āļˆāļēāļ āļšāļĢāļīāļĐāļąāļ— āđ„āļ­āđāļ­āļžāļžāđŒāđ€āļ—āļ„āđ‚āļ™āđ‚āļĨāļĒāļĩ āļˆāļģāļāļąāļ” API āļ‚āļ­āļ‡āđ€āļĢāļēāļ­āļ­āļāđāļšāļšāļĄāļēāđ€āļžāļ·āđˆāļ­āļ”āļķāļ‡āļ‚āđ‰āļ­āļĄāļđāļĨāļ‚āđ‰āļ­āļ„āļ§āļēāļĄāļˆāļēāļāļ”āđ‰āļēāļ™āļŦāļ™āđ‰āļēāļ‚āļ­āļ‡āļ āļēāļžāđƒāļšāļ‚āļąāļšāļ‚āļĩāđˆāđ„āļ—āļĒāļ”āđ‰āļ§āļĒāļ„āļ§āļēāļĄāđāļĄāđˆāļ™āļĒāļģāđāļĨāļ°āļ„āļ§āļēāļĄāđ€āļĢāđ‡āļ§āļŠāļđāļ‡ API āļ‚āļ­āļ‡āđ€āļĢāļēāļŠāļ™āļąāļšāļŠāļ™āļļāļ™āļĢāļđāļ›āđāļšāļšāđ„āļŸāļĨāđŒ JPEG, JPG, PNG āđāļĨāļ°āļŠāļēāļĄāļēāļĢāļ–āļ›āļĢāļ°āļĄāļ§āļĨāļœāļĨāļ āļēāļžāđƒāļšāļ‚āļąāļšāļ‚āļĩāđˆāđ„āļ”āđ‰āļ āļēāļĒāđƒāļ™ 1-2 āļ§āļīāļ™āļēāļ—āļĩ

Try Demo

Visit our API Portal to test the Thai Driver License OCR API with your own images.

āđ€āļĢāļīāđˆāļĄāļ•āđ‰āļ™āđƒāļŠāđ‰āļ‡āļēāļ™â€‹

  1. āļ‚āđ‰āļ­āļāļģāļŦāļ™āļ”āđ€āļšāļ·āđ‰āļ­āļ‡āļ•āđ‰āļ™

    • API key āļˆāļēāļ āđ„āļ­āđāļ­āļžāļžāđŒāđ€āļ—āļ„āđ‚āļ™āđ‚āļĨāļĒāļĩ
    • āļĢāļđāļ›āļ āļēāļžāđƒāļšāļ‚āļąāļšāļ‚āļĩāđˆāđ„āļ—āļĒ (āļ”āđ‰āļēāļ™āļŦāļ™āđ‰āļē)
    • āļĢāļđāļ›āđāļšāļšāđ„āļŸāļĨāđŒāļ—āļĩāđˆāļĢāļ­āļ‡āļĢāļąāļš: JPEG, JPG, PNG
    • āļ‚āļ™āļēāļ”āđ„āļŸāļĨāđŒāļŠāļđāļ‡āļŠāļļāļ”: 10MB
  2. āđ€āļĢāļīāđˆāļĄāļ•āđ‰āļ™āļ­āļĒāđˆāļēāļ‡āļĢāļ§āļ”āđ€āļĢāđ‡āļ§

    • āļāļēāļĢāļ›āļĢāļ°āļĄāļ§āļĨāļœāļĨāļ—āļĩāđˆāļĢāļ§āļ”āđ€āļĢāđ‡āļ§ (1-2 āļ§āļīāļ™āļēāļ—āļĩāļ•āđˆāļ­āđƒāļš)
    • āļāļēāļĢāļ”āļķāļ‡āļ‚āđ‰āļ­āļ„āļ§āļēāļĄāļ—āļĩāđˆāļĄāļĩāļ„āļ§āļēāļĄāđāļĄāđˆāļ™āļĒāļģāļŠāļđāļ‡ (95.14% āđƒāļ™āļĢāļ°āļ”āļąāļšāļ­āļąāļāļ‚āļĢāļ°)
    • āļĢāļ­āļ‡āļĢāļąāļšāļŦāļĨāļēāļĒāļĢāļđāļ›āđāļšāļšāđ„āļŸāļĨāđŒ
  3. āļ„āļļāļ“āļŠāļĄāļšāļąāļ•āļīāļŦāļĨāļąāļ

    • āļāļēāļĢāļ”āļķāļ‡āļ‚āđ‰āļ­āļĄāļđāļĨāļĢāļēāļĒāļĨāļ°āđ€āļ­āļĩāļĒāļ”āļ•āđˆāļēāļ‡āđ† āļĢāļ§āļĄāļ–āļķāļ‡:
      • āđ€āļĨāļ‚āļ—āļĩāđˆāđƒāļšāļ­āļ™āļļāļāļēāļ•
      • āļŠāļ·āđˆāļ­āđ€āļ•āđ‡āļĄ (āđ„āļ—āļĒāđāļĨāļ°āļ­āļąāļ‡āļāļĪāļĐ)
      • āļ§āļąāļ™āđ€āļ”āļ·āļ­āļ™āļ›āļĩāđ€āļāļīāļ”
      • āļ§āļąāļ™āļ—āļĩāđˆāļ­āļ­āļāđāļĨāļ°āļ§āļąāļ™āļ—āļĩāđˆāļŦāļĄāļ”āļ­āļēāļĒāļļ
      • āđ€āļĨāļ‚āļ›āļĢāļ°āļˆāļģāļ•āļąāļ§āļ›āļĢāļ°āļŠāļēāļŠāļ™
      • āļ‚āđ‰āļ­āļĄāļđāļĨāļ™āļēāļĒāļ—āļ°āđ€āļšāļĩāļĒāļ™
    • āļĢāļ­āļ‡āļĢāļąāļšāļ”āđ‰āļēāļ™āļŦāļ™āđ‰āļēāļ‚āļ­āļ‡āđƒāļšāļ‚āļąāļšāļ‚āļĩāđˆ
    • āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāđƒāļ™āļāļēāļĢāļŠāđˆāļ‡āļ„āļ·āļ™āļĢāļđāļ›āļ āļēāļžāđƒāļšāļŦāļ™āđ‰āļēāđƒāļ™āļĢāļđāļ›āđāļšāļš base64
    • āļĢāļđāļ›āđāļšāļšāļāļēāļĢāļ•āļ­āļšāļŠāļ™āļ­āļ‡ JSON āļ—āļĩāđˆāļĒāļ·āļ”āļŦāļĒāļļāđˆāļ™
  4. āļ„āļ§āļēāļĄāļ›āļĨāļ­āļ”āļ āļąāļĒāđāļĨāļ°āļāļēāļĢāļ›āļāļīāļšāļąāļ•āļīāļ•āļēāļĄāļāļŽāļĢāļ°āđ€āļšāļĩāļĒāļš

    • āļ›āļāļīāļšāļąāļ•āļīāļ•āļēāļĄ GDPR āđāļĨāļ° PDPA
    • āđ„āļĄāđˆāļĄāļĩāļāļēāļĢāđ€āļāđ‡āļšāļĢāļąāļāļĐāļēāļ‚āđ‰āļ­āļĄāļđāļĨāļŦāļĨāļąāļ‡āļˆāļēāļāļāļēāļĢāļ›āļĢāļ°āļĄāļ§āļĨāļœāļĨ
āļ§āļīāļ˜āļĩāļĢāļąāļš API Key?

āļāļĢāļļāļ“āļēāđ€āļĒāļĩāđˆāļĒāļĄāļŠāļĄ API Portal āđ€āļžāļ·āđˆāļ­āļ”āļđ API key āļ—āļĩāđˆāļĄāļĩāļ­āļĒāļđāđˆāļ‚āļ­āļ‡āļ„āļļāļ“āļŦāļĢāļ·āļ­āļ‚āļ­ API key āđƒāļŦāļĄāđˆ

āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡â€‹

āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āđƒāļšāļ‚āļąāļšāļ‚āļĩāđˆāđ„āļ—āļĒ (āļ”āđ‰āļēāļ™āļŦāļ™āđ‰āļē)

āļ„āļģāļ‚āļ­:​

curl -X POST https://api.iapp.co.th/thai-driver-license-ocr \
-H "apikey: YOUR_API_KEY" \
-F "file=@/path/to/driver_license.jpg"

āļāļēāļĢāļ•āļ­āļšāļŠāļ™āļ­āļ‡:​

{
"driving_license_type2": "Detected",
"driving_license_type6": "Detected",
"en_country": "Kingdom of Thailand",
"en_dob": "1 March 1987",
"en_expiry": "26 March 2024",
"en_issue": "18 May 2006",
"en_license_no": "00000000",
"en_name": "Mr. iApp Technology",
"en_type": "Private Car Driving License",
"face": "Detected",
"file_name": "thai-driver-license-ocr-example.png",
"flag": "Detected",
"id_no": "1111111111111",
"inference": "0.523",
"message": "Success",
"registrar": "āļ™āļēāļĒāļ—āļ°āđ€āļšāļĩāļĒāļ™āļˆāļąāļ‡āļŦāļ§āļąāļ” āļāļĢāļļāļ‡āđ€āļ—āļžāļĄāļŦāļēāļ™āļ„āļĢ Bangkok",
"sign": "Detected",
"status_code": 200,
"text_is_white": "Detected",
"th_country": "āļ›āļĢāļ°āđ€āļ—āļĻāđ„āļ—āļĒ",
"th_dob": "1 āļĄāļĩāļ™āļēāļ„āļĄ 2530",
"th_expiry": "26 āļĄāļĩāļ™āļēāļ„āļĄ 2567",
"th_issue": "1 āļĄāļāļĢāļēāļ„āļĄ 2562",
"th_license_no": "000000000",
"th_name": "āļ™āļēāļĒ āđ„āļ­āđāļ­āļžāļžāđŒ āđ€āļ—āļ„āđ‚āļ™āđ‚āļĨāļĒāļĩ",
"th_type": "āđƒāļšāļ­āļ™āļļāļāļēāļ•āļīāļ‚āļąāļšāļĢāļ–āļĒāļ™āļ•āđŒāļŠāđˆāļ§āļ™āļšāļļāļ„āļ„āļĨ"
}

āļ„āļļāļ“āļŠāļĄāļšāļąāļ•āļīāđāļĨāļ°āļ„āļ§āļēāļĄāļŠāļēāļĄāļēāļĢāļ–​

āļ„āļļāļ“āļŠāļĄāļšāļąāļ•āļīāļŦāļĨāļąāļâ€‹

  • āļāļēāļĢāļ”āļķāļ‡āļ‚āđ‰āļ­āļ„āļ§āļēāļĄāļ—āļĩāđˆāļĄāļĩāļ„āļ§āļēāļĄāđāļĄāđˆāļ™āļĒāļģāļŠāļđāļ‡ (āļ„āļ§āļēāļĄāđāļĄāđˆāļ™āļĒāļģāļĢāļ°āļ”āļąāļšāļ­āļąāļāļ‚āļĢāļ° 95.14%)
  • āđ€āļ§āļĨāļēāđƒāļ™āļāļēāļĢāļ›āļĢāļ°āļĄāļ§āļĨāļœāļĨāļ—āļĩāđˆāļĢāļ§āļ”āđ€āļĢāđ‡āļ§ (1-2 āļ§āļīāļ™āļēāļ—āļĩāļ•āđˆāļ­āđƒāļš)
  • āļĢāļ­āļ‡āļĢāļąāļšāļŦāļĨāļēāļĒāļĢāļđāļ›āđāļšāļšāđ„āļŸāļĨāđŒ (JPEG, JPG, PNG)
  • āļāļēāļĢāļ•āļĢāļ§āļˆāļˆāļąāļšāļšāļąāļ•āļĢāđ‚āļ”āļĒāļ­āļąāļ•āđ‚āļ™āļĄāļąāļ•āļī
  • āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāļāļēāļĢāļ”āļķāļ‡āļĢāļđāļ›āļ āļēāļžāđƒāļšāļŦāļ™āđ‰āļēāđƒāļ™āļĢāļđāļ›āđāļšāļš base64
  • āļĢāļ­āļ‡āļĢāļąāļšāļāļēāļĢāļ”āļķāļ‡āļ‚āđ‰āļ­āļ„āļ§āļēāļĄāļ—āļąāđ‰āļ‡āļ āļēāļĐāļēāđ„āļ—āļĒāđāļĨāļ°āļ āļēāļĐāļēāļ­āļąāļ‡āļāļĪāļĐ

āļŸāļīāļĨāļ”āđŒāļ—āļĩāđˆāļĢāļ­āļ‡āļĢāļąāļšâ€‹

āļŸāļīāļĨāļ”āđŒāļŠāļ™āļīāļ”āļ„āļģāļ­āļ˜āļīāļšāļēāļĒ
en_countryStringāļŠāļ·āđˆāļ­āļ›āļĢāļ°āđ€āļ—āļĻāđ€āļ›āđ‡āļ™āļ āļēāļĐāļēāļ­āļąāļ‡āļāļĪāļĐ
en_expiryStringāļ§āļąāļ™āļ—āļĩāđˆāļŦāļĄāļ”āļ­āļēāļĒāļļāđ€āļ›āđ‡āļ™āļ āļēāļĐāļēāļ­āļąāļ‡āļāļĪāļĐ
en_issueStringāļ§āļąāļ™āļ—āļĩāđˆāļ­āļ­āļāđ€āļ›āđ‡āļ™āļ āļēāļĐāļēāļ­āļąāļ‡āļāļĪāļĐ
en_nameStringāļŠāļ·āđˆāļ­āđ€āļ•āđ‡āļĄāđ€āļ›āđ‡āļ™āļ āļēāļĐāļēāļ­āļąāļ‡āļāļĪāļĐ
en_license_noStringāđ€āļĨāļ‚āļ—āļĩāđˆāđƒāļšāļ­āļ™āļļāļāļēāļ•āđ€āļ›āđ‡āļ™āļ āļēāļĐāļēāļ­āļąāļ‡āļāļĪāļĐ
en_typeStringāļ›āļĢāļ°āđ€āļ āļ—āđƒāļšāļ­āļ™āļļāļāļēāļ•āđ€āļ›āđ‡āļ™āļ āļēāļĐāļēāļ­āļąāļ‡āļāļĪāļĐ
faceStringāļŠāļ–āļēāļ™āļ°āļāļēāļĢāļ•āļĢāļ§āļˆāļˆāļąāļšāđƒāļšāļŦāļ™āđ‰āļē
id_noStringāđ€āļĨāļ‚āļšāļąāļ•āļĢāļ›āļĢāļ°āļˆāļģāļ•āļąāļ§āļ›āļĢāļ°āļŠāļēāļŠāļ™
th_countryStringāļŠāļ·āđˆāļ­āļ›āļĢāļ°āđ€āļ—āļĻāđ€āļ›āđ‡āļ™āļ āļēāļĐāļēāđ„āļ—āļĒ
th_expiryStringāļ§āļąāļ™āļ—āļĩāđˆāļŦāļĄāļ”āļ­āļēāļĒāļļāđ€āļ›āđ‡āļ™āļ āļēāļĐāļēāđ„āļ—āļĒ
th_issueStringāļ§āļąāļ™āļ—āļĩāđˆāļ­āļ­āļāđ€āļ›āđ‡āļ™āļ āļēāļĐāļēāđ„āļ—āļĒ
th_nameStringāļŠāļ·āđˆāļ­āđ€āļ•āđ‡āļĄāđ€āļ›āđ‡āļ™āļ āļēāļĐāļēāđ„āļ—āļĒ
th_license_noStringāđ€āļĨāļ‚āļ—āļĩāđˆāđƒāļšāļ­āļ™āļļāļāļēāļ•āđ€āļ›āđ‡āļ™āļ āļēāļĐāļēāđ„āļ—āļĒ
th_typeStringāļ›āļĢāļ°āđ€āļ āļ—āđƒāļšāļ­āļ™āļļāļāļēāļ•āđ€āļ›āđ‡āļ™āļ āļēāļĐāļēāđ„āļ—āļĒ
registrarStringāļ‚āđ‰āļ­āļĄāļđāļĨāļ™āļēāļĒāļ—āļ°āđ€āļšāļĩāļĒāļ™

āļ‚āđ‰āļ­āļĄāļđāļĨāļ­āđ‰āļēāļ‡āļ­āļīāļ‡ API​

āļāļēāļĢāļˆāļ”āļˆāļģāđƒāļšāļ‚āļąāļšāļ‚āļĩāđˆāđ„āļ—āļĒ​

āļˆāļļāļ”āļŠāļīāđ‰āļ™āļŠāļļāļ”āļ™āļĩāđ‰āļ›āļĢāļ°āļĄāļ§āļĨāļœāļĨāļ āļēāļžāđƒāļšāļ‚āļąāļšāļ‚āļĩāđˆāđ„āļ—āļĒāđāļĨāļ°āļŠāđˆāļ‡āļ„āļ·āļ™āļ‚āđ‰āļ­āļĄāļđāļĨāļ—āļĩāđˆāļ”āļķāļ‡āļĄāļēāđƒāļ™āļĢāļđāļ›āđāļšāļšāļ—āļĩāđˆāļĄāļĩāđ‚āļ„āļĢāļ‡āļŠāļĢāđ‰āļēāļ‡

POST https://api.iapp.co.th/thai-driver-license-ocr

āļŠāđˆāļ§āļ™āļŦāļąāļ§āļ‚āļ­āļ‡āļ„āļģāļ‚āļ­â€‹

āļŠāļ·āđˆāļ­āļŠāļ™āļīāļ”āļˆāļģāđ€āļ›āđ‡āļ™āļ•āđ‰āļ­āļ‡āđƒāļŠāđ‰āļ„āļģāļ­āļ˜āļīāļšāļēāļĒ
apikeystringāđƒāļŠāđˆAPI key āļ‚āļ­āļ‡āļ„āļļāļ“

āđ€āļ™āļ·āđ‰āļ­āļŦāļēāļ‚āļ­āļ‡āļ„āļģāļ‚āļ­ (multipart/form-data)​

āļžāļēāļĢāļēāļĄāļīāđ€āļ•āļ­āļĢāđŒāļŠāļ™āļīāļ”āļˆāļģāđ€āļ›āđ‡āļ™āļ•āđ‰āļ­āļ‡āđƒāļŠāđ‰āļ„āļģāļ­āļ˜āļīāļšāļēāļĒ
fileFileāđƒāļŠāđˆāļ‚āđ‰āļ­āļĄāļđāļĨāđ„āļšāļ™āļēāļĢāļĩāļ‚āļ­āļ‡āļ āļēāļžāđƒāļšāļ‚āļąāļšāļ‚āļĩāđˆ
fieldsStringāđ„āļĄāđˆāđƒāļŠāđˆāļŸāļīāļĨāļ”āđŒāđ€āļŠāļĢāļīāļĄ (āđ€āļŠāđˆāļ™ "photo" āļŠāļģāļŦāļĢāļąāļšāļĢāļđāļ›āļ āļēāļžāđƒāļšāļŦāļ™āđ‰āļē)

āļĢāļēāļ„āļē​

āļŠāļ·āđˆāļ­āļšāļĢāļīāļāļēāļĢ AI APIEndpointIC āļ•āđˆāļ­āļāļēāļĢāļĢāđ‰āļ­āļ‡āļ‚āļ­On-Premise
Thai Driver License Card OCR [v1.1]iapp_thai_driver_license_ocr1.25 IC/Requestāļ•āļīāļ”āļ•āđˆāļ­āđ€āļĢāļē

āļ•āļąāļ§āļ­āļĒāđˆāļēāļ‡āđ‚āļ„āđ‰āļ”​

Python​

import requests

url = "https://api.iapp.co.th/thai-driver-license-ocr"

payload = {
'fields': 'photo'
}

files = [
('file',('driver_license.jpg',open('path/to/driver_license.jpg','rb'),'image/jpeg'))
]

headers = {
'apikey': 'YOUR_API_KEY'
}

response = requests.request("POST", url, headers=headers, data=payload, files=files)
print(response.json())

JavaScript​

const axios = require("axios")
const FormData = require("form-data")
const fs = require("fs")

const form = new FormData()
form.append("file", fs.createReadStream("path/to/driver_license.jpg"))
form.append("fields", "photo")

const config = {
method: "post",
url: "https://api.iapp.co.th/thai-driver-license-ocr",
headers: {
apikey: "YOUR_API_KEY",
...form.getHeaders(),
},
data: form,
}

axios(config)
.then((response) => console.log(JSON.stringify(response.data)))
.catch((error) => console.log(error))

PHP​

<?php
$curl = curl_init();

$post_data = array(
'file'=> new CURLFile('path/to/driver_license.jpg'),
'fields' => 'photo'
);

curl_setopt_array($curl, array(
CURLOPT_URL => 'https://api.iapp.co.th/thai-driver-license-ocr',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POST => true,
CURLOPT_POSTFIELDS => $post_data,
CURLOPT_HTTPHEADER => array(
'apikey: YOUR_API_KEY'
),
));

$response = curl_exec($curl);
curl_close($curl);
echo $response;
?>

Swift​

import Foundation

let headers = [
"apikey": "YOUR_API_KEY"
]

let parameters = [
[
"name": "file",
"fileName": "path/to/driver_license.jpg"
],
[
"name": "fields",
"value": "photo"
]
]

let boundary = "Boundary-\(UUID().uuidString)"
var body = ""
var error: Error? = nil

for param in parameters {
if let fileName = param["fileName"] {
let fileContent = try? String(contentsOfFile: fileName, encoding: .utf8)
body += "--\(boundary)\r\n"
body += "Content-Disposition:form-data; name=\"\(param["name"] ?? "")\""
body += "; filename=\"\(fileName)\"\r\n"
body += "Content-Type: image/jpeg\r\n\r\n"
body += fileContent ?? ""
} else {
body += "--\(boundary)\r\n"
body += "Content-Disposition:form-data; name=\"\(param["name"] ?? "")\"\r\n\r\n"
body += param["value"] ?? ""
}
}

let postData = body.data(using: .utf8)

var request = URLRequest(url: URL(string: "https://api.iapp.co.th/thai-driver-license-ocr")!,timeoutInterval: Double.infinity)
request.addValue("YOUR_API_KEY", forHTTPHeaderField: "apikey")
request.httpMethod = "POST"
request.httpBody = postData

let task = URLSession.shared.dataTask(with: request) { data, response, error in
guard let data = data else {
print(String(describing: error))
return
}
print(String(data: data, encoding: .utf8)!)
}

task.resume()

Kotlin​

import okhttp3.*
import java.io.File

val client = OkHttpClient()

val mediaType = MediaType.parse("image/jpeg")
val file = File("path/to/driver_license.jpg")
val body = MultipartBody.Builder().setType(MultipartBody.FORM)
.addFormDataPart("file", file.name, RequestBody.create(mediaType, file))
.addFormDataPart("fields", "photo")
.build()

val request = Request.Builder()
.url("https://api.iapp.co.th/thai-driver-license-ocr")
.addHeader("apikey", "YOUR_API_KEY")
.post(body)
.build()

client.newCall(request).execute().use { response ->
println(response.body()?.string())
}

Java​

import java.io.File;
import okhttp3.*;

public class Main {
public static void main(String[] args) {
OkHttpClient client = new OkHttpClient().newBuilder().build();

MediaType mediaType = MediaType.parse("image/jpeg");
RequestBody body = new MultipartBody.Builder().setType(MultipartBody.FORM)
.addFormDataPart("file", "driver_license.jpg",
RequestBody.create(mediaType, new File("path/to/driver_license.jpg")))
.addFormDataPart("fields", "photo")
.build();

Request request = new Request.Builder()
.url("https://api.iapp.co.th/thai-driver-license-ocr")
.method("POST", body)
.addHeader("apikey", "YOUR_API_KEY")
.build();

try {
Response response = client.newCall(request).execute();
System.out.println(response.body().string());
} catch(Exception e) {
e.printStackTrace();
}
}
}

Dart​

import 'package:http/http.dart' as http;

void main() async {
var request = http.MultipartRequest('POST',
Uri.parse('https://api.iapp.co.th/thai-driver-license-ocr'));

request.files.add(await http.MultipartFile.fromPath(
'file', 'path/to/driver_license.jpg'));

request.fields['fields'] = 'photo';

request.headers.addAll({
'apikey': 'YOUR_API_KEY'
});

http.StreamedResponse response = await request.send();

if (response.statusCode == 200) {
print(await response.stream.bytesToString());
} else {
print(response.reasonPhrase);
}
}

āļ‚āđ‰āļ­āļˆāļģāļāļąāļ”āđāļĨāļ°āđāļ™āļ§āļ—āļēāļ‡āļ›āļāļīāļšāļąāļ•āļīāļ—āļĩāđˆāļ”āļĩāļ—āļĩāđˆāļŠāļļāļ”​

āļ‚āđ‰āļ­āļˆāļģāļāļąāļ”​

  • āļ‚āļ™āļēāļ”āđ„āļŸāļĨāđŒāļŠāļđāļ‡āļŠāļļāļ”: 10MB
  • āļĢāļđāļ›āđāļšāļšāļ—āļĩāđˆāļĢāļ­āļ‡āļĢāļąāļš: JPEG, JPG, PNG
  • āđ€āļ‰āļžāļēāļ°āļ”āđ‰āļēāļ™āļŦāļ™āđ‰āļēāđ€āļ—āđˆāļēāļ™āļąāđ‰āļ™

āđāļ™āļ§āļ—āļēāļ‡āļ›āļāļīāļšāļąāļ•āļīāļ—āļĩāđˆāļ”āļĩāļ—āļĩāđˆāļŠāļļāļ”​

  1. āļ•āļĢāļ§āļˆāļŠāļ­āļšāđƒāļŦāđ‰āđāļ™āđˆāđƒāļˆāļ§āđˆāļēāļ„āļļāļ“āļ āļēāļžāļ‚āļ­āļ‡āļ āļēāļžāļ”āļĩ
  2. āļ•āļĢāļ§āļˆāļŠāļ­āļšāļ„āļ°āđāļ™āļ™āļāļēāļĢāļ­āļ™āļļāļĄāļēāļ™āđƒāļ™āļāļēāļĢāļ•āļ­āļšāļŠāļ™āļ­āļ‡
  3. āļˆāļąāļ”āļāļēāļĢāļ‚āđ‰āļ­āļ„āļ§āļēāļĄāđāļŠāļ”āļ‡āļ‚āđ‰āļ­āļœāļīāļ”āļžāļĨāļēāļ”āļ­āļĒāđˆāļēāļ‡āđ€āļŦāļĄāļēāļ°āļŠāļĄ
  4. āļ•āļĢāļ§āļˆāļŠāļ­āļšāļĢāļđāļ›āđāļšāļšāđ€āļĨāļ‚āļ—āļĩāđˆāđƒāļšāļ­āļ™āļļāļāļēāļ•
  5. āļžāļīāļˆāļēāļĢāļ“āļēāđƒāļŠāđ‰āļžāļēāļĢāļēāļĄāļīāđ€āļ•āļ­āļĢāđŒ fields āļŠāļģāļŦāļĢāļąāļšāļ„āļ§āļēāļĄāļ•āđ‰āļ­āļ‡āļāļēāļĢāđ€āļ‰āļžāļēāļ°

āļ„āļ§āļēāļĄāđāļĄāđˆāļ™āļĒāļģāđāļĨāļ°āļ›āļĢāļ°āļŠāļīāļ—āļ˜āļīāļ āļēāļžâ€‹

āļ„āļ§āļēāļĄāđāļĄāđˆāļ™āļĒāļģāđ‚āļ”āļĒāļĢāļ§āļĄâ€‹

  • āļ„āļ§āļēāļĄāđāļĄāđˆāļ™āļĒāļģāļĢāļ°āļ”āļąāļšāļ­āļąāļāļ‚āļĢāļ°: 95.14%
  • āļ„āļ§āļēāļĄāđāļĄāđˆāļ™āļĒāļģāđ€āļ‰āļžāļēāļ°āļŸāļīāļĨāļ”āđŒ:
    • āļāļēāļĢāļ•āļĢāļ§āļˆāļˆāļąāļšāđƒāļšāļŦāļ™āđ‰āļē: 100%
    • āđ€āļĨāļ‚āļ—āļĩāđˆāđƒāļšāļ­āļ™āļļāļāļēāļ•: 97.37%
    • āļŠāļ·āđˆāļ­āļ āļēāļĐāļēāļ­āļąāļ‡āļāļĪāļĐ: 99.13%
    • āļŠāļ·āđˆāļ­āļ āļēāļĐāļēāđ„āļ—āļĒ: 95.62%

āļ„āļ§āļēāļĄāđ€āļĢāđ‡āļ§āđƒāļ™āļāļēāļĢāļ›āļĢāļ°āļĄāļ§āļĨāļœāļĨ​

  • āđ‚āļ”āļĒāđ€āļ‰āļĨāļĩāđˆāļĒ: 1-2 āļ§āļīāļ™āļēāļ—āļĩ
  • āļ­āļēāļˆāđāļ•āļāļ•āđˆāļēāļ‡āļāļąāļ™āđ„āļ›āļ•āļēāļĄāļ‚āļ™āļēāļ”āđāļĨāļ°āļ„āļļāļ“āļ āļēāļžāļ‚āļ­āļ‡āļ āļēāļž

āļ›āļąāļˆāļˆāļąāļĒāļ—āļĩāđˆāļŠāđˆāļ‡āļœāļĨāļ•āđˆāļ­āļ„āļ§āļēāļĄāđāļĄāđˆāļ™āļĒāļģ​

  1. āļ„āļļāļ“āļ āļēāļžāļ‚āļ­āļ‡āļ āļēāļž
    • āļ„āļ§āļēāļĄāļĨāļ°āđ€āļ­āļĩāļĒāļ”
    • āđāļŠāļ‡āļŠāļ§āđˆāļēāļ‡
    • āđ‚āļŸāļāļąāļŠ
  2. āļŠāļ āļēāļžāļ‚āļ­āļ‡āļšāļąāļ•āļĢ
    • āļ„āļ§āļēāļĄāđ€āļŠāļĩāļĒāļŦāļēāļĒāļ—āļēāļ‡āļāļēāļĒāļ āļēāļž
    • āļāļēāļĢāļŠāļ°āļ—āđ‰āļ­āļ™āđāļŠāļ‡
    • āļ„āļ§āļēāļĄāļŠāļąāļ”āđ€āļˆāļ™āļ‚āļ­āļ‡āļ‚āđ‰āļ­āļ„āļ§āļēāļĄ

āļ›āļĢāļ°āļ§āļąāļ•āļīāļāļēāļĢāđ€āļ›āļĨāļĩāđˆāļĒāļ™āđāļ›āļĨāļ‡â€‹

āđ€āļ§āļ­āļĢāđŒāļŠāļąāļ™āļ§āļąāļ™āļ—āļĩāđˆāđ€āļœāļĒāđāļžāļĢāđˆāļ„āļ§āļēāļĄāđāļĄāđˆāļ™āļĒāļģāļāļēāļĢāļ›āļĢāļąāļšāļ›āļĢāļļāļ‡āļ—āļĩāđˆāļŠāļģāļ„āļąāļ
1.1āļĄ.āļ„. 202395.14%āđ€āļžāļīāđˆāļĄāļāļēāļĢāļ”āļķāļ‡āļĢāļđāļ›āļ āļēāļžāđƒāļšāļŦāļ™āđ‰āļē āđ€āļžāļīāđˆāļĄāļ„āļ§āļēāļĄāđāļĄāđˆāļ™āļĒāļģ
1.0āļ˜.āļ„. 202290%āļāļēāļĢāđ€āļ›āļīāļ”āļ•āļąāļ§āļ„āļĢāļąāđ‰āļ‡āđāļĢāļ