Know Your Customer
...
ID OCR
Global
Global Passport Extraction
overview the global passport extraction api is designed to provide comprehensive passport data extraction from images this service is aimed at businesses and organizations that require quick and reliable identification and verification processes the api extracts details such as name, passport number, date of birth, expiry date, and more, along with facial image extraction from the passport photos usecases this api is particularly useful for identity verification processes in banking, finance, and telecommunication sectors automated check ins in the travel and hospitality industry any system that needs to authenticate identity documents and manage client onboarding or verification remotely sample curl input pre production curl location 'https //api preproduction signzy app/api/v3/global/global passport extraction' \\ \ header 'authorization \<kong auth token>' \\ \ header 'content type application/json' \\ \ data '{ "fronturl" "url to the front image of the passport", "backurl" "url to the back image of the passport", "performidextraction" true, "performfaceextraction" true, "imagequalitythreshold" 0 5 "performimagequalityanalysis"\ true }' production curl location 'https //api signzy app/api/v3/global/global passport extraction' \\ \ header 'authorization \<kong auth token>' \\ \ header 'content type application/json' \\ \ data '{ "fronturl" "url to the front image of the passport", "backurl" "url to the back image of the passport", "performidextraction" true, "performfaceextraction" true, "imagequalitythreshold" 0 5 "performimagequalityanalysis"\ true }' input mapping input required data type description fronturl optional either front or back image is required string url to the front image of the passport backurl optional either front or back image is required string url to the back image of the passport performidextraction yes boolean whether to perform id extraction all the fields part of "extractedfields" and "additionaldata" comes when performidextraction is set to true performfaceextraction yes boolean whether to perform face extraction "faceurl" field will be available if set to true imagequalitythreshold yes float minimum quality threshold for image processing (0 0 to 1 0) imagequalityfront & imagequalityback have value related to image quality performimagequalityanalysis optional boolean whether to perform image quality analysis on the given id or not if set to true user would be able to set imagequalitythreshold which they would want their id to pass output output response { "results" { "predictedidtypefront" "passport", "predictedidtypeback" "passport side b", "idexpired" false, "extractedfields" { "firstname" "shivam", "lastname" "", "names" "shivam", "address" "", "number" "n939159", "dob" "24/01/1998", "issuingstate" "india", "expirydate" "07/07/2025", "nationality" "ind", "gender" "m", "additionaldata" // this object changes based on the id given { "documentname" "india passport (2013)", "dateofexpirycheckdigit" "5", "remainderterm" "12", "age" "26", "finalcheckdigit" "8", "mrzstrings" "p\<ind<\<shivam<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<^n0939159<1ind9801244m2507075<<<<<<<<<<<<<<<8", "dateofbirthcheckdigit" "4", "nationalitycode" "ind", "documentnumbercheckdigit" "1", "documentclasscode" "p", "optionaldata" "", "optionaldatacheckdigit" "", "mrztype" "id 3", "nationality" "indian", "dateofissue" "08/07/2015", "yearssinceissue" "8" } }, "faceurl" "url to the extracted face image", "imagequalityfront" { "qualityscores" { "textquality" { "valid" "yes", "score" "1 0" }, "brightness" { "valid" "yes", "score" "1 0" }, "sharpness" { "valid" "yes", "score" "1 0" }, "compressionquality" { "valid" "yes", "score" "0 67" } }, "score" "0 67", "summary" "accept", "msg" "done", "status" "200", "imagequality" "high" }, "imagequalityback" { "qualityscores" { "textquality" { "valid" "yes", "score" "1 0" }, "brightness" { "valid" "yes", "score" "1 0" }, "sharpness" { "valid" "yes", "score" "1 0" }, "compressionquality" { "valid" "yes", "score" "0 64" } }, "score" "0 64", "summary" "accept", "msg" "done", "status" "200", "imagequality" "high" } } } ouput mapping output data type description predictedidtypefront string predicted type of the id document front side predictedidtypeback string predicted type of the id document back side idexpired boolean indicates if the id document is expired faceurl string url to the extracted face image from the id document extractedfields object output data type description firstname string first name extracted from the id document lastname string last name extracted from the id document names string full name extracted from the id document address string address extracted from the id document number string document number extracted from the id document dob string date of birth extracted from the id document (format dd/mm/yyyy) issuingstate string issuing state or country of the id document expirydate string expiry date of the id document (format dd/mm/yyyy) nationality string nationality of the person as per the id document gender string gender of the person as per the id document imagequalityfront object output data type description textqualityvalid string validity of text quality (yes/no) for the front side of the id document textqualityscore string score of text quality for the front side of the id document brightnessvalid string validity of brightness (yes/no) for the front side of the id document brightnessscore string score of brightness for the front side of the id document sharpnessvalid string validity of sharpness (yes/no) for the front side of the id document sharpnessscore string score of sharpness for the front side of the id document compressionqualityvalid string validity of compression quality (yes/no) for the front side of the id document compressionqualityscore string score of compression quality for the front side of the id document qualityscore string overall quality score for the front side of the id document summary string summary of the quality assessment for the front side of the id document msg string message regarding the quality assessment for the front side of the id document status string status code for the quality assessment of the front side of the id document imagequality string overall image quality for the front side of the id document (e g , high) imagequalityback object output data type description textqualityvalid string validity of text quality (yes/no) for the back side of the id document textqualityscore string score of text quality for the back side of the id document brightnessvalid string validity of brightness (yes/no) for the back side of the id document brightnessscore string score of brightness for the back side of the id document sharpnessvalid string validity of sharpness (yes/no) for the back side of the id document sharpnessscore string score of sharpness for the back side of the id document compressionqualityvalid string validity of compression quality (yes/no) for the back side of the id document compressionqualityscore string score of compression quality for the back side of the id document qualityscore string overall quality score for the back side of the id document summary string summary of the quality assessment for the back side of the id document msg string message regarding the quality assessment for the back side of the id document status string status code for the quality assessment of the back side of the id document imagequality string overall image quality for the back side of the id document (e g , high) status codes 200 (valid passport id) { "results" { "predictedidtypefront" "passport", "predictedidtypeback" "passport side b", "idexpired" false, "extractedfields" { "firstname" "shivam", "lastname" "", "names" "shivam", "address" "", "number" "n939159", "dob" "24/01/1998", "issuingstate" "india", "expirydate" "07/07/2025", "nationality" "ind", "gender" "m", "additionaldata" { // this object changes based on the id given "documentname" "india passport (2013)", "dateofexpirycheckdigit" "5", "remainderterm" "12", "age" "26", "finalcheckdigit" "8", "mrzstrings" "p\<ind<\<shivam<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<^n0939159<1ind9801244m2507075<<<<<<<<<<<<<<<8", "dateofbirthcheckdigit" "4", "nationalitycode" "ind", "documentnumbercheckdigit" "1", "documentclasscode" "p", "optionaldata" "", "optionaldatacheckdigit" "", "mrztype" "id 3", "nationality" "indian", "dateofissue" "08/07/2015", "yearssinceissue" "8" } }, "faceurl" "url to the extracted face image", "imagequalityfront" { "qualityscores" { "textquality" { "valid" "yes", "score" "1 0" }, "brightness" { "valid" "yes", "score" "1 0" }, "sharpness" { "valid" "yes", "score" "1 0" }, "compressionquality" { "valid" "yes", "score" "0 67" } }, "score" "0 67", "summary" "accept", "msg" "done", "status" "200", "imagequality" "high" }, "imagequalityback" { "qualityscores" { "textquality" { "valid" "yes", "score" "1 0" }, "brightness" { "valid" "yes", "score" "1 0" }, "sharpness" { "valid" "yes", "score" "1 0" }, "compressionquality" { "valid" "yes", "score" "0 64" } }, "score" "0 64", "summary" "accept", "msg" "done", "status" "200", "imagequality" "high" } } } 200 (invalid passport id) { "error" { "name" "error", "message" "id type is not a valid passport", "status" 200, "reason" "error", "type" "ok", "statuscode" 200 } } 400 //if any of the required fields is missing { "error" { "name" "error", "message" "input validation error", "status" 400, "reason" "error", "type" "bad request", "statuscode" 400 } } //when input image quality threshold is higher than the output image quality { "error" { "name" "error", "message" "image quality threshold not met", "status" 400, "reason" "error", "type" "bad request", "statuscode" 400 } } //when the image link is not accessible (either expired or not a valid image url) { "error" { "name" "error", "message" "unprocessable image please try again with a different one", "status" 400, "reason" "error", "type" "bad request", "statuscode" 400 } } 409 //error in service from upstream { "error" { "reason" "error from upstream", "status" 409, "message" "unable to get response from upstream", "type" "conflict", "statuscode" 409, "name" "error" } } 500 { "error" { "name" "error", "status" 500, "message" "error", "reason" "error", "type" "internal server error", "statuscode" 500 } } 401 // auth token is invalid { "message" "invalid authentication credentials" } getting help please feel free to contact us if you have any questions, require clarification, or have ideas for how to make the documents or any of our services better you can reach out to us at help\@signzy com we strive to provide prompt and reliable assistance, ensuring your queries are addressed effectively we value your feedback and are committed to making your experience smooth and enjoyable our team is dedicated to assisting you with any needs you may have thank you for choosing our services we look forward to helping you!