class OxfordFaceApi::Person
Public Class Methods
# File lib/oxford/face/api.rb, line 145 def initialize raise if OxfordFaceApi.API_KEY.empty? @client = HttpClient.new(OxfordFaceApi.API_KEY) end
Public Instance Methods
Add a Person
Face
POST api.projectoxford.ai/face/v1.0/persongroups/{personGroupId}/persons/{personId}/persistedFaces[?userData][&targetFace]
# File lib/oxford/face/api.rb, line 152 def add_face(group_id, person_id, url, user_data = "", target_face = "") params = { url: url } @client.post("/persongroups/#{group_id}/persons/#{person_id}/persistedFaces?userData=#{user_data}&targetFace=#{target_face}", params) end
List Persons in a Person
Group GET api.projectoxford.ai/face/v1.0/persongroups/{personGroupId}/persons
# File lib/oxford/face/api.rb, line 197 def all(group_id) @client.get("/persongroups/#{group_id}/persons") end
Create a Person
POST api.projectoxford.ai/face/v1.0/persongroups/{personGroupId}/persons
# File lib/oxford/face/api.rb, line 161 def create(group_id, name, user_data = "") params = { name: name, userData: user_data } @client.post("/persongroups/#{group_id}/persons", params) end
FIXME Delete a Person
DELETE api.projectoxford.ai/face/v1.0/persongroups/{personGroupId}/persons/{personId}
# File lib/oxford/face/api.rb, line 172 def delete(group_id, person_id) @client.delete("/persongroups/#{group_id}/persons/#{person_id}") end
FIXME Delete a Person
Face
DELETE api.projectoxford.ai/face/v1.0/persongroups/{personGroupId}/persons/{personId}/persistedFaces/{persistedFaceId}
# File lib/oxford/face/api.rb, line 179 def delete_face(group_id, person_id, face_id) @client.delete("/persongroups/#{group_id}/persons/#{person_id}/persistedFaces/#{face_id}") end
Get a Person
Face
GET api.projectoxford.ai/face/v1.0/persongroups/{personGroupId}/persons/{personId}/persistedFaces/{persistedFaceId}
# File lib/oxford/face/api.rb, line 191 def face(group_id, person_id, face_id) @client.get("/persongroups/#{group_id}/persons/#{person_id}/persistedFaces/#{face_id}") end
Get a Person
GET api.projectoxford.ai/face/v1.0/persongroups/{personGroupId}/persons/{personId}
# File lib/oxford/face/api.rb, line 185 def get(group_id, person_id) @client.get("/persongroups/#{group_id}/persons/#{person_id}") end
Update a Person
PATCH api.projectoxford.ai/face/v1.0/persongroups/{personGroupId}/persons/{personId}
# File lib/oxford/face/api.rb, line 203 def update(group_id, person_id, name, user_data) params = { name: name, userData: user_data } @client.patch("/persongroups/#{group_id}/persons/#{person_id}", params) end
Update a Person
Face
PATCH ttps://api.projectoxford.ai/face/v1.0/persongroups/{personGroupId}/persons/{personId}/persistedFaces/{persistedFaceId}
# File lib/oxford/face/api.rb, line 213 def update_face(group_id, person_id, face_id, user_data) params = { userData: user_data } @client.patch("/persongroups/#{group_id}/persons/#{person_id}/persistedFaces/#{face_id}", params) end