Smile ID Web API

Mark Straub
Published in
3 min readAug 12, 2019


Now it comes in gems and packages… and with free coffee.

ID Validation + Face Recognition in One API

Since founding Smile Identity 2.5 years ago we’ve worked hard to make really good software for identity verification in Africa.

But we’ve consistently heard our enterprise customers tell us they wanted… “One API that does everything.”

So today we’re announcing Smile Identity’s “Web API.”

Web API = ID Validation + Face Recognition

Web API allows you to use the key parts of our system in almost any user journey without changing your product’s existing UX/UI.

You can now verify a user-provided Selfie against the user’s photo on file inside any of following Government ID Authorities:

  • Nigeria: BVN, NIN, Passport (Drivers License & Voter ID coming soon)
  • Kenya: National ID, Alien Card, Passport
  • Ghana: SSNIT, Passport, Drivers License, Voter ID
  • Tanzania: NIDA (Coming soon)

And the best part about Web API is we built the integration so your engineers don’t have to, it’s just 2 lines of code.

Smile ID Web API is organized around REST principles but uses server side gems and packages to accelerate your integration. The code for the packages is open source. Our API accepts JSON-encoded request bodies, returns JSON-encoded responses, and uses standard HTTP response codes, authentication, and verbs.

To use our Web API integration method, download and install one of our open source packages in any of the following languages: Ruby, Java, Javascript (and coming soon PHP).

You can get the packages from commonly used package managers here:

Once you initialize a connection with us, you can start submitting jobs…
It’s that easy.

Click Here to get started today.

Read below to learn more about using Web API.

Already familiar with Smile ID Job Types?

Web API supports the following Smile ID Job Types:

  • Enroll with ID Number (Job Type 1) — validates ID # & matches face
  • Enroll with ID Card (Job Type 1) — matches ID card photo to face
  • Enroll without ID card (Job Type 4) — enrolls face of user
  • Authentication (Job Type 2) — matches new face against enrolled face
  • Update Photo (Job Type 8) — Updates enrolled face

Unfamiliar with Smile ID Job Types?

Here’s an explanation of each Smile ID Job Type:

  • Enroll with ID Number (Job Type 1)
    Upload any PNG/JPG photo along with an ID number and we will use that ID number to query the relevant ID authority, validate the number, and use face recognition to compare the provided PNG/JPG photo against the photo on file at that ID authority for that user.
  • Enroll with ID Card (Job Type 1)
    Upload any PNG/JPG photo along with an ID Card photo we will use use face recognition to compare the PNG/JPG photo to the face on the ID Card.
  • Enroll without ID (Job Type 4)
    Upload any PNG/JPG photo and we will check to ensure there is a face in the photo and perform other image quality checks based on your needs. We provide you a binary result: approved/rejected. If Approved, this creates an Enrolled Image on file for you to authenticate against.
  • Authentication (Job Type 2)
    Upload any PNG/JPG photo from an existing enrolled user and we use face recognition to check whether the new incoming photo matches the Enrolled Image on File for that user.
  • Update Photo (Job Type 8)
    Upload any PNG/JPG photo from an existing enrolled user and if it passes a face recognition authentication test (i.e. if its the same person), we will “update” the user’s Enrolled image on file with the new photo.

Bottomline: Do you want to use face recognition to power a wide variety of KYC and authentication use cases across different surfaces and environments?

Smile Identity’s Web API is the fastest and easiest way to do it.

Click here to sign up and get started.

Built with Purpose,
— The Smile ID Team



Mark Straub

CEO and Co-founder of @SmileIdentity, Co-Founder @khoslaimpact, Building things with purpose.