azurecognitivebinder v2.0.1
AzureCognitiveBinder
- A binder REST service for Azure Cognitive APIs.These Binder APIs can be called from both Mobile and Web applications using corresponding client libraries.
- Dockerfile is included which would help containerize the service and also can be used seamlessly with Azure Container Registry or Docker Cloud or running locally. This would help in local testing and then hosting in Azure as Web API (or any other hosting services)
- No need to send Storage account details as part of the request (although that option is open); these secured information can be in Azure Web API layer and service can read from process.env dictionary
- Server host address is kept at 0.0.0.0 - so that it can be accesses from containerized hosting solutions like Docker Swarm
API Endpoints:
Default
URL - https://<host_server_details> GET request body -
```
{
}
```
FACE APIs
URL - https://<host_server_details>/face//detect POST request body -
{ "faceURL" : <FACE_IMAGE_URL>, // OR, "imageData" : <BASE64_IMAGE_BYTES> "options": <OPTION> }
URL - https://<host_server_details>/face/find POST request body -
{ "faceId" : <FACE_IDENTIFIER>, "options": <OPTION> }
URL - https://<host_server_details>/face/group POST request body -
{ "faceIds" : [<FACE_IDENTIFIER>], "options": <OPTION> }
URL - https://<host_server_details>/face/identify POST request body -
{ "faceIds" : [<FACE_IDENTIFIER>], "personGroupId" : [<PERSON_GROUP_IDENTIFIER>], "options": <OPTION> }
URL - https://<host_server_details>/face/verify POST request body -
{ "faceId1" : <FACE_IDENTIFIER_1>, "faceId2" : <FACE_IDENTIFIER_2>, "options": <OPTION> }
URL - https://<host_server_details>/face/verify/personGroup POST request body -
{ "faceId" : <FACE_IDENTIFIER>, "personGroupId" : <PERSON_GROUP_IDENTIFIER>, "personId" : <PERSON_IDENTIFIER>, "options": <OPTION> }
URL - https://<host_server_details>/face/personGroup/create PUT request body -
{ "personGroupName" : <PERSON_GROUP_NAME>, "personGroupId" : <PERSON_GROUP_IDENTIFIER>, "options": <OPTION> }
URL - https://<host_server_details>/face/personGroup/update POST request body -
{ "personGroupId" : <PERSON_GROUP_IDENTIFIER>, "options": <OPTION> }
URL - https://<host_server_details>/face/personGroup/delete DELETE request body -
{ "personGroupId" : <PERSON_GROUP_IDENTIFIER>, "options": <OPTION> }
URL - https://<host_server_details>/face/personGroup/fetch POST request body -
{ "personGroupId" : <PERSON_GROUP_IDENTIFIER>, "options": <OPTION> }
URL - https://<host_server_details>/face/personGroup/list POST request body -
{ "options": <OPTION> }
URL - https://<host_server_details>/face/personGroup/train POST request body -
{ "personGroupId" : <PERSON_GROUP_IDENTIFIER>, "options": <OPTION> }
URL - https://<host_server_details>/face/personGroup/person/create PUT request body -
{ "personGroupId" : <PERSON_GROUP_IDENTIFIER>, "personName" : <PERSON_NAME>, "options": <OPTION> }
URL - https://<host_server_details>/face/personGroup/person/update POST request body -
{ "personGroupId" : <PERSON_GROUP_IDENTIFIER>, "personId" : <PERSON_IDENTIFIER>, "options": <OPTION> }
URL - https://<host_server_details>/face/personGroup/person/delete DELETE request body -
{ "personGroupId" : <PERSON_GROUP_IDENTIFIER>, "personId" : <PERSON_IDENTIFIER>, "options": <OPTION> }
URL - https://<host_server_details>/face/personGroup/person/fetch POST request body -
{ "personGroupId" : <PERSON_GROUP_IDENTIFIER>, "personId" : <PERSON_IDENTIFIER>, "options": <OPTION> }
URL - https://<host_server_details>/face/personGroup/person/list POST request body -
{ "personGroupId" : <PERSON_GROUP_IDENTIFIER>, "options": <OPTION> }
URL - https://<host_server_details>/face/personGroup/person/add PUT request body -
{ "personGroupId" : <PERSON_GROUP_IDENTIFIER>, "personId" : <PERSON_IDENTIFIER>, "targetFace" : <TARGET_FACE_IDENTIFIER>, "imageData" : <BASE64_IMAGE_BYTES>, "options": <OPTION> }
URL - https://<host_server_details>/face/add PUT request body -
{ "personGroupId" : <PERSON_GROUP_IDENTIFIER>, "personGroupName" : <PERSON_GROUP_NAME>, "options": <OPTION> }
URL - https://<host_server_details>/face/update POST request body -
{ "personGroupId" : <PERSON_GROUP_IDENTIFIER>, "personId" : <PERSON_IDENTIFIER>, "persistedFaceId" : <PERSISTENT_FACE_IDENTIFIER>, "options": <OPTION> }
URL - https://<host_server_details>/face/delete DELETE request body -
{ "personGroupId" : <PERSON_GROUP_IDENTIFIER>, "personId" : <PERSON_IDENTIFIER>, "persistedFaceId" : <PERSISTENT_FACE_IDENTIFIER>, "options": <OPTION> }
URL - https://<host_server_details>/face/fetch POST request body -
{ "personGroupId" : <PERSON_GROUP_IDENTIFIER>, "personId" : <PERSON_IDENTIFIER>, "persistedFaceId" : <PERSISTENT_FACE_IDENTIFIER>, "options": <OPTION> }
COMPUTERVISION APIs
URL - https://<host_server_details>/computerVision/ocr POST request body -
{ "detectOrientation" : <TRUE/FALSE>, "imageURL" : <IMAGE_URL>, // OR "imageData" : <BASE64_IMAGE_BYTES> "options": <OPTION> }
URL - https://<host_server_details>/computerVision/text POST request body -
{ "imageURL" : <IMAGE_URL>, // OR "imageData" : <BASE64_IMAGE_BYTES> "options": <OPTION> }
URL - https://<host_server_details>/computerVision/tags POST request body -
{ "imageURL" : <IMAGE_URL>, // OR "imageData" : <BASE64_IMAGE_BYTES> "options": <OPTION> }
URL - https://<host_server_details>/computerVision/thumbnails POST request body -
{ "imageWidth" : <IMAGE_WIDTH>, "imageHeight" : <IMAGE_HEIGHT>, "imageURL" : <IMAGE_URL>, // OR "imageData" : <BASE64_IMAGE_BYTES> "options": <OPTION> }
URL - https://<host_server_details>/computerVision/describe POST request body -
{ "imageURL" : <IMAGE_URL>, // OR "imageData" : <BASE64_IMAGE_BYTES> "options": <OPTION> }
URL - https://<host_server_details>/computerVision/analyze POST request body -
{ "imageURL" : <IMAGE_URL>, // OR "imageData" : <BASE64_IMAGE_BYTES> "options": <OPTION> }
TEXTANALYTICS APIs
URL - https://<host_server_details>/textAnalytics/language POST request body -
{ "input" : <LANGUAGE_INPUT>, "options": <OPTION> }
URL - https://<host_server_details>/textAnalytics/keyphrases POST request body -
{ "input" : <KEYPHRASE_INPUT>, "options": <OPTION> }
URL - https://<host_server_details>/textAnalytics/sentiment POST request body -
{ "input" : <SENTIMENT_INPUT>, "options": <OPTION> }