{"openapi":"3.2.0","info":{"title":"Random Identity Generator API","description":"Generate realistic fake identity profiles — names, addresses, contact info, credit cards, and internet data across en_US and fil_PH locales. Bulk mode up to 1,000 records. All data is synthetic test data.","version":"1.0.0"},"servers":[{"url":"https://identitygen.jojapi.net"}],"security":[{"ApiKeyAuth":[]}],"tags":[{"name":"identity"},{"name":"names"},{"name":"addresses"},{"name":"contact"},{"name":"financial"},{"name":"internet"},{"name":"demographics"}],"x-agent-commerce":{"catalog_url":"https://identitygen.jojapi.net/_jojapi/agent/plans","discovery_url":"https://identitygen.jojapi.net/.well-known/x402","directory_url":"https://agents.jojapi.net/apis/random-data-generator","docs":"https://docs.jojapi.com/consumers/agents"},"paths":{"/health":{"get":{"operationId":"get_health","summary":"Health","description":"Check the api health","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/locales":{"get":{"operationId":"get_locales","summary":"Locales","description":"Find the list of existing locales","responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{}}}}}}},"/api/v1/identity":{"get":{"operationId":"get_api_v1_identity","summary":"Get Identity","description":"Generate one complete fake identity profile, including name, gender, date of birth, age, SSN (format only), email, phone, username, address, company, occupation, credit card, IP address, and UUID. Filter by `gender`, `min_age`, and `max_age` (18–120); select locale with `locale` (`en_US` or `fil_PH`).","tags":["identity"],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"properties":{"first_name":{"type":"string","title":"First Name"},"last_name":{"type":"string","title":"Last Name"},"full_name":{"type":"string","title":"Full Name"},"gender":{"type":"string","title":"Gender"},"date_of_birth":{"type":"string","title":"Date Of Birth"},"age":{"type":"integer","title":"Age"},"ssn":{"type":"string","title":"Ssn"},"email":{"type":"string","title":"Email"},"phone":{"type":"string","title":"Phone"},"username":{"type":"string","title":"Username"},"address":{"properties":{"street":{"type":"string","title":"Street"},"city":{"type":"string","title":"City"},"state":{"type":"string","title":"State"},"state_abbr":{"type":"string","title":"State Abbr"},"zip_code":{"type":"string","title":"Zip Code"},"country":{"type":"string","title":"Country"},"formatted":{"type":"string","title":"Formatted"}},"type":"object","required":["street","city","state","state_abbr","zip_code","country","formatted"],"title":"Address"},"company":{"type":"string","title":"Company"},"occupation":{"type":"string","title":"Occupation"},"credit_card":{"properties":{"number":{"type":"string","title":"Number"},"expiry":{"type":"string","title":"Expiry"},"cvv":{"type":"string","title":"Cvv"},"type":{"type":"string","title":"Type"}},"type":"object","required":["number","expiry","cvv","type"],"title":"CreditCard"},"ip_address":{"type":"string","title":"Ip Address"},"uuid":{"type":"string","title":"Uuid"}},"type":"object","required":["first_name","last_name","full_name","gender","date_of_birth","age","ssn","email","phone","username","address","company","occupation","credit_card","ip_address","uuid"],"title":"FullIdentity"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"properties":{"detail":{"items":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"}}}}},"parameters":[{"name":"locale","in":"query","required":false,"schema":{"type":"string","title":"Locale","default":"en_US"}},{"name":"gender","in":"query","required":false,"schema":{"type":"string","title":"Gender"}},{"name":"min_age","in":"query","required":false,"schema":{"type":"integer","title":"Min Age","default":18}},{"name":"max_age","in":"query","required":false,"schema":{"type":"integer","title":"Max Age","default":80}}]}},"/api/v1/identity/bulk":{"get":{"operationId":"get_api_v1_identity_bulk","summary":"Get Identity Bulk","description":"Generate between 1 and 1,000 complete fake identity profiles in a single request. Accepts the same filters as `/identity` plus `count` (default 10, max 1000). Ideal for seeding databases and batch workflows.","tags":["identity"],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"properties":{"first_name":{"type":"string","title":"First Name"},"last_name":{"type":"string","title":"Last Name"},"full_name":{"type":"string","title":"Full Name"},"gender":{"type":"string","title":"Gender"},"date_of_birth":{"type":"string","title":"Date Of Birth"},"age":{"type":"integer","title":"Age"},"ssn":{"type":"string","title":"Ssn"},"email":{"type":"string","title":"Email"},"phone":{"type":"string","title":"Phone"},"username":{"type":"string","title":"Username"},"address":{"properties":{"street":{"type":"string","title":"Street"},"city":{"type":"string","title":"City"},"state":{"type":"string","title":"State"},"state_abbr":{"type":"string","title":"State Abbr"},"zip_code":{"type":"string","title":"Zip Code"},"country":{"type":"string","title":"Country"},"formatted":{"type":"string","title":"Formatted"}},"type":"object","required":["street","city","state","state_abbr","zip_code","country","formatted"],"title":"Address"},"company":{"type":"string","title":"Company"},"occupation":{"type":"string","title":"Occupation"},"credit_card":{"properties":{"number":{"type":"string","title":"Number"},"expiry":{"type":"string","title":"Expiry"},"cvv":{"type":"string","title":"Cvv"},"type":{"type":"string","title":"Type"}},"type":"object","required":["number","expiry","cvv","type"],"title":"CreditCard"},"ip_address":{"type":"string","title":"Ip Address"},"uuid":{"type":"string","title":"Uuid"}},"type":"object","required":["first_name","last_name","full_name","gender","date_of_birth","age","ssn","email","phone","username","address","company","occupation","credit_card","ip_address","uuid"],"title":"FullIdentity"},"title":"Response Get Identity Bulk Api V1 Identity Bulk Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"properties":{"detail":{"items":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"}}}}},"parameters":[{"name":"locale","in":"query","required":false,"schema":{"type":"string","title":"Locale","default":"en_US"}},{"name":"gender","in":"query","required":false,"schema":{"type":"string","title":"Gender"}},{"name":"min_age","in":"query","required":false,"schema":{"type":"integer","title":"Min Age","default":18}},{"name":"max_age","in":"query","required":false,"schema":{"type":"integer","title":"Max Age","default":80}},{"name":"count","in":"query","required":false,"schema":{"type":"integer","title":"Count","default":10}}]}},"/api/v1/names":{"get":{"operationId":"get_api_v1_names","summary":"Get Names","description":"Generate random first, last, and full names only. Filter by `gender` (`male`/`female`) and locale; use `count` (1–100) for multiple names.","tags":["names"],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"properties":{"first_name":{"type":"string","title":"First Name"},"last_name":{"type":"string","title":"Last Name"},"full_name":{"type":"string","title":"Full Name"},"gender":{"type":"string","title":"Gender"}},"type":"object","required":["first_name","last_name","full_name","gender"],"title":"NameResponse"},"title":"Response Get Names Api V1 Names Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"properties":{"detail":{"items":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"}}}}},"parameters":[{"name":"locale","in":"query","required":false,"schema":{"type":"string","title":"Locale","default":"en_US"}},{"name":"gender","in":"query","required":false,"schema":{"type":"string","title":"Gender"}},{"name":"count","in":"query","required":false,"schema":{"type":"integer","title":"Count","default":1}}]}},"/api/v1/addresses":{"get":{"operationId":"get_api_v1_addresses","summary":"Get Addresses","description":"Generate random street, city, state, state abbreviation, zip code, country, and a formatted one-line address. Select locale with `locale`; use `count` (1–100) for multiple addresses.","tags":["addresses"],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"properties":{"street":{"type":"string","title":"Street"},"city":{"type":"string","title":"City"},"state":{"type":"string","title":"State"},"state_abbr":{"type":"string","title":"State Abbr"},"zip_code":{"type":"string","title":"Zip Code"},"country":{"type":"string","title":"Country"},"formatted":{"type":"string","title":"Formatted"}},"type":"object","required":["street","city","state","state_abbr","zip_code","country","formatted"],"title":"AddressResponse"},"title":"Response Get Addresses Api V1 Addresses Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"properties":{"detail":{"items":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"}}}}},"parameters":[{"name":"locale","in":"query","required":false,"schema":{"type":"string","title":"Locale","default":"en_US"}},{"name":"count","in":"query","required":false,"schema":{"type":"integer","title":"Count","default":1}}]}},"/api/v1/contact":{"get":{"operationId":"get_api_v1_contact","summary":"Get Contact","description":"Generate contact information: a realistic email address, phone number formatted for the chosen locale, and a username. Filter by `gender` and locale; use `count` (1–100).","tags":["contact"],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"properties":{"email":{"type":"string","title":"Email"},"phone":{"type":"string","title":"Phone"},"username":{"type":"string","title":"Username"}},"type":"object","required":["email","phone","username"],"title":"ContactResponse"},"title":"Response Get Contact Api V1 Contact Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"properties":{"detail":{"items":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"}}}}},"parameters":[{"name":"locale","in":"query","required":false,"schema":{"type":"string","title":"Locale","default":"en_US"}},{"name":"gender","in":"query","required":false,"schema":{"type":"string","title":"Gender"}},{"name":"count","in":"query","required":false,"schema":{"type":"integer","title":"Count","default":1}}]}},"/api/v1/financial":{"get":{"operationId":"get_api_v1_financial","summary":"Get Financial","description":"Generate financial test data: a credit card (number, expiry, CVV, type — Luhn-format only, not a valid card), plus a bank account and routing number. Use `count` (1–100). Locale-independent.","tags":["financial"],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"properties":{"credit_card":{"properties":{"number":{"type":"string","title":"Number"},"expiry":{"type":"string","title":"Expiry"},"cvv":{"type":"string","title":"Cvv"},"type":{"type":"string","title":"Type"}},"type":"object","required":["number","expiry","cvv","type"],"title":"CreditCard"},"bank_account":{"type":"string","title":"Bank Account"},"routing_number":{"type":"string","title":"Routing Number"}},"type":"object","required":["credit_card","bank_account","routing_number"],"title":"FinancialResponse"},"title":"Response Get Financial Api V1 Financial Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"properties":{"detail":{"items":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"}}}}},"parameters":[{"name":"card_type","in":"query","required":false,"schema":{"type":"string","title":"Card Type","default":"visa"}},{"name":"count","in":"query","required":false,"schema":{"type":"integer","title":"Count","default":1}}]}},"/api/v1/internet":{"get":{"operationId":"get_api_v1_internet","summary":"Get Internet","description":"Generate internet/credential test data: IPv4, IPv6, MAC address, browser user-agent string, a random password, and a UUID. Use `count` (1–100). Locale-independent.","tags":["internet"],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"properties":{"ipv4":{"type":"string","title":"Ipv4"},"ipv6":{"type":"string","title":"Ipv6"},"mac_address":{"type":"string","title":"Mac Address"},"user_agent":{"type":"string","title":"User Agent"},"password":{"type":"string","title":"Password"},"uuid":{"type":"string","title":"Uuid"}},"type":"object","required":["ipv4","ipv6","mac_address","user_agent","password","uuid"],"title":"InternetResponse"},"title":"Response Get Internet Api V1 Internet Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"properties":{"detail":{"items":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"}}}}},"parameters":[{"name":"count","in":"query","required":false,"schema":{"type":"integer","title":"Count","default":1}}]}},"/api/v1/demographics":{"get":{"operationId":"get_api_v1_demographics","summary":"Get Demographics","description":"Generate demographic data only: gender, date of birth, age, occupation, and employer/company. Filter by `gender`, `min_age`, `max_age` (18–120), and locale; use `count` (1–100).","tags":["demographics"],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"type":"array","items":{"properties":{"gender":{"type":"string","title":"Gender"},"date_of_birth":{"type":"string","title":"Date Of Birth"},"age":{"type":"integer","title":"Age"},"occupation":{"type":"string","title":"Occupation"},"company":{"type":"string","title":"Company"}},"type":"object","required":["gender","date_of_birth","age","occupation","company"],"title":"DemographicsResponse"},"title":"Response Get Demographics Api V1 Demographics Get"}}}},"422":{"description":"Validation Error","content":{"application/json":{"schema":{"properties":{"detail":{"items":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"},"input":{"title":"Input"},"ctx":{"type":"object","title":"Context"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"}}}}},"parameters":[{"name":"locale","in":"query","required":false,"schema":{"type":"string","title":"Locale","default":"en_US"}},{"name":"gender","in":"query","required":false,"schema":{"type":"string","title":"Gender"}},{"name":"min_age","in":"query","required":false,"schema":{"type":"integer","title":"Min Age","default":18}},{"name":"max_age","in":"query","required":false,"schema":{"type":"integer","title":"Max Age","default":80}},{"name":"count","in":"query","required":false,"schema":{"type":"integer","title":"Count","default":1}}]}}},"components":{"securitySchemes":{"ApiKeyAuth":{"type":"apiKey","in":"header","name":"X-JoJAPI-Key","description":"Your JoJ API key."}}}}