{"openapi":"3.1.0","info":{"title":"pawaPass API","version":"1.0.0"},"components":{"securitySchemes":{"bearerAuth":{"type":"http","scheme":"bearer","description":"Bearer token for authentication. See [Authentication](/authentication)."}},"schemas":{}},"paths":{"/verifications/":{"post":{"operationId":"createVerification","tags":["verification"],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["externalId","requirements","successUrl","errorUrl","supportUrl"],"properties":{"externalId":{"minLength":1,"format":"no-null-bytes","description":"Your unique identifier for this user/verification","type":"string","example":"user-zm-98765"},"country":{"enum":["AO","BJ","CM","CD","CG","GH","KE","LS","LR","MW","ML","MZ","NG","RW","SL","TZ","TG","UG","ZM"],"description":"ISO country code. See [Supported countries](/supported-countries) for valid codes.","type":"string","example":"ZM"},"phoneNo":{"format":"no-null-bytes","description":"Optional phone number. If not provided, extracted from metadata.","type":"string","example":"+260971234567"},"requirements":{"minItems":1,"description":"Array of verification requirements. See [Requirements](/requirements) for workflow examples.","type":"array","items":{"type":"object","required":["type"],"properties":{"type":{"enum":["FACE_SCAN","DOCUMENT_SCAN"],"description":"Type of verification requirement (DOCUMENT_SCAN, FACE_SCAN, etc.)","type":"string"},"options":{"additionalProperties":{},"description":"Optional configuration for this requirement","type":"object","properties":{"previousVerificationId":{"description":"ID of a past approved verification to match against (face-only re-verification)","type":"string","example":"aB1cD2eF"}}}}},"example":[{"type":"DOCUMENT_SCAN"},{"type":"FACE_SCAN"}]},"metadata":{"description":"Custom key-value data to associate with the verification. Stored and returned in responses and webhooks.","type":"object","additionalProperties":{},"example":{"reason":"kyc-onboarding","channel":"mobile-app","department":"compliance"}},"successUrl":{"format":"uri","pattern":"^https?://","description":"URL to redirect user after successful verification completion","type":"string","example":"https://your-website.com/success"},"errorUrl":{"format":"uri","pattern":"^https?://","description":"URL to redirect user if verification fails or encounters an error","type":"string","example":"https://your-website.com/error"},"supportUrl":{"format":"uri","pattern":"^https?://","description":"URL where user can get support or help during verification","type":"string","example":"https://your-website.com/support"},"expiresAt":{"format":"date-time","description":"Optional expiration date for this verification session (ISO 8601 format)","type":"string","example":"2025-08-27T09:00:00.000Z"},"createdBy":{"format":"no-null-bytes","description":"Optional email/identifier of the person creating this verification","type":"string","example":"admin@your-company.com"}}}}}},"security":[{"bearerAuth":[]}],"responses":{"201":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","required":["id","externalId","country","phoneNo","requirements","url","status","metadata","successUrl","errorUrl","supportUrl","identityDocument","faceScan","reviewResult","createdBy","expiresAt","createdAt","updatedAt"],"properties":{"id":{"description":"Verification ID","type":"string","example":"aB1cD2eF"},"externalId":{"description":"Your external identifier for this verification","type":"string","example":"user-zm-98765"},"country":{"description":"ISO country code associated with this verification","anyOf":[{"enum":["AO","BJ","CM","CD","CG","GH","KE","LS","LR","MW","ML","MZ","NG","RW","SL","TZ","TG","UG","ZM"],"type":"string"},{"type":"null"}],"example":"ZM"},"phoneNo":{"description":"Phone number associated with this verification","anyOf":[{"type":"string"},{"type":"null"}],"example":"+260971234567"},"requirements":{"description":"Verification steps the user must complete. See [Requirements](/requirements) for workflow examples.","type":"array","items":{"type":"object","required":["type"],"properties":{"type":{"enum":["FACE_SCAN","DOCUMENT_SCAN"],"type":"string"},"options":{"type":"object","additionalProperties":{}}}},"example":[{"type":"DOCUMENT_SCAN"},{"type":"FACE_SCAN"}]},"url":{"description":"URL where the user should complete the verification","type":"string","example":"https://app.pawapass.com/your-company/aB1cD2eF"},"status":{"enum":["CREATED","STARTED","EXPIRED","USER_DATA_COLLECTED","REVIEW","APPROVED","DECLINED"],"description":"Current status. See [Verification flow](/verification-flow) for lifecycle.","type":"string","example":"CREATED"},"metadata":{"description":"Custom metadata provided during verification creation","anyOf":[{},{"type":"null"}],"example":{"reason":"kyc-onboarding","channel":"mobile-app","department":"compliance"}},"successUrl":{"description":"URL to redirect user after successful verification","type":"string","example":"https://your-website.com/success"},"errorUrl":{"description":"URL to redirect user if verification fails","type":"string","example":"https://your-website.com/error"},"supportUrl":{"description":"URL where user can get support","type":"string","example":"https://your-website.com/support"},"identityDocument":{"description":"Extracted identity document data. Null if not yet available","anyOf":[{"type":"object","required":["type","country","serialNo","nationalNo","firstName","lastName","dateOfBirth","placeOfBirth","nationality","expiryAt","issuedAt","issuingAuthority","placeOfIssue"],"properties":{"type":{"description":"The type of the identity document","examples":["NATIONAL_ID"],"anyOf":[{"enum":["PASSPORT","NATIONAL_ID","DRIVER_LICENSE","REFUGEE_ID","VOTER_ID","RESIDENCE_PERMIT"],"type":"string"},{"type":"null"}]},"country":{"description":"The ISO code of the country that issued the document","examples":["ZM"],"anyOf":[{"enum":["AO","BJ","CM","CD","CG","GH","KE","LS","LR","MW","ML","MZ","NG","RW","SL","TZ","TG","UG","ZM"],"type":"string"},{"type":"null"}]},"serialNo":{"description":"The serial number of the identity document","examples":["9876543/21/1"],"anyOf":[{"type":"string"},{"type":"null"}]},"nationalNo":{"description":"The national identification number","examples":["Z12345678"],"anyOf":[{"type":"string"},{"type":"null"}]},"firstName":{"description":"The first name as extracted from the document","examples":["Tisa"],"anyOf":[{"type":"string"},{"type":"null"}]},"lastName":{"description":"The last name as extracted from the document","examples":["Banda"],"anyOf":[{"type":"string"},{"type":"null"}]},"dateOfBirth":{"description":"The date of birth in YYYY-MM-DD format","examples":["1997-05-10"],"anyOf":[{"type":"string"},{"type":"null"}]},"placeOfBirth":{"description":"The place of birth as listed on the document","examples":["Lusaka"],"anyOf":[{"type":"string"},{"type":"null"}]},"nationality":{"description":"The nationality as listed on the document","examples":["ZM"],"anyOf":[{"type":"string"},{"type":"null"}]},"expiryAt":{"description":"The expiration date of the document in YYYY-MM-DD format","examples":["2032-05-09"],"anyOf":[{"type":"string"},{"type":"null"}]},"issuedAt":{"description":"The date the document was issued in YYYY-MM-DD format","examples":["2022-05-10"],"anyOf":[{"type":"string"},{"type":"null"}]},"issuingAuthority":{"description":"The authority that issued the document","examples":["Republic of Zambia"],"anyOf":[{"type":"string"},{"type":"null"}]},"placeOfIssue":{"description":"The location where the document was issued","examples":["Lusaka"],"anyOf":[{"type":"string"},{"type":"null"}]},"createdAt":{"format":"date-time","description":"Creation date of the document data","type":"string"},"updatedAt":{"format":"date-time","description":"Date of the last update to the document data","type":"string"}}},{"type":"null"}]},"faceScan":{"description":"Face scan results. Null if not yet available","anyOf":[{"type":"object","required":["ageEstimation","createdAt","updatedAt"],"properties":{"ageEstimation":{"description":"Estimated age range from face scan","examples":["OVER_18"],"anyOf":[{"enum":["UNKNOWN","UNDER_8","OVER_8","OVER_13","OVER_16","OVER_18","OVER_21","OVER_25","OVER_30"],"type":"string"},{"type":"null"}]},"createdAt":{"format":"date-time","description":"Creation date of the face scan data","examples":["2025-08-20T09:00:00.000Z"],"type":"string"},"updatedAt":{"format":"date-time","description":"Date of the last update to the face scan data","examples":["2025-08-20T09:00:00.000Z"],"type":"string"}}},{"type":"null"}]},"reviewResult":{"description":"Review outcome details. Null when verification has not been reviewed or no review reason is available.","anyOf":[{"type":"object","required":["reason"],"properties":{"reason":{"description":"Mapped review outcome reason","anyOf":[{"type":"string","enum":["CAPTURE_ISSUE"]},{"type":"string","enum":["DOCUMENT_VALIDITY"]},{"type":"string","enum":["IMAGE_QUALITY"]},{"type":"string","enum":["GENERIC"]}]}}},{"type":"null"}]},"createdBy":{"description":"Identifier of the person/system that created the verification","anyOf":[{"type":"string"},{"type":"null"}],"example":"admin@your-company.com"},"expiresAt":{"format":"date-time","description":"Expiration date of the verification session","type":"string","example":"2025-08-27T09:00:00.000Z"},"createdAt":{"format":"date-time","description":"Creation date of the verification","type":"string","example":"2025-08-20T09:00:00.000Z"},"updatedAt":{"format":"date-time","description":"Date of the last update","type":"string","example":"2025-08-20T09:00:00.000Z"}}}}}},"400":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","required":["statusCode","code","message"],"properties":{"statusCode":{"type":"number","enum":[400]},"code":{"description":"Error code","type":"string","example":"VALIDATION_ERROR"},"message":{"description":"Human-readable error message","type":"string","example":"Input data is invalid. Please check the details."},"details":{"description":"Field-specific validation errors","type":"object","additionalProperties":{"type":"string"},"example":{"externalId":"externalId should not be empty","requirements":"requirements must contain at least 1 elements"}}}}}}},"401":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","required":["statusCode","code","message"],"properties":{"statusCode":{"type":"number","enum":[401]},"code":{"description":"Error code","type":"string","example":"UNAUTHORIZED_ERROR"},"message":{"description":"Error message","type":"string","example":"Unauthorized"}}}}}}}},"get":{"operationId":"listVerifications","tags":["verification"],"parameters":[{"schema":{"minimum":0,"default":0,"type":"number"},"in":"query","name":"page","required":false,"description":"The page number to retrieve"},{"schema":{"minimum":1,"maximum":50,"default":15,"type":"number"},"in":"query","name":"limit","required":false,"description":"The number of items to return per page"},{"schema":{"type":"string"},"example":"aB1cD2eF","in":"query","name":"id","required":false,"description":"Filter by verification ID"},{"schema":{"type":"string"},"example":"user-zm-98765","in":"query","name":"externalId","required":false,"description":"Filter by your external ID"},{"schema":{"type":"array","items":{"enum":["CREATED","STARTED","EXPIRED","USER_DATA_COLLECTED","REVIEW","APPROVED","DECLINED"],"type":"string"}},"example":["APPROVED","DECLINED"],"in":"query","name":"statuses","required":false,"description":"Filter by status. Supports multiple values (e.g., ?statuses=APPROVED&statuses=DECLINED)"},{"schema":{"format":"date-time","type":"string"},"example":"2025-01-01T00:00:00.000Z","in":"query","name":"fromCreatedAt","required":false,"description":"Filter verifications created from this date (inclusive). Format ISO 8601"},{"schema":{"format":"date-time","type":"string"},"example":"2025-12-31T23:59:59.000Z","in":"query","name":"toCreatedAt","required":false,"description":"Filter verifications created up to this date (inclusive). Format ISO 8601"}],"security":[{"bearerAuth":[]}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","required":["items","count"],"properties":{"items":{"type":"array","items":{"type":"object","required":["id","externalId","country","phoneNo","requirements","url","status","metadata","successUrl","errorUrl","supportUrl","identityDocument","faceScan","reviewResult","createdBy","expiresAt","createdAt","updatedAt"],"properties":{"id":{"description":"Verification ID","type":"string","example":"aB1cD2eF"},"externalId":{"description":"Your external identifier for this verification","type":"string","example":"user-zm-98765"},"country":{"description":"ISO country code associated with this verification","anyOf":[{"enum":["AO","BJ","CM","CD","CG","GH","KE","LS","LR","MW","ML","MZ","NG","RW","SL","TZ","TG","UG","ZM"],"type":"string"},{"type":"null"}],"example":"ZM"},"phoneNo":{"description":"Phone number associated with this verification","anyOf":[{"type":"string"},{"type":"null"}],"example":"+260971234567"},"requirements":{"description":"Verification steps the user must complete. See [Requirements](/requirements) for workflow examples.","type":"array","items":{"type":"object","required":["type"],"properties":{"type":{"enum":["FACE_SCAN","DOCUMENT_SCAN"],"type":"string"},"options":{"type":"object","additionalProperties":{}}}},"example":[{"type":"DOCUMENT_SCAN"},{"type":"FACE_SCAN"}]},"url":{"description":"URL where the user should complete the verification","type":"string","example":"https://app.pawapass.com/your-company/aB1cD2eF"},"status":{"enum":["CREATED","STARTED","EXPIRED","USER_DATA_COLLECTED","REVIEW","APPROVED","DECLINED"],"description":"Current status. See [Verification flow](/verification-flow) for lifecycle.","type":"string","example":"CREATED"},"metadata":{"description":"Custom metadata provided during verification creation","anyOf":[{},{"type":"null"}],"example":{"reason":"kyc-onboarding","channel":"mobile-app","department":"compliance"}},"successUrl":{"description":"URL to redirect user after successful verification","type":"string","example":"https://your-website.com/success"},"errorUrl":{"description":"URL to redirect user if verification fails","type":"string","example":"https://your-website.com/error"},"supportUrl":{"description":"URL where user can get support","type":"string","example":"https://your-website.com/support"},"identityDocument":{"description":"Extracted identity document data. Null if not yet available","anyOf":[{"type":"object","required":["type","country","serialNo","nationalNo","firstName","lastName","dateOfBirth","placeOfBirth","nationality","expiryAt","issuedAt","issuingAuthority","placeOfIssue"],"properties":{"type":{"description":"The type of the identity document","examples":["NATIONAL_ID"],"anyOf":[{"enum":["PASSPORT","NATIONAL_ID","DRIVER_LICENSE","REFUGEE_ID","VOTER_ID","RESIDENCE_PERMIT"],"type":"string"},{"type":"null"}]},"country":{"description":"The ISO code of the country that issued the document","examples":["ZM"],"anyOf":[{"enum":["AO","BJ","CM","CD","CG","GH","KE","LS","LR","MW","ML","MZ","NG","RW","SL","TZ","TG","UG","ZM"],"type":"string"},{"type":"null"}]},"serialNo":{"description":"The serial number of the identity document","examples":["9876543/21/1"],"anyOf":[{"type":"string"},{"type":"null"}]},"nationalNo":{"description":"The national identification number","examples":["Z12345678"],"anyOf":[{"type":"string"},{"type":"null"}]},"firstName":{"description":"The first name as extracted from the document","examples":["Tisa"],"anyOf":[{"type":"string"},{"type":"null"}]},"lastName":{"description":"The last name as extracted from the document","examples":["Banda"],"anyOf":[{"type":"string"},{"type":"null"}]},"dateOfBirth":{"description":"The date of birth in YYYY-MM-DD format","examples":["1997-05-10"],"anyOf":[{"type":"string"},{"type":"null"}]},"placeOfBirth":{"description":"The place of birth as listed on the document","examples":["Lusaka"],"anyOf":[{"type":"string"},{"type":"null"}]},"nationality":{"description":"The nationality as listed on the document","examples":["ZM"],"anyOf":[{"type":"string"},{"type":"null"}]},"expiryAt":{"description":"The expiration date of the document in YYYY-MM-DD format","examples":["2032-05-09"],"anyOf":[{"type":"string"},{"type":"null"}]},"issuedAt":{"description":"The date the document was issued in YYYY-MM-DD format","examples":["2022-05-10"],"anyOf":[{"type":"string"},{"type":"null"}]},"issuingAuthority":{"description":"The authority that issued the document","examples":["Republic of Zambia"],"anyOf":[{"type":"string"},{"type":"null"}]},"placeOfIssue":{"description":"The location where the document was issued","examples":["Lusaka"],"anyOf":[{"type":"string"},{"type":"null"}]},"createdAt":{"format":"date-time","description":"Creation date of the document data","type":"string"},"updatedAt":{"format":"date-time","description":"Date of the last update to the document data","type":"string"}}},{"type":"null"}]},"faceScan":{"description":"Face scan results. Null if not yet available","anyOf":[{"type":"object","required":["ageEstimation","createdAt","updatedAt"],"properties":{"ageEstimation":{"description":"Estimated age range from face scan","examples":["OVER_18"],"anyOf":[{"enum":["UNKNOWN","UNDER_8","OVER_8","OVER_13","OVER_16","OVER_18","OVER_21","OVER_25","OVER_30"],"type":"string"},{"type":"null"}]},"createdAt":{"format":"date-time","description":"Creation date of the face scan data","examples":["2025-08-20T09:00:00.000Z"],"type":"string"},"updatedAt":{"format":"date-time","description":"Date of the last update to the face scan data","examples":["2025-08-20T09:00:00.000Z"],"type":"string"}}},{"type":"null"}]},"reviewResult":{"description":"Review outcome details. Null when verification has not been reviewed or no review reason is available.","anyOf":[{"type":"object","required":["reason"],"properties":{"reason":{"description":"Mapped review outcome reason","anyOf":[{"type":"string","enum":["CAPTURE_ISSUE"]},{"type":"string","enum":["DOCUMENT_VALIDITY"]},{"type":"string","enum":["IMAGE_QUALITY"]},{"type":"string","enum":["GENERIC"]}]}}},{"type":"null"}]},"createdBy":{"description":"Identifier of the person/system that created the verification","anyOf":[{"type":"string"},{"type":"null"}],"example":"admin@your-company.com"},"expiresAt":{"format":"date-time","description":"Expiration date of the verification session","type":"string","example":"2025-08-27T09:00:00.000Z"},"createdAt":{"format":"date-time","description":"Creation date of the verification","type":"string","example":"2025-08-20T09:00:00.000Z"},"updatedAt":{"format":"date-time","description":"Date of the last update","type":"string","example":"2025-08-20T09:00:00.000Z"}}}},"count":{"description":"The total number of items matching the filters","type":"number"}}}}}},"400":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","required":["statusCode","code","message"],"properties":{"statusCode":{"type":"number","enum":[400]},"code":{"description":"Error code","type":"string","example":"VALIDATION_ERROR"},"message":{"description":"Human-readable error message","type":"string","example":"Input data is invalid. Please check the details."},"details":{"description":"Field-specific validation errors","type":"object","additionalProperties":{"type":"string"},"example":{"externalId":"externalId should not be empty","requirements":"requirements must contain at least 1 elements"}}}}}}},"401":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","required":["statusCode","code","message"],"properties":{"statusCode":{"type":"number","enum":[401]},"code":{"description":"Error code","type":"string","example":"UNAUTHORIZED_ERROR"},"message":{"description":"Error message","type":"string","example":"Unauthorized"}}}}}}}}},"/verifications/{id}":{"get":{"operationId":"getVerification","tags":["verification"],"parameters":[{"schema":{"type":"string"},"example":"aB1cD2eF","in":"path","name":"id","required":true,"description":"The verification ID"}],"security":[{"bearerAuth":[]}],"responses":{"200":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","required":["id","externalId","country","phoneNo","requirements","url","status","metadata","successUrl","errorUrl","supportUrl","identityDocument","faceScan","reviewResult","createdBy","expiresAt","createdAt","updatedAt"],"properties":{"id":{"description":"Verification ID","type":"string","example":"aB1cD2eF"},"externalId":{"description":"Your external identifier for this verification","type":"string","example":"user-zm-98765"},"country":{"description":"ISO country code associated with this verification","anyOf":[{"enum":["AO","BJ","CM","CD","CG","GH","KE","LS","LR","MW","ML","MZ","NG","RW","SL","TZ","TG","UG","ZM"],"type":"string"},{"type":"null"}],"example":"ZM"},"phoneNo":{"description":"Phone number associated with this verification","anyOf":[{"type":"string"},{"type":"null"}],"example":"+260971234567"},"requirements":{"description":"Verification steps the user must complete. See [Requirements](/requirements) for workflow examples.","type":"array","items":{"type":"object","required":["type"],"properties":{"type":{"enum":["FACE_SCAN","DOCUMENT_SCAN"],"type":"string"},"options":{"type":"object","additionalProperties":{}}}},"example":[{"type":"DOCUMENT_SCAN"},{"type":"FACE_SCAN"}]},"url":{"description":"URL where the user should complete the verification","type":"string","example":"https://app.pawapass.com/your-company/aB1cD2eF"},"status":{"enum":["CREATED","STARTED","EXPIRED","USER_DATA_COLLECTED","REVIEW","APPROVED","DECLINED"],"description":"Current status. See [Verification flow](/verification-flow) for lifecycle.","type":"string","example":"CREATED"},"metadata":{"description":"Custom metadata provided during verification creation","anyOf":[{},{"type":"null"}],"example":{"reason":"kyc-onboarding","channel":"mobile-app","department":"compliance"}},"successUrl":{"description":"URL to redirect user after successful verification","type":"string","example":"https://your-website.com/success"},"errorUrl":{"description":"URL to redirect user if verification fails","type":"string","example":"https://your-website.com/error"},"supportUrl":{"description":"URL where user can get support","type":"string","example":"https://your-website.com/support"},"identityDocument":{"description":"Extracted identity document data. Null if not yet available","anyOf":[{"type":"object","required":["type","country","serialNo","nationalNo","firstName","lastName","dateOfBirth","placeOfBirth","nationality","expiryAt","issuedAt","issuingAuthority","placeOfIssue"],"properties":{"type":{"description":"The type of the identity document","examples":["NATIONAL_ID"],"anyOf":[{"enum":["PASSPORT","NATIONAL_ID","DRIVER_LICENSE","REFUGEE_ID","VOTER_ID","RESIDENCE_PERMIT"],"type":"string"},{"type":"null"}]},"country":{"description":"The ISO code of the country that issued the document","examples":["ZM"],"anyOf":[{"enum":["AO","BJ","CM","CD","CG","GH","KE","LS","LR","MW","ML","MZ","NG","RW","SL","TZ","TG","UG","ZM"],"type":"string"},{"type":"null"}]},"serialNo":{"description":"The serial number of the identity document","examples":["9876543/21/1"],"anyOf":[{"type":"string"},{"type":"null"}]},"nationalNo":{"description":"The national identification number","examples":["Z12345678"],"anyOf":[{"type":"string"},{"type":"null"}]},"firstName":{"description":"The first name as extracted from the document","examples":["Tisa"],"anyOf":[{"type":"string"},{"type":"null"}]},"lastName":{"description":"The last name as extracted from the document","examples":["Banda"],"anyOf":[{"type":"string"},{"type":"null"}]},"dateOfBirth":{"description":"The date of birth in YYYY-MM-DD format","examples":["1997-05-10"],"anyOf":[{"type":"string"},{"type":"null"}]},"placeOfBirth":{"description":"The place of birth as listed on the document","examples":["Lusaka"],"anyOf":[{"type":"string"},{"type":"null"}]},"nationality":{"description":"The nationality as listed on the document","examples":["ZM"],"anyOf":[{"type":"string"},{"type":"null"}]},"expiryAt":{"description":"The expiration date of the document in YYYY-MM-DD format","examples":["2032-05-09"],"anyOf":[{"type":"string"},{"type":"null"}]},"issuedAt":{"description":"The date the document was issued in YYYY-MM-DD format","examples":["2022-05-10"],"anyOf":[{"type":"string"},{"type":"null"}]},"issuingAuthority":{"description":"The authority that issued the document","examples":["Republic of Zambia"],"anyOf":[{"type":"string"},{"type":"null"}]},"placeOfIssue":{"description":"The location where the document was issued","examples":["Lusaka"],"anyOf":[{"type":"string"},{"type":"null"}]},"createdAt":{"format":"date-time","description":"Creation date of the document data","type":"string"},"updatedAt":{"format":"date-time","description":"Date of the last update to the document data","type":"string"}}},{"type":"null"}]},"faceScan":{"description":"Face scan results. Null if not yet available","anyOf":[{"type":"object","required":["ageEstimation","createdAt","updatedAt"],"properties":{"ageEstimation":{"description":"Estimated age range from face scan","examples":["OVER_18"],"anyOf":[{"enum":["UNKNOWN","UNDER_8","OVER_8","OVER_13","OVER_16","OVER_18","OVER_21","OVER_25","OVER_30"],"type":"string"},{"type":"null"}]},"createdAt":{"format":"date-time","description":"Creation date of the face scan data","examples":["2025-08-20T09:00:00.000Z"],"type":"string"},"updatedAt":{"format":"date-time","description":"Date of the last update to the face scan data","examples":["2025-08-20T09:00:00.000Z"],"type":"string"}}},{"type":"null"}]},"reviewResult":{"description":"Review outcome details. Null when verification has not been reviewed or no review reason is available.","anyOf":[{"type":"object","required":["reason"],"properties":{"reason":{"description":"Mapped review outcome reason","anyOf":[{"type":"string","enum":["CAPTURE_ISSUE"]},{"type":"string","enum":["DOCUMENT_VALIDITY"]},{"type":"string","enum":["IMAGE_QUALITY"]},{"type":"string","enum":["GENERIC"]}]}}},{"type":"null"}]},"createdBy":{"description":"Identifier of the person/system that created the verification","anyOf":[{"type":"string"},{"type":"null"}],"example":"admin@your-company.com"},"expiresAt":{"format":"date-time","description":"Expiration date of the verification session","type":"string","example":"2025-08-27T09:00:00.000Z"},"createdAt":{"format":"date-time","description":"Creation date of the verification","type":"string","example":"2025-08-20T09:00:00.000Z"},"updatedAt":{"format":"date-time","description":"Date of the last update","type":"string","example":"2025-08-20T09:00:00.000Z"}}}}}},"400":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","required":["statusCode","code","message"],"properties":{"statusCode":{"type":"number","enum":[400]},"code":{"description":"Error code","type":"string","example":"VALIDATION_ERROR"},"message":{"description":"Human-readable error message","type":"string","example":"Input data is invalid. Please check the details."},"details":{"description":"Field-specific validation errors","type":"object","additionalProperties":{"type":"string"},"example":{"externalId":"externalId should not be empty","requirements":"requirements must contain at least 1 elements"}}}}}}},"401":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","required":["statusCode","code","message"],"properties":{"statusCode":{"type":"number","enum":[401]},"code":{"description":"Error code","type":"string","example":"UNAUTHORIZED_ERROR"},"message":{"description":"Error message","type":"string","example":"Unauthorized"}}}}}},"404":{"description":"Default Response","content":{"application/json":{"schema":{"type":"object","required":["statusCode","code","message"],"properties":{"statusCode":{"type":"number","enum":[404]},"code":{"description":"Error code","type":"string","example":"NOT_FOUND_ERROR"},"message":{"description":"Error message","type":"string","example":"Not found"}}}}}}}}}},"servers":[{"url":"https://api.pawapass.com/v2","description":"Production"},{"url":"https://api-sandbox1.pawapass.com/v2","description":"Sandbox"}],"tags":[{"name":"verification"}]}