{"note":"OpenAPI conversion -- returning structured metadata","name":"facecheck-id","description":"Facial Recognition Reverse Image Face Search API","version":"v1.02","base_url":"","endpoints":4,"raw":"@lap v0.3\n# Machine-readable API spec. Each @endpoint block is one API call.\n@api Facial Recognition Reverse Image Face Search API\n@version v1.02\n@auth ApiKey Authorization in header\n@endpoints 4\n@toc api(4)\n\n@endpoint POST /api/upload_pic\n@returns(200) {id_search: str?, message: str?, progress: int(int32)?, error: str?, code: str?, output: map{items: [map]?, tookSeconds: num(double)?, tookSecondsDownload: num(double)?, tookSecondsQueue: num(double)?, searchedFaces: int(int64)?, freeRam: num(double)?, demo: bool?, face_per_sec: int(int32)?, performance: str?, max_score: int(int32), images_in_bundle: int(int32), scaned_till_index: int(int64), type: int(int32), hasItems: bool}, input: [map]?, facemon_status: str?, facemon_last_scann: int(int64)?, was_updated: bool, hasEmptyImages: bool, new_seen_count: int(int32)} # OK\n\n@endpoint POST /api/delete_pic\n@desc Remove an image from a search request\n@optional {id_search: str, id_pic: str}\n@returns(200) {id_search: str?, message: str?, progress: int(int32)?, error: str?, code: str?, output: map{items: [map]?, tookSeconds: num(double)?, tookSecondsDownload: num(double)?, tookSecondsQueue: num(double)?, searchedFaces: int(int64)?, freeRam: num(double)?, demo: bool?, face_per_sec: int(int32)?, performance: str?, max_score: int(int32), images_in_bundle: int(int32), scaned_till_index: int(int64), type: int(int32), hasItems: bool}, input: [map]?, facemon_status: str?, facemon_last_scann: int(int64)?, was_updated: bool, hasEmptyImages: bool, new_seen_count: int(int32)} # OK\n\n@endpoint POST /api/info\n@desc Returns remaining search credits, search engine online status, and number of indexed faces\n@returns(200) {faces: int(int64)?, is_online: bool, remaining_credits: int(int32), has_credits_to_search: bool} # OK\n\n@endpoint POST /api/search\n@optional {id_search: str, with_progress: bool # true = return imediately with a progress. False waits until search is finished., id_captcha: str # captcha is not used, status_only: bool # true = don't submit a new search, demo: bool # true = searches only the first 100,000 faces, good for testing/debugging, shady_only: bool}\n@returns(200) {id_search: str?, message: str?, progress: int(int32)?, error: str?, code: str?, output: map{items: [map]?, tookSeconds: num(double)?, tookSecondsDownload: num(double)?, tookSecondsQueue: num(double)?, searchedFaces: int(int64)?, freeRam: num(double)?, demo: bool?, face_per_sec: int(int32)?, performance: str?, max_score: int(int32), images_in_bundle: int(int32), scaned_till_index: int(int64), type: int(int32), hasItems: bool}, input: [map]?, facemon_status: str?, facemon_last_scann: int(int64)?, was_updated: bool, hasEmptyImages: bool, new_seen_count: int(int32)} # OK\n\n@end\n"}