Appearance
Integration Workflows
The business guides on the IDPhoto.ai blog describe the operating decision. Request fields, hosts, and sample calls live in this documentation.
Starting from $0.20 per photo. The catalog covers 300+ photo specifications across 200+ countries. The published sample list is on Spec Code.
Choose a guide
| Workflow | Documentation |
|---|---|
| Final photo in one server call, or a watermarked preview before you release the file | Passport Photo API |
| Look up a document specification instead of hard-coding a size | Spec Code and the specification section of the Passport Photo API |
| Turn a failed quality check into a retake | Issue Codes and Common Mistakes |
| Keep the portrait in your own storage | Data Privacy. Base64 delivery stores nothing on the service. A temporary URL is kept for 2 hours to 14 days. |
| UK digital photo code for a photograph that meets GOV.UK photo rules | Passport Photo Code API |
| Background, lighting, face match, or a portrait correction where that document allows it | Fix Passport Photo API and the other supporting API pages in the sidebar |
| Server-side Python | Sample Python Code |
Keep the API key and secret on your server. US and EU hosts are documented on the Passport Photo API page. Other regions are available per request. Use one region for the whole preview flow.
A clean quality check is not an acceptance decision by a government authority. US and UK passport photographs must not be digitally altered. Do not use the Fix Passport Photo API on those documents. Say that a UK photograph meets GOV.UK photo rules. Do not say it is approved or guaranteed.
Minimal server call
This is the same direct-result shape as the Passport Photo API. Replace the placeholders from your server environment. Do not ship the secret to a browser or a mobile binary, and do not log the portrait.
bash
curl -sS -X POST "https://api-us.idphotoapp.com/v2/makeIdPhoto" \
-H "Content-Type: application/json" \
-d '{
"apiKey": "YOUR_API_KEY",
"apiSecret": "YOUR_API_SECRET",
"imageBase64": "BASE64_IMAGE",
"specCode": "us-passport",
"outputFormat": "IMAGE_BASE64"
}'outputFormat of IMAGE_BASE64 returns the file in the response so you can store it yourself. Omit it when a temporary URL is acceptable. specCode must be a code on the account. Query the specification endpoints rather than copying the sample table into your client.
For questions about volume, a missing specification, Workday or SAP SuccessFactors, print and mailing, or another region, contact support@idphoto.ai.
