From 2b0cedea7c3d912422191970f41f873938ef05c1 Mon Sep 17 00:00:00 2001 From: Artsiom Tsybulko Date: Thu, 17 Jul 2025 16:02:56 +0300 Subject: [PATCH 1/9] 41461 - add request tenant, env --- detect.yml | 6 ++++++ groups.yml | 8 +++++++- identification.yml | 24 ++++++++++++++++++++++++ match.yml | 6 ++++++ match_and_search.yml | 6 ++++++ search.yml | 8 ++++++++ 6 files changed, 57 insertions(+), 1 deletion(-) diff --git a/detect.yml b/detect.yml index 6ca92d4..dc13973 100644 --- a/detect.yml +++ b/detect.yml @@ -51,6 +51,12 @@ components: $ref: "./common.yml#/components/schemas/ProcessParam" image: $ref: "./common.yml#/components/schemas/ImageData" + tenant: + type: string + description: "Customer name" + env: + type: string + description: "Environment type" DetectResponse: allOf: diff --git a/groups.yml b/groups.yml index 1b349a1..7b2f38c 100644 --- a/groups.yml +++ b/groups.yml @@ -173,4 +173,10 @@ definitions: description: "Remove items." items: type: string - format: uuid \ No newline at end of file + format: uuid + tenant: + type: string + description: "Customer name" + env: + type: string + description: "Environment type" diff --git a/identification.yml b/identification.yml index 76384d1..3eb15f7 100644 --- a/identification.yml +++ b/identification.yml @@ -77,6 +77,12 @@ components: expireAt: type: string description: "Person expiration date." + tenant: + type: string + description: "Customer name" + env: + type: string + description: "Environment type" PersonToUpdateFields: type: object description: "Person Request body: name and metadata." @@ -97,6 +103,12 @@ components: items: type: string format: uuid + tenant: + type: string + description: "Customer name" + env: + type: string + description: "Environment type" ImageFields: type: object @@ -185,6 +197,12 @@ components: limit: type: integer description: "The maximum number of results to be returned." + tenant: + type: string + description: "Customer name" + env: + type: string + description: "Environment type" ResizeOptions: type: object @@ -285,3 +303,9 @@ components: type: object additionalProperties: true description: "A free-form object containing group's extended attributes." + tenant: + type: string + description: "Customer name" + env: + type: string + description: "Environment type" diff --git a/match.yml b/match.yml index fb8dcb0..6b62979 100644 --- a/match.yml +++ b/match.yml @@ -59,6 +59,12 @@ components: $ref: "#/components/schemas/MatchImage" outputImageParams: $ref: "./common.yml#/components/schemas/ProcessParam/properties/outputImageParams" + tenant: + type: string + description: "Customer name" + env: + type: string + description: "Environment type" MatchImageIndex: type: integer diff --git a/match_and_search.yml b/match_and_search.yml index 202b558..4e5edc3 100644 --- a/match_and_search.yml +++ b/match_and_search.yml @@ -49,6 +49,12 @@ components: items: type: string format: uuid + tenant: + type: string + description: "Customer name" + env: + type: string + description: "Environment type" MatchAndSearchResponse: allOf: diff --git a/search.yml b/search.yml index d0b645c..30b3be2 100644 --- a/search.yml +++ b/search.yml @@ -43,6 +43,14 @@ definitions: allOf: - $ref: "#/definitions/SearchParameters" - $ref: "./identification.yml#/components/schemas/ImageFields" + - type: object + properties: + tenant: + type: string + description: "Customer name" + env: + type: string + description: "Environment type" SearchParameters: type: object From c3d16d31c623214d8e6b869bd011e6d59bfec436 Mon Sep 17 00:00:00 2001 From: Artsiom Tsybulko Date: Tue, 22 Jul 2025 11:39:12 +0300 Subject: [PATCH 2/9] 41461 - update groups, identification --- groups.yml | 6 ------ identification.yml | 24 ------------------------ persons.yml | 13 ++++++++++++- 3 files changed, 12 insertions(+), 31 deletions(-) diff --git a/groups.yml b/groups.yml index 7b2f38c..9fb7f69 100644 --- a/groups.yml +++ b/groups.yml @@ -174,9 +174,3 @@ definitions: items: type: string format: uuid - tenant: - type: string - description: "Customer name" - env: - type: string - description: "Environment type" diff --git a/identification.yml b/identification.yml index 3eb15f7..76384d1 100644 --- a/identification.yml +++ b/identification.yml @@ -77,12 +77,6 @@ components: expireAt: type: string description: "Person expiration date." - tenant: - type: string - description: "Customer name" - env: - type: string - description: "Environment type" PersonToUpdateFields: type: object description: "Person Request body: name and metadata." @@ -103,12 +97,6 @@ components: items: type: string format: uuid - tenant: - type: string - description: "Customer name" - env: - type: string - description: "Environment type" ImageFields: type: object @@ -197,12 +185,6 @@ components: limit: type: integer description: "The maximum number of results to be returned." - tenant: - type: string - description: "Customer name" - env: - type: string - description: "Environment type" ResizeOptions: type: object @@ -303,9 +285,3 @@ components: type: object additionalProperties: true description: "A free-form object containing group's extended attributes." - tenant: - type: string - description: "Customer name" - env: - type: string - description: "Environment type" diff --git a/persons.yml b/persons.yml index 04b2009..ad2418e 100644 --- a/persons.yml +++ b/persons.yml @@ -15,7 +15,7 @@ paths: content: application/json: schema: - $ref: "./identification.yml#/components/schemas/PersonFields" + $ref: "#/definitions/PersonsRequest" responses: 201: $ref: "#/components/responses/SuccessPerson" @@ -227,3 +227,14 @@ definitions: type: array items: $ref: "./identification.yml#/components/schemas/Image" + PersonsRequest: + allOf: + - $ref: "./identification.yml#/components/schemas/PersonFields" + - type: object + properties: + tenant: + type: string + description: "Customer name" + env: + type: string + description: "Environment type" From 06bb278790f13afdfc4eac7818c4db682c65e53d Mon Sep 17 00:00:00 2001 From: Artsiom Tsybulko Date: Tue, 22 Jul 2025 11:54:02 +0300 Subject: [PATCH 3/9] 41461 - update groups --- groups.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/groups.yml b/groups.yml index 9fb7f69..1b349a1 100644 --- a/groups.yml +++ b/groups.yml @@ -173,4 +173,4 @@ definitions: description: "Remove items." items: type: string - format: uuid + format: uuid \ No newline at end of file From b4ed6ef53785922555c6dc4435e4b0f3a802eb39 Mon Sep 17 00:00:00 2001 From: Artsiom Tsybulko Date: Fri, 1 Aug 2025 10:40:49 +0300 Subject: [PATCH 4/9] 41700 - update tenant, env descriptions --- detect.yml | 4 ++-- match.yml | 4 ++-- match_and_search.yml | 4 ++-- persons.yml | 4 ++-- search.yml | 4 ++-- 5 files changed, 10 insertions(+), 10 deletions(-) diff --git a/detect.yml b/detect.yml index dc13973..243943e 100644 --- a/detect.yml +++ b/detect.yml @@ -53,10 +53,10 @@ components: $ref: "./common.yml#/components/schemas/ImageData" tenant: type: string - description: "Customer name" + description: "A label used to group transactions by customers, applications, or other criteria." env: type: string - description: "Environment type" + description: "A label used to differentiate transactions by development stages." DetectResponse: allOf: diff --git a/match.yml b/match.yml index 6b62979..3d5f8b7 100644 --- a/match.yml +++ b/match.yml @@ -61,10 +61,10 @@ components: $ref: "./common.yml#/components/schemas/ProcessParam/properties/outputImageParams" tenant: type: string - description: "Customer name" + description: "A label used to group transactions by customers, applications, or other criteria." env: type: string - description: "Environment type" + description: "A label used to differentiate transactions by development stages." MatchImageIndex: type: integer diff --git a/match_and_search.yml b/match_and_search.yml index 4e5edc3..debddaa 100644 --- a/match_and_search.yml +++ b/match_and_search.yml @@ -51,10 +51,10 @@ components: format: uuid tenant: type: string - description: "Customer name" + description: "A label used to group transactions by customers, applications, or other criteria." env: type: string - description: "Environment type" + description: "A label used to differentiate transactions by development stages." MatchAndSearchResponse: allOf: diff --git a/persons.yml b/persons.yml index ad2418e..a1d28c0 100644 --- a/persons.yml +++ b/persons.yml @@ -234,7 +234,7 @@ definitions: properties: tenant: type: string - description: "Customer name" + description: "A label used to group transactions by customers, applications, or other criteria." env: type: string - description: "Environment type" + description: "A label used to differentiate transactions by development stages." diff --git a/search.yml b/search.yml index 30b3be2..c1a3b7e 100644 --- a/search.yml +++ b/search.yml @@ -47,10 +47,10 @@ definitions: properties: tenant: type: string - description: "Customer name" + description: "A label used to group transactions by customers, applications, or other criteria." env: type: string - description: "Environment type" + description: "A label used to differentiate transactions by development stages." SearchParameters: type: object From 5200b40fba0fc92ba28413378208ab4aef797709 Mon Sep 17 00:00:00 2001 From: Artsiom Tsybulko Date: Fri, 1 Aug 2025 14:59:57 +0300 Subject: [PATCH 5/9] 41700 - fix Detection schema --- detect.yml | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/detect.yml b/detect.yml index 243943e..d58dcec 100644 --- a/detect.yml +++ b/detect.yml @@ -134,11 +134,9 @@ components: type: array description: "Attributes assessment details. Returns `DetectDetailsMeta` or `DetectAttributesDetails`." items: - items: - anyOf: - - $ref: '#/components/schemas/DetectAttributesDetails' - - $ref: '#/components/schemas/DetectDetailsMeta' - + anyOf: + - $ref: '#/components/schemas/DetectAttributesDetails' + - $ref: '#/components/schemas/DetectDetailsMeta' elapsedTime: type: number description: "Server processing time for attribute detection, ms." From 840542662002e2ef0a78d594bdb9472dfdd4d7da Mon Sep 17 00:00:00 2001 From: Artsiom Tsybulko Date: Fri, 1 Aug 2025 16:06:58 +0300 Subject: [PATCH 6/9] 41700 - change version --- index.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.yml b/index.yml index 31c10f3..ebef727 100755 --- a/index.yml +++ b/index.yml @@ -1,6 +1,6 @@ openapi: 3.0.3 info: - version: 7.1.0 + version: 7.2.0 title: Regula Face SDK Web API x-logo: url: 'https://static-content.regulaforensics.com/Icons/Logos/Regula-logo.svg' From e7f567081963bd0bc702dd0bd2b40a0f183d5158 Mon Sep 17 00:00:00 2001 From: Artsiom Tsybulko Date: Tue, 19 Aug 2025 17:43:14 +0300 Subject: [PATCH 7/9] 42188 - add match and search imageUrl, threshold, limit --- match_and_search.yml | 62 +++++++++++++++++++++++++------------------- 1 file changed, 35 insertions(+), 27 deletions(-) diff --git a/match_and_search.yml b/match_and_search.yml index 4e5edc3..9e1b819 100644 --- a/match_and_search.yml +++ b/match_and_search.yml @@ -27,34 +27,42 @@ paths: components: schemas: MatchAndSearchRequest: - allOf: - - type: object - properties: - tag: - type: string - description: "Session identificator, should be unique for each session." - images: - type: array - description: "Person's images." - items: - type: object - properties: - content: - $ref: './common.yml#/components/schemas/ImageData' - type: - $ref: './match.yml#/components/schemas/ImageSource' - groupIds: - type: array - description: "IDs of the groups in which the search is performed." - items: + type: object + properties: + tag: + type: string + description: "Session identificator, should be unique for each session." + images: + type: array + description: "Person's images." + items: + type: object + properties: + content: + $ref: './common.yml#/components/schemas/ImageData' + imageUrl: + description: "Image URL." type: string - format: uuid - tenant: - type: string - description: "Customer name" - env: - type: string - description: "Environment type" + type: + $ref: './match.yml#/components/schemas/ImageSource' + groupIds: + type: array + description: "IDs of the groups in which the search is performed." + items: + type: string + format: uuid + threshold: + description: "The similarity threshold." + type: number + limit: + description: "The maximum number of results to be returned." + type: integer + tenant: + type: string + description: "Customer name" + env: + type: string + description: "Environment type" MatchAndSearchResponse: allOf: From 0a8591be8b7d8047e16ec3b35089cef16ea64440 Mon Sep 17 00:00:00 2001 From: Artsiom Tsybulko Date: Fri, 22 Aug 2025 18:00:43 +0300 Subject: [PATCH 8/9] 42187 - update descriptions --- match.yml | 2 +- match_and_search.yml | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/match.yml b/match.yml index 3d5f8b7..38dd05a 100644 --- a/match.yml +++ b/match.yml @@ -54,7 +54,7 @@ components: description: "Session identificator, should be unique for each session." images: type: array - description: "All images included in the comparison." + description: "An array of images to be processed. At least two images must be provided." items: $ref: "#/components/schemas/MatchImage" outputImageParams: diff --git a/match_and_search.yml b/match_and_search.yml index 382a1f7..6309ec3 100644 --- a/match_and_search.yml +++ b/match_and_search.yml @@ -7,7 +7,7 @@ paths: tags: - match summary: 'match and search (1:1 + 1:N)' - description: "To compare several images from a document and look up a person in the database in one request, use POST `/api/match_and_search`. In this case, the calculation of the descriptor will be performed only once, as opposed to using two requests for the same operation. If only one person is identified, match is not performed and only search is carried out." + description: "To compare several images from a document and look up a person in the database in one request, use POST `/api/match_and_search`. In this case, the calculation of the descriptor will be performed only once, as opposed to using two requests for the same operation. At least two photos are required. If, after processing two or more photos, only one face is detected across them, the match step is skipped, and only the search is carried out." operationId: match_and_search requestBody: required: true @@ -34,7 +34,7 @@ components: description: "Session identificator, should be unique for each session." images: type: array - description: "Person's images." + description: "An array of images to be processed. At least two images must be provided." items: type: object properties: From 93808fa92a059ec866c0062fd277edbeaab691d2 Mon Sep 17 00:00:00 2001 From: Artsiom Tsybulko Date: Wed, 27 Aug 2025 15:26:26 +0300 Subject: [PATCH 9/9] 41461 - move tenant, env from create person to AddImageToPersonRequest --- identification.yml | 6 ++++++ persons.yml | 13 +------------ 2 files changed, 7 insertions(+), 12 deletions(-) diff --git a/identification.yml b/identification.yml index 76384d1..f3f5029 100644 --- a/identification.yml +++ b/identification.yml @@ -185,6 +185,12 @@ components: limit: type: integer description: "The maximum number of results to be returned." + tenant: + type: string + description: "A label used to group transactions by customers, applications, or other criteria." + env: + type: string + description: "A label used to differentiate transactions by development stages." ResizeOptions: type: object diff --git a/persons.yml b/persons.yml index a1d28c0..04b2009 100644 --- a/persons.yml +++ b/persons.yml @@ -15,7 +15,7 @@ paths: content: application/json: schema: - $ref: "#/definitions/PersonsRequest" + $ref: "./identification.yml#/components/schemas/PersonFields" responses: 201: $ref: "#/components/responses/SuccessPerson" @@ -227,14 +227,3 @@ definitions: type: array items: $ref: "./identification.yml#/components/schemas/Image" - PersonsRequest: - allOf: - - $ref: "./identification.yml#/components/schemas/PersonFields" - - type: object - properties: - tenant: - type: string - description: "A label used to group transactions by customers, applications, or other criteria." - env: - type: string - description: "A label used to differentiate transactions by development stages."