# Models

## The ValidationError object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"ValidationError":{"type":"object","properties":{"type":{"description":"Type of the Error","type":"string","enum":["VALIDATION_ERROR"]},"code":{"description":"Internal error code.","type":"string","enum":["MISSING_PGUID","MISSING_PERSON","MISSING_BIOMETRIC","INVALID_PARAMETER_COMBINATION","MISSING_REQUIRED_QUERY_PARAMETER","MISSING_REQUIRED_ENTITY_ATTRIBUTE","UNKNOWN_ENTITY_ATTRIBUTE","QUERY_PARAMETER_OUT_OF_RANGE","PARAMETER_OUT_OF_RANGE","PGUID_IS_EMPTY","FORBIDDEN_ATTRIBUTE_SET","INVALID_TOKEN_GRANT_SPEC","INVALID_ENUM_VALUE","MALFORMED_JSON","INVALID_JSON_ATTRIBUTE_VALUE","INVALID_URL_ATTRIBUTE_VALUE","UNKNOWN_REQUEST_READ_ERROR","PAGE_NOT_FOUND","UNSUPPORTED_HTTP_METHOD"]},"message":{"description":"Message detailing the nature of the Error","type":"string"},"meta":{"description":"Contains extra information about the API call.","type":"object"}}}}}}
```

## The ProcessingError object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"ProcessingError":{"type":"object","properties":{"type":{"description":"Type of the Error","type":"string","enum":["PROCESSING_ERROR"]},"code":{"description":"Internal error code.","type":"string","enum":["ENTITY_DOES_NOT_EXIST","ENTITY_ALREADY_EXISTS","POOR_BIOMETRIC_QUALITY","DUPLICATED_BIOMETRIC","BIOMETRIC_OUT_OF_SEQUENCE","BIOMETRIC_ERROR","INSUFFICIENT_TEMPLATE_COUNT","UNEXTRACTABLE_BIOMETRIC","PERSON_DOES_NOT_EXIST","PERSON_NOT_ACTIVE","PERSON_DOES_NOT_HAVE_BIOMETRIC","PENDING_EXCEPTIONS","ENROLL_TRANSACTION_DOES_NOT_EXIST","ENROLL_PERSON_NOT_FOUND","INVALID_TRANSACTION_STATE","EXCEPTION_DOES_NOT_EXIST","TREAT_EXCEPTION_TRANSACTION_DOES_NOT_EXIST","USER_NOT_AUTHORIZED_TO_TREAT_EXCEPTION","UL_IS_ALREADY_SOLVED","INVALID_PARAMETER_COMBINATION","CAN_NOT_DISABLE_ONLY_ENROLL_TRANSACTION","PERSON_DOES_NOT_OWN_TRANSACTION","TRANSACTION_IS_ALREADY_DISABLED","CAN_NOT_DISABLE_TRANSACTION_OF_UNSUPPORTED_TYPE","INVALID_EBTS_TYPE9_CONTENT","EXTERNAL_ID_DOES_NOT_EXIST","EXCEPTION_IS_ALREADY_TREATED","INVALID_TREATMENT_FOR_EXCEPTION","ENROLL_IS_ALREADY_ASSIGNED","ENROLL_IS_ALREADY_UNASSIGNED","ENROLL_IS_NOT_PENDING","ENROLL_IS_NOT_ASSIGNED","ENROLL_HAS_DIFFERENT_ASSIGNED_USER","NO_PGUID_FOUND_FOR_KEY","NO_SEARCHABLE_BIOMETRIC"]},"message":{"description":"Message detailing the nature of the Error","type":"string"},"meta":{"description":"Contains extra information about the API call.","type":"object"}}}}}}
```

## The InternalError object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"InternalError":{"type":"object","properties":{"type":{"description":"Type of the Error","type":"string","enum":["INTERNAL_ERROR"]},"code":{"description":"Internal error code.","type":"string","enum":["DRIVER_OFFLINE","CREDENTIAL_SERVER_CONNECTION_ERROR","CLIENT_NOT_INITIALIZE","TRUSTED_ENROLL_WITH_PENDING_STATUS","SUBJECT_NOT_SET","UNKNOWN"]},"message":{"description":"Message detailing the nature of the Error","type":"string"},"meta":{"description":"Contains extra information about the API call.","type":"object"}}}}}}
```

## The SecurityError object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"SecurityError":{"type":"object","properties":{"type":{"description":"Type of the Error","type":"string","enum":["SECURITY_ERROR"]},"code":{"description":"Internal error code.","type":"string","enum":["INVALID_CREDENTIALS","INVALID_TOKEN","INVALID_AUTHORIZATION_SCHEMA","MISSING_TOKEN","UNKNOWN_LOGIN_ERROR","UNKNOWN_TOKEN_ERROR","EXPIRED_TOKEN","UNAUTHORIZED_ACCESS"]},"message":{"description":"Message detailing the nature of the Error","type":"string"},"meta":{"description":"Contains extra information about the API call.","type":"object"}}}}}}
```

## The CreateTokenRequest object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"CreateTokenRequest":{"type":"object","properties":{"data":{"type":"object","properties":{"grantType":{"description":"How the token will be generated. To generate a new token from user credentials, use grantType =  CREDENTIALS. To generate a new token using a currently valid token, use grantType = TOKEN.","type":"string","enum":["CREDENTIALS","TOKEN"]},"userName":{"description":"User ID.","type":"string"},"userPassword":{"description":"User password.","type":"string"},"token":{"description":"Currently valid token to be used for the token renewal process.","type":"string"}}}}}}}}
```

## The CreateTokenResponse object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"CreateTokenResponse":{"type":"object","properties":{"data":{"type":"object","properties":{"token":{"description":"Currently valid token to be used for the token renewal process.","type":"string"},"expirationTime":{"description":"Expiration time of the token in milliseconds.","type":"integer","format":"int64"},"ttl":{"description":"Token's time to live in milliseconds.","type":"integer","format":"int64"}}}}}}}}
```

## The BiometricMatch object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"BiometricMatch":{"type":"object","properties":{"score":{"description":"Score of the match.","type":"integer","format":"int32"},"queryIndex":{"description":"Index of the biometric data that was sent and caused a match.","type":"integer","format":"int32"},"referenceIndex":{"description":"Index of the biometric data, from the already enrolled person, which matched.","type":"integer","format":"int32"},"minutia":{"description":"Array of minutia matches. Returned only for latent searches.","type":"array","items":{"$ref":"#/components/schemas/Minutiae"}}}},"Minutiae":{"type":"object","properties":{"query":{"description":"Index of Minutiae, from the provided biometric data, which was involved in the match.","type":"integer","format":"int32"},"reference":{"description":"Index of Minutiae, from biometric data already in the database, which was involved in the match.","type":"integer","format":"int32"}}}}}}
```

## The Exception object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"Exception":{"type":"object","properties":{"enrollPguid":{"description":"Global unique ID of the person.","type":"string"},"enrollTguid":{"description":"Global unique ID of the transaction.","type":"string"},"transactionTimestamp":{"description":"Timestamp of the transaction that generated the Exception.","type":"integer","format":"int64"},"match":{"$ref":"#/components/schemas/Match"},"assignedUser":{"description":"Username of user tasked with treating the exception.","type":"string"},"exceptionAnalysis":{"$ref":"#/components/schemas/ExceptionAnalysis"},"transactionType":{"description":"Type of the transaction that generated the exception.","type":"string","enum":["ENROLL","UPDATE"]}}},"Match":{"type":"object","properties":{"matchedPersonPguid":{"description":"PGUID of the person the candidate was matched against.","type":"string"},"matchedPersonTguid":{"description":"TGUID of the person the candidate was matched against.","type":"string"},"biometricMatches":{"description":"Information about the match.","type":"array","items":{"$ref":"#/components/schemas/BiometricMatch"}}}},"BiometricMatch":{"type":"object","properties":{"score":{"description":"Score of the match.","type":"integer","format":"int32"},"queryIndex":{"description":"Index of the biometric data that was sent and caused a match.","type":"integer","format":"int32"},"referenceIndex":{"description":"Index of the biometric data, from the already enrolled person, which matched.","type":"integer","format":"int32"},"minutia":{"description":"Array of minutia matches. Returned only for latent searches.","type":"array","items":{"$ref":"#/components/schemas/Minutiae"}}}},"Minutiae":{"type":"object","properties":{"query":{"description":"Index of Minutiae, from the provided biometric data, which was involved in the match.","type":"integer","format":"int32"},"reference":{"description":"Index of Minutiae, from biometric data already in the database, which was involved in the match.","type":"integer","format":"int32"}}},"ExceptionAnalysis":{"type":"object","properties":{"status":{"description":"Status of the exception.","type":"string","enum":["ANALYSIS","DIFFERENT_FINGERS","SAME_FINGERS","INCORRECT_ENROLL","RECOLLECT","MERGE_TRANSACTIONS","APPROVE","REJECT","ERROR"]},"exceptionTimestamp":{"description":"Timestamp of the exception. This is the timestamp that should be used during exception listing/filtering.","type":"integer","format":"int64"},"user":{"description":"User that performed the analysis of the exception. Used only if LDAP is not active.","type":"string"},"comments":{"description":"Comments made by the user.","type":"string"}}}}}}
```

## The ExceptionAnalysis object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"ExceptionAnalysis":{"type":"object","properties":{"status":{"description":"Status of the exception.","type":"string","enum":["ANALYSIS","DIFFERENT_FINGERS","SAME_FINGERS","INCORRECT_ENROLL","RECOLLECT","MERGE_TRANSACTIONS","APPROVE","REJECT","ERROR"]},"exceptionTimestamp":{"description":"Timestamp of the exception. This is the timestamp that should be used during exception listing/filtering.","type":"integer","format":"int64"},"user":{"description":"User that performed the analysis of the exception. Used only if LDAP is not active.","type":"string"},"comments":{"description":"Comments made by the user.","type":"string"}}}}}}
```

## The GetExceptionsResponse object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"GetExceptionsResponse":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/Exception"}}},"Exception":{"type":"object","properties":{"enrollPguid":{"description":"Global unique ID of the person.","type":"string"},"enrollTguid":{"description":"Global unique ID of the transaction.","type":"string"},"transactionTimestamp":{"description":"Timestamp of the transaction that generated the Exception.","type":"integer","format":"int64"},"match":{"$ref":"#/components/schemas/Match"},"assignedUser":{"description":"Username of user tasked with treating the exception.","type":"string"},"exceptionAnalysis":{"$ref":"#/components/schemas/ExceptionAnalysis"},"transactionType":{"description":"Type of the transaction that generated the exception.","type":"string","enum":["ENROLL","UPDATE"]}}},"Match":{"type":"object","properties":{"matchedPersonPguid":{"description":"PGUID of the person the candidate was matched against.","type":"string"},"matchedPersonTguid":{"description":"TGUID of the person the candidate was matched against.","type":"string"},"biometricMatches":{"description":"Information about the match.","type":"array","items":{"$ref":"#/components/schemas/BiometricMatch"}}}},"BiometricMatch":{"type":"object","properties":{"score":{"description":"Score of the match.","type":"integer","format":"int32"},"queryIndex":{"description":"Index of the biometric data that was sent and caused a match.","type":"integer","format":"int32"},"referenceIndex":{"description":"Index of the biometric data, from the already enrolled person, which matched.","type":"integer","format":"int32"},"minutia":{"description":"Array of minutia matches. Returned only for latent searches.","type":"array","items":{"$ref":"#/components/schemas/Minutiae"}}}},"Minutiae":{"type":"object","properties":{"query":{"description":"Index of Minutiae, from the provided biometric data, which was involved in the match.","type":"integer","format":"int32"},"reference":{"description":"Index of Minutiae, from biometric data already in the database, which was involved in the match.","type":"integer","format":"int32"}}},"ExceptionAnalysis":{"type":"object","properties":{"status":{"description":"Status of the exception.","type":"string","enum":["ANALYSIS","DIFFERENT_FINGERS","SAME_FINGERS","INCORRECT_ENROLL","RECOLLECT","MERGE_TRANSACTIONS","APPROVE","REJECT","ERROR"]},"exceptionTimestamp":{"description":"Timestamp of the exception. This is the timestamp that should be used during exception listing/filtering.","type":"integer","format":"int64"},"user":{"description":"User that performed the analysis of the exception. Used only if LDAP is not active.","type":"string"},"comments":{"description":"Comments made by the user.","type":"string"}}}}}}
```

## The Match object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"Match":{"type":"object","properties":{"matchedPersonPguid":{"description":"PGUID of the person the candidate was matched against.","type":"string"},"matchedPersonTguid":{"description":"TGUID of the person the candidate was matched against.","type":"string"},"biometricMatches":{"description":"Information about the match.","type":"array","items":{"$ref":"#/components/schemas/BiometricMatch"}}}},"BiometricMatch":{"type":"object","properties":{"score":{"description":"Score of the match.","type":"integer","format":"int32"},"queryIndex":{"description":"Index of the biometric data that was sent and caused a match.","type":"integer","format":"int32"},"referenceIndex":{"description":"Index of the biometric data, from the already enrolled person, which matched.","type":"integer","format":"int32"},"minutia":{"description":"Array of minutia matches. Returned only for latent searches.","type":"array","items":{"$ref":"#/components/schemas/Minutiae"}}}},"Minutiae":{"type":"object","properties":{"query":{"description":"Index of Minutiae, from the provided biometric data, which was involved in the match.","type":"integer","format":"int32"},"reference":{"description":"Index of Minutiae, from biometric data already in the database, which was involved in the match.","type":"integer","format":"int32"}}}}}}
```

## The Minutiae object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"Minutiae":{"type":"object","properties":{"query":{"description":"Index of Minutiae, from the provided biometric data, which was involved in the match.","type":"integer","format":"int32"},"reference":{"description":"Index of Minutiae, from biometric data already in the database, which was involved in the match.","type":"integer","format":"int32"}}}}}}
```

## The ListExceptionsResponse object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"ListExceptionsResponse":{"type":"object","properties":{"data":{"description":"List of exceptions that matched the search criteria.","type":"array","items":{"$ref":"#/components/schemas/Exception"}},"pagination":{"$ref":"#/components/schemas/Pagination"}}},"Exception":{"type":"object","properties":{"enrollPguid":{"description":"Global unique ID of the person.","type":"string"},"enrollTguid":{"description":"Global unique ID of the transaction.","type":"string"},"transactionTimestamp":{"description":"Timestamp of the transaction that generated the Exception.","type":"integer","format":"int64"},"match":{"$ref":"#/components/schemas/Match"},"assignedUser":{"description":"Username of user tasked with treating the exception.","type":"string"},"exceptionAnalysis":{"$ref":"#/components/schemas/ExceptionAnalysis"},"transactionType":{"description":"Type of the transaction that generated the exception.","type":"string","enum":["ENROLL","UPDATE"]}}},"Match":{"type":"object","properties":{"matchedPersonPguid":{"description":"PGUID of the person the candidate was matched against.","type":"string"},"matchedPersonTguid":{"description":"TGUID of the person the candidate was matched against.","type":"string"},"biometricMatches":{"description":"Information about the match.","type":"array","items":{"$ref":"#/components/schemas/BiometricMatch"}}}},"BiometricMatch":{"type":"object","properties":{"score":{"description":"Score of the match.","type":"integer","format":"int32"},"queryIndex":{"description":"Index of the biometric data that was sent and caused a match.","type":"integer","format":"int32"},"referenceIndex":{"description":"Index of the biometric data, from the already enrolled person, which matched.","type":"integer","format":"int32"},"minutia":{"description":"Array of minutia matches. Returned only for latent searches.","type":"array","items":{"$ref":"#/components/schemas/Minutiae"}}}},"Minutiae":{"type":"object","properties":{"query":{"description":"Index of Minutiae, from the provided biometric data, which was involved in the match.","type":"integer","format":"int32"},"reference":{"description":"Index of Minutiae, from biometric data already in the database, which was involved in the match.","type":"integer","format":"int32"}}},"ExceptionAnalysis":{"type":"object","properties":{"status":{"description":"Status of the exception.","type":"string","enum":["ANALYSIS","DIFFERENT_FINGERS","SAME_FINGERS","INCORRECT_ENROLL","RECOLLECT","MERGE_TRANSACTIONS","APPROVE","REJECT","ERROR"]},"exceptionTimestamp":{"description":"Timestamp of the exception. This is the timestamp that should be used during exception listing/filtering.","type":"integer","format":"int64"},"user":{"description":"User that performed the analysis of the exception. Used only if LDAP is not active.","type":"string"},"comments":{"description":"Comments made by the user.","type":"string"}}},"Pagination":{"type":"object","properties":{"total":{"description":"Total number of elements that matched the selection criteria.","type":"integer","format":"int64"},"count":{"description":"Number of elements in the response.","type":"integer","format":"int32"},"pageSize":{"description":"Size of the page.","type":"integer","format":"int32"},"currentPage":{"description":"Number of the current page.","type":"integer","format":"int64"},"totalPages":{"description":"Number of total pages.","type":"integer","format":"int64"}}}}}}
```

## The Pagination object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"Pagination":{"type":"object","properties":{"total":{"description":"Total number of elements that matched the selection criteria.","type":"integer","format":"int64"},"count":{"description":"Number of elements in the response.","type":"integer","format":"int32"},"pageSize":{"description":"Size of the page.","type":"integer","format":"int32"},"currentPage":{"description":"Number of the current page.","type":"integer","format":"int64"},"totalPages":{"description":"Number of total pages.","type":"integer","format":"int64"}}}}}}
```

## The PaginationOff object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"PaginationOff":{"type":"object","properties":{"count":{"description":"Number of elements in the response.","type":"integer","format":"int32"},"pageSize":{"description":"Size of the page.","type":"integer","format":"int32"},"currentPage":{"description":"Number of the current page.","type":"integer","format":"int64"}}}}}}
```

## The TreatExceptionsResponse object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"TreatExceptionsResponse":{"type":"object","properties":{"status":{"description":"Status of the treat operation.","type":"string","enum":["OK","ENQUEUED","ERROR"]},"treatTguid":{"description":"TGUID of treat operation.","type":"string"},"failReason":{"description":"If the treatment call failed, this field will contain a message describing the nature of the failure.","type":"string"}}}}}}
```

## The ExceptionTreatment object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"ExceptionTreatment":{"type":"object","properties":{"enrollTguid":{"description":"TGUID of transaction that created the exception.","type":"string"},"exceptionPguid":{"description":"PGUID of the person that was matched to create the exception.","type":"string"},"exceptionAnalysis":{"$ref":"#/components/schemas/ExceptionAnalysis"},"referenceIndexes":{"description":"List of biometric indexes. Specifies which biometric from the Update transaction should be used to update the Person.","type":"array","items":{"type":"integer","format":"int32"}}}},"ExceptionAnalysis":{"type":"object","properties":{"status":{"description":"Status of the exception.","type":"string","enum":["ANALYSIS","DIFFERENT_FINGERS","SAME_FINGERS","INCORRECT_ENROLL","RECOLLECT","MERGE_TRANSACTIONS","APPROVE","REJECT","ERROR"]},"exceptionTimestamp":{"description":"Timestamp of the exception. This is the timestamp that should be used during exception listing/filtering.","type":"integer","format":"int64"},"user":{"description":"User that performed the analysis of the exception. Used only if LDAP is not active.","type":"string"},"comments":{"description":"Comments made by the user.","type":"string"}}}}}}
```

## The Meta object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"Meta":{"type":"object","properties":{"timeout":{"description":"Time, in milliseconds, waiting for the completion of the operation. If this value is -1, then the method is fully synchronous. If the timeout value is 0, then the method is fully asynchronous. If>0, the call expires after this time (in milliseconds).","type":"integer","format":"int32"},"discardReference":{"type":"boolean"}}}}}}
```

## The TreatExceptionsRequest object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"TreatExceptionsRequest":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/ExceptionTreatment"},"meta":{"$ref":"#/components/schemas/Meta"}}},"ExceptionTreatment":{"type":"object","properties":{"enrollTguid":{"description":"TGUID of transaction that created the exception.","type":"string"},"exceptionPguid":{"description":"PGUID of the person that was matched to create the exception.","type":"string"},"exceptionAnalysis":{"$ref":"#/components/schemas/ExceptionAnalysis"},"referenceIndexes":{"description":"List of biometric indexes. Specifies which biometric from the Update transaction should be used to update the Person.","type":"array","items":{"type":"integer","format":"int32"}}}},"ExceptionAnalysis":{"type":"object","properties":{"status":{"description":"Status of the exception.","type":"string","enum":["ANALYSIS","DIFFERENT_FINGERS","SAME_FINGERS","INCORRECT_ENROLL","RECOLLECT","MERGE_TRANSACTIONS","APPROVE","REJECT","ERROR"]},"exceptionTimestamp":{"description":"Timestamp of the exception. This is the timestamp that should be used during exception listing/filtering.","type":"integer","format":"int64"},"user":{"description":"User that performed the analysis of the exception. Used only if LDAP is not active.","type":"string"},"comments":{"description":"Comments made by the user.","type":"string"}}},"Meta":{"type":"object","properties":{"timeout":{"description":"Time, in milliseconds, waiting for the completion of the operation. If this value is -1, then the method is fully synchronous. If the timeout value is 0, then the method is fully asynchronous. If>0, the call expires after this time (in milliseconds).","type":"integer","format":"int32"},"discardReference":{"type":"boolean"}}}}}}
```

## The JsonNotification object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"JsonNotification":{"type":"object","properties":{"operation":{"description":"Operation type of the transaction that notification is related to.","type":"string","enum":["UNKNOWN","CONNECT","DISCONNECT","AUTHENTICATE","ENROLL","EXTERNAL_AUTHENTICATE","BATCH_ENROLL","REGISTER_SEARCH","SEARCH","DELETE","GET_RESULT","CLOSE_SESSION","GET_PERSON","FILTER","COUNT_ANOMALIES","FIND_ANOMALIES","GET_ANOMALY","ASSIGN_ANOMALY","UNASSIGN_ANOMALY","TRUST_ENROLL","GET_TRANSACTION","CHANGE_PRIORITY","ADD_TO_REFERENCE","REMOVE_FROM_REFERENCE","REMOVE_KEYS","GET_PEOPLE_TRANSACTIONS","ANOMALY_ENROLL","GET_EXCEPTION_RESULT","QUALITY_ANALYSIS","FILTER_TRANSACTION","REGISTER_ENROLL","STOP_SERVICE","REGISTER_UL_BIOMETRIC","REMOVE_UL_BIOMETRIC","UPDATE_PERSON_BIOMETRIC","DISABLE_PERSON_TRANSACTION","TREAT_EXCEPTION","TREAT_ANOMALY"]},"tguid":{"description":"Transaction's global unique ID of the transaction that notification is related to.","type":"string"},"status":{"description":"Current status of the transaction that notification is related to.","type":"string"},"sender":{"description":"The notification sender.","type":"string"},"uguid":{"description":"Global unique ID of an unsolved latent. Only used when the notification is related to a transaction that treats an unsolved latent.","type":"string"},"additionalData":{"description":"Map used to add custom information inside the notification that will be delivered to notifier endpoint.","type":"object","additionalProperties":{"type":"string"}},"relatedTransactions":{"description":"List of transactions related to the main transaction that notification is related to.","type":"array","items":{"$ref":"#/components/schemas/PersonRelatedTransaction"}}}},"PersonRelatedTransaction":{"type":"object","properties":{"status":{"description":"Status of the transaction related to the main transaction.","type":"string"},"tguid":{"description":"Transaction's global unique ID of the transaction related to the main transaction.","type":"string"},"pguid":{"description":"Person's global unique ID of the person related to the transaction related to the main transaction.","type":"string"},"operation":{"description":"Operation type of the transaction related to the main transaction.","type":"string","enum":["UNKNOWN","CONNECT","DISCONNECT","AUTHENTICATE","ENROLL","EXTERNAL_AUTHENTICATE","BATCH_ENROLL","REGISTER_SEARCH","SEARCH","DELETE","GET_RESULT","CLOSE_SESSION","GET_PERSON","FILTER","COUNT_ANOMALIES","FIND_ANOMALIES","GET_ANOMALY","ASSIGN_ANOMALY","UNASSIGN_ANOMALY","TRUST_ENROLL","GET_TRANSACTION","CHANGE_PRIORITY","ADD_TO_REFERENCE","REMOVE_FROM_REFERENCE","REMOVE_KEYS","GET_PEOPLE_TRANSACTIONS","ANOMALY_ENROLL","GET_EXCEPTION_RESULT","QUALITY_ANALYSIS","FILTER_TRANSACTION","REGISTER_ENROLL","STOP_SERVICE","REGISTER_UL_BIOMETRIC","REMOVE_UL_BIOMETRIC","UPDATE_PERSON_BIOMETRIC","DISABLE_PERSON_TRANSACTION","TREAT_EXCEPTION","TREAT_ANOMALY"]}}}}}}
```

## The NotifyRequest object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"NotifyRequest":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/JsonNotification"}}},"JsonNotification":{"type":"object","properties":{"operation":{"description":"Operation type of the transaction that notification is related to.","type":"string","enum":["UNKNOWN","CONNECT","DISCONNECT","AUTHENTICATE","ENROLL","EXTERNAL_AUTHENTICATE","BATCH_ENROLL","REGISTER_SEARCH","SEARCH","DELETE","GET_RESULT","CLOSE_SESSION","GET_PERSON","FILTER","COUNT_ANOMALIES","FIND_ANOMALIES","GET_ANOMALY","ASSIGN_ANOMALY","UNASSIGN_ANOMALY","TRUST_ENROLL","GET_TRANSACTION","CHANGE_PRIORITY","ADD_TO_REFERENCE","REMOVE_FROM_REFERENCE","REMOVE_KEYS","GET_PEOPLE_TRANSACTIONS","ANOMALY_ENROLL","GET_EXCEPTION_RESULT","QUALITY_ANALYSIS","FILTER_TRANSACTION","REGISTER_ENROLL","STOP_SERVICE","REGISTER_UL_BIOMETRIC","REMOVE_UL_BIOMETRIC","UPDATE_PERSON_BIOMETRIC","DISABLE_PERSON_TRANSACTION","TREAT_EXCEPTION","TREAT_ANOMALY"]},"tguid":{"description":"Transaction's global unique ID of the transaction that notification is related to.","type":"string"},"status":{"description":"Current status of the transaction that notification is related to.","type":"string"},"sender":{"description":"The notification sender.","type":"string"},"uguid":{"description":"Global unique ID of an unsolved latent. Only used when the notification is related to a transaction that treats an unsolved latent.","type":"string"},"additionalData":{"description":"Map used to add custom information inside the notification that will be delivered to notifier endpoint.","type":"object","additionalProperties":{"type":"string"}},"relatedTransactions":{"description":"List of transactions related to the main transaction that notification is related to.","type":"array","items":{"$ref":"#/components/schemas/PersonRelatedTransaction"}}}},"PersonRelatedTransaction":{"type":"object","properties":{"status":{"description":"Status of the transaction related to the main transaction.","type":"string"},"tguid":{"description":"Transaction's global unique ID of the transaction related to the main transaction.","type":"string"},"pguid":{"description":"Person's global unique ID of the person related to the transaction related to the main transaction.","type":"string"},"operation":{"description":"Operation type of the transaction related to the main transaction.","type":"string","enum":["UNKNOWN","CONNECT","DISCONNECT","AUTHENTICATE","ENROLL","EXTERNAL_AUTHENTICATE","BATCH_ENROLL","REGISTER_SEARCH","SEARCH","DELETE","GET_RESULT","CLOSE_SESSION","GET_PERSON","FILTER","COUNT_ANOMALIES","FIND_ANOMALIES","GET_ANOMALY","ASSIGN_ANOMALY","UNASSIGN_ANOMALY","TRUST_ENROLL","GET_TRANSACTION","CHANGE_PRIORITY","ADD_TO_REFERENCE","REMOVE_FROM_REFERENCE","REMOVE_KEYS","GET_PEOPLE_TRANSACTIONS","ANOMALY_ENROLL","GET_EXCEPTION_RESULT","QUALITY_ANALYSIS","FILTER_TRANSACTION","REGISTER_ENROLL","STOP_SERVICE","REGISTER_UL_BIOMETRIC","REMOVE_UL_BIOMETRIC","UPDATE_PERSON_BIOMETRIC","DISABLE_PERSON_TRANSACTION","TREAT_EXCEPTION","TREAT_ANOMALY"]}}}}}}
```

## The PersonRelatedTransaction object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"PersonRelatedTransaction":{"type":"object","properties":{"status":{"description":"Status of the transaction related to the main transaction.","type":"string"},"tguid":{"description":"Transaction's global unique ID of the transaction related to the main transaction.","type":"string"},"pguid":{"description":"Person's global unique ID of the person related to the transaction related to the main transaction.","type":"string"},"operation":{"description":"Operation type of the transaction related to the main transaction.","type":"string","enum":["UNKNOWN","CONNECT","DISCONNECT","AUTHENTICATE","ENROLL","EXTERNAL_AUTHENTICATE","BATCH_ENROLL","REGISTER_SEARCH","SEARCH","DELETE","GET_RESULT","CLOSE_SESSION","GET_PERSON","FILTER","COUNT_ANOMALIES","FIND_ANOMALIES","GET_ANOMALY","ASSIGN_ANOMALY","UNASSIGN_ANOMALY","TRUST_ENROLL","GET_TRANSACTION","CHANGE_PRIORITY","ADD_TO_REFERENCE","REMOVE_FROM_REFERENCE","REMOVE_KEYS","GET_PEOPLE_TRANSACTIONS","ANOMALY_ENROLL","GET_EXCEPTION_RESULT","QUALITY_ANALYSIS","FILTER_TRANSACTION","REGISTER_ENROLL","STOP_SERVICE","REGISTER_UL_BIOMETRIC","REMOVE_UL_BIOMETRIC","UPDATE_PERSON_BIOMETRIC","DISABLE_PERSON_TRANSACTION","TREAT_EXCEPTION","TREAT_ANOMALY"]}}}}}}
```

## The Biographic object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"Biographic":{"type":"object","properties":{"id":{"description":"ID of the biographic data being stored.\n\nBiobase Server biographics have their IDs prepended with `bs-`. For example, `bs-name` and `bs-surname`.\n","type":"string"},"value":{"description":"Value of the biographic data.","type":"string"}}}}}}
```

## The BioBaseBiographic object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"BioBaseBiographic":{"type":"object","properties":{"id":{"type":"string","description":"Biographic key."},"type":{"type":"string","description":"Biographic type. It can be TEXT or FACE.","enum":["TEXT","FACE"]},"value":{"type":"string","description":"Biographic value. Faces are encoded in Base64."}}}}}}
```

## The Biometric object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"Biometric":{"type":"object","oneOf":[{"$ref":"#/components/schemas/CONSOLIDATED_TEMPLATE"},{"$ref":"#/components/schemas/TEMPLATE"},{"$ref":"#/components/schemas/ORIGINAL"}],"discriminator":{"propertyName":"source"}},"CONSOLIDATED_TEMPLATE":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained.","type":"string","enum":["CONSOLIDATED_TEMPLATE"]},"type":{"description":"Type of the biometric data.","type":"string","enum":["FINGERPRINT","PALMPRINT","FOOTPRINT","FACE","IRIS","SIGNATURE","SEQUENCE_CONTROL","NEWBORN_PALMPRINT","OTHER"]},"format":{"description":"Format of the biometric data.","type":"string","enum":["PRIVATE","ISO","ANSI","UNKNOWN","EBTS_TYPE9"]},"properties":{"$ref":"#/components/schemas/BiometricProperties"},"index":{"description":"Identifies which biometric, of the specified type, is being sent.","type":"integer","format":"int32"},"content":{"description":"Base64 encoded biometric data.","type":"string"},"quality":{"description":"Given the quality of the extracted biometric template. The quality is unbounded and starts at 0.","type":"integer","format":"int32"}}},"BiometricProperties":{"type":"object","properties":{"width":{"description":"Width, in pixels, of the image. If 0, GBDS will try to extract this information from the image header.","type":"integer","format":"int32"},"height":{"description":"Height, in pixels, of the image. If 0, GBDS will try to extract this information from the image header.","type":"integer","format":"int32"},"resolution":{"description":"Image or template resolution.","type":"integer","format":"int32"},"ratio":{"description":"Proportion of the image.","type":"number","format":"double"},"matcherId":{"description":"ID of the Biometric Matcher to be used in verification and identification operations.","type":"integer","format":"int32"},"extractorId":{"description":"ID of the extractor to be used on the image.","type":"integer","format":"int32"}}},"TEMPLATE":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained.","type":"string","enum":["TEMPLATE"]},"type":{"description":"Type of the biometric data.","type":"string","enum":["FINGERPRINT","PALMPRINT","FOOTPRINT","FACE","IRIS","SIGNATURE","SEQUENCE_CONTROL","NEWBORN_PALMPRINT","OTHER"]},"format":{"description":"Format of the biometric data.","type":"string","enum":["PRIVATE","ISO","ANSI","UNKNOWN","EBTS_TYPE9"]},"properties":{"$ref":"#/components/schemas/BiometricProperties"},"index":{"description":"Identifies which biometric, of the specified type, is being sent.","type":"integer","format":"int32"},"content":{"description":"Base64 encoded biometric data.","type":"string"},"quality":{"description":"Given the quality of the extracted biometric template. The quality is unbounded and starts at 0.","type":"integer","format":"int32"}}},"ORIGINAL":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained.","type":"string","enum":["ORIGINAL"]},"type":{"description":"Type of the biometric data.","type":"string","enum":["FINGERPRINT","PALMPRINT","FOOTPRINT","FACE","IRIS","VOICE","SIGNATURE","SEQUENCE_CONTROL","NEWBORN_PALMPRINT","OTHER"]},"format":{"description":"Format of the biometric data.","type":"string","enum":["RAW","WSQ","JPEG","JPEG2000","PNG","TIFF","GIF","BMP","PCM","WAV","PRIVATE","ISO","ANSI","UNKNOWN","EBTS_TYPE9"]},"properties":{"$ref":"#/components/schemas/BiometricProperties"},"index":{"description":"Identifies which biometric, of the specified type, is being sent.","type":"integer","format":"int32"},"content":{"description":"Base64 encoded biometric data.","type":"string"},"quality":{"description":"Given the quality of the extracted biometric template. The quality is unbounded and starts at 0.","type":"integer","format":"int32"}}}}}}
```

## The ORIGINAL object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"ORIGINAL":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained.","type":"string","enum":["ORIGINAL"]},"type":{"description":"Type of the biometric data.","type":"string","enum":["FINGERPRINT","PALMPRINT","FOOTPRINT","FACE","IRIS","VOICE","SIGNATURE","SEQUENCE_CONTROL","NEWBORN_PALMPRINT","OTHER"]},"format":{"description":"Format of the biometric data.","type":"string","enum":["RAW","WSQ","JPEG","JPEG2000","PNG","TIFF","GIF","BMP","PCM","WAV","PRIVATE","ISO","ANSI","UNKNOWN","EBTS_TYPE9"]},"properties":{"$ref":"#/components/schemas/BiometricProperties"},"index":{"description":"Identifies which biometric, of the specified type, is being sent.","type":"integer","format":"int32"},"content":{"description":"Base64 encoded biometric data.","type":"string"},"quality":{"description":"Given the quality of the extracted biometric template. The quality is unbounded and starts at 0.","type":"integer","format":"int32"}}},"BiometricProperties":{"type":"object","properties":{"width":{"description":"Width, in pixels, of the image. If 0, GBDS will try to extract this information from the image header.","type":"integer","format":"int32"},"height":{"description":"Height, in pixels, of the image. If 0, GBDS will try to extract this information from the image header.","type":"integer","format":"int32"},"resolution":{"description":"Image or template resolution.","type":"integer","format":"int32"},"ratio":{"description":"Proportion of the image.","type":"number","format":"double"},"matcherId":{"description":"ID of the Biometric Matcher to be used in verification and identification operations.","type":"integer","format":"int32"},"extractorId":{"description":"ID of the extractor to be used on the image.","type":"integer","format":"int32"}}}}}}
```

## The TEMPLATE object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"TEMPLATE":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained.","type":"string","enum":["TEMPLATE"]},"type":{"description":"Type of the biometric data.","type":"string","enum":["FINGERPRINT","PALMPRINT","FOOTPRINT","FACE","IRIS","SIGNATURE","SEQUENCE_CONTROL","NEWBORN_PALMPRINT","OTHER"]},"format":{"description":"Format of the biometric data.","type":"string","enum":["PRIVATE","ISO","ANSI","UNKNOWN","EBTS_TYPE9"]},"properties":{"$ref":"#/components/schemas/BiometricProperties"},"index":{"description":"Identifies which biometric, of the specified type, is being sent.","type":"integer","format":"int32"},"content":{"description":"Base64 encoded biometric data.","type":"string"},"quality":{"description":"Given the quality of the extracted biometric template. The quality is unbounded and starts at 0.","type":"integer","format":"int32"}}},"BiometricProperties":{"type":"object","properties":{"width":{"description":"Width, in pixels, of the image. If 0, GBDS will try to extract this information from the image header.","type":"integer","format":"int32"},"height":{"description":"Height, in pixels, of the image. If 0, GBDS will try to extract this information from the image header.","type":"integer","format":"int32"},"resolution":{"description":"Image or template resolution.","type":"integer","format":"int32"},"ratio":{"description":"Proportion of the image.","type":"number","format":"double"},"matcherId":{"description":"ID of the Biometric Matcher to be used in verification and identification operations.","type":"integer","format":"int32"},"extractorId":{"description":"ID of the extractor to be used on the image.","type":"integer","format":"int32"}}}}}}
```

## The CONSOLIDATED\_TEMPLATE object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"CONSOLIDATED_TEMPLATE":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained.","type":"string","enum":["CONSOLIDATED_TEMPLATE"]},"type":{"description":"Type of the biometric data.","type":"string","enum":["FINGERPRINT","PALMPRINT","FOOTPRINT","FACE","IRIS","SIGNATURE","SEQUENCE_CONTROL","NEWBORN_PALMPRINT","OTHER"]},"format":{"description":"Format of the biometric data.","type":"string","enum":["PRIVATE","ISO","ANSI","UNKNOWN","EBTS_TYPE9"]},"properties":{"$ref":"#/components/schemas/BiometricProperties"},"index":{"description":"Identifies which biometric, of the specified type, is being sent.","type":"integer","format":"int32"},"content":{"description":"Base64 encoded biometric data.","type":"string"},"quality":{"description":"Given the quality of the extracted biometric template. The quality is unbounded and starts at 0.","type":"integer","format":"int32"}}},"BiometricProperties":{"type":"object","properties":{"width":{"description":"Width, in pixels, of the image. If 0, GBDS will try to extract this information from the image header.","type":"integer","format":"int32"},"height":{"description":"Height, in pixels, of the image. If 0, GBDS will try to extract this information from the image header.","type":"integer","format":"int32"},"resolution":{"description":"Image or template resolution.","type":"integer","format":"int32"},"ratio":{"description":"Proportion of the image.","type":"number","format":"double"},"matcherId":{"description":"ID of the Biometric Matcher to be used in verification and identification operations.","type":"integer","format":"int32"},"extractorId":{"description":"ID of the extractor to be used on the image.","type":"integer","format":"int32"}}}}}}
```

## The BiometricProperties object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"BiometricProperties":{"type":"object","properties":{"width":{"description":"Width, in pixels, of the image. If 0, GBDS will try to extract this information from the image header.","type":"integer","format":"int32"},"height":{"description":"Height, in pixels, of the image. If 0, GBDS will try to extract this information from the image header.","type":"integer","format":"int32"},"resolution":{"description":"Image or template resolution.","type":"integer","format":"int32"},"ratio":{"description":"Proportion of the image.","type":"number","format":"double"},"matcherId":{"description":"ID of the Biometric Matcher to be used in verification and identification operations.","type":"integer","format":"int32"},"extractorId":{"description":"ID of the extractor to be used on the image.","type":"integer","format":"int32"}}}}}}
```

## The BiometricValidation object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"BiometricValidation":{"type":"object","properties":{"timeout":{"description":"Time, in milliseconds, waiting for the completion of the operation. If this value is -1, then the method is fully synchronous. If the timeout value is 0, then the method is fully asynchronous. If>0, the call expires after this time (in milliseconds).","type":"integer","format":"int32"},"priority":{"description":"Priority of the enroll operation.","type":"string","enum":["GOD_PRIORITY","HIGHEST_PRIORITY","HIGHER_PRIORITY","HIGH_PRIORITY","DEFAULT_PRIORITY","LOW_PRIORITY","LOWER_PRIORITY","LOWEST_PRIORITY"]},"validationType":{"description":"Defines the type of biometric validation to be performed against the AFIS.","type":"string","enum":["SAME_FINGERS","ALL_FINGERS","CROSSED_WINDOW_TWEEZERS"]},"externalIDs":{"description":"List of externalIDs related to this transaction.","type":"array","items":{"$ref":"#/components/schemas/ExternalID"}},"labels":{"type":"string","enum":["ACCUMULATE","REPLACE"]},"liveness":{"description":"Flag to request liveness verification on query face image. If activated, a bonafide score will be returned on get transaction.","type":"boolean"},"biographicBase":{"$ref":"#/components/schemas/BiographicBaseFlags"}}},"ExternalID":{"type":"object","properties":{"name":{"description":"Name of the ID.","type":"string"},"key":{"description":"Value of the ID.","type":"string"}}},"BiographicBaseFlags":{"description":"Biographic database interaction configuration flags.","type":"object","properties":{"autoUpdate":{"description":"Update biographic base.\n\nIf absent, uses value of API config parameter `gbds.biographicBase.autoUpdate`.\n","type":"boolean"},"sendPguidAsKey":{"description":"Send PGUID as key on biographic base update.\n\nIf absent, uses value of API config parameter `gbds.biographicBase.sendPguidAsKey`.\n","type":"boolean"},"sendTguidAsKey":{"description":"Send TGUID as key on biographic base update.\n\nIf absent, uses value of API config parameter `gbds.biographicBase.sendTguidAsKey`.\n","type":"boolean"}}}}}}
```

## The UpdateBiometricValidation object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"UpdateBiometricValidation":{"type":"object","properties":{"timeout":{"description":"Time, in milliseconds, waiting for the completion of the operation. If this value is -1, then the method is fully synchronous. If the timeout value is 0, then the method is fully asynchronous. If>0, the call expires after this time (in milliseconds).","type":"integer","format":"int32"},"priority":{"description":"Priority of the update operation.","type":"string","enum":["GOD_PRIORITY","HIGHEST_PRIORITY","HIGHER_PRIORITY","HIGH_PRIORITY","DEFAULT_PRIORITY","LOW_PRIORITY","LOWER_PRIORITY","LOWEST_PRIORITY"]},"validationType":{"description":"Defines the type of biometric validation to be performed against the AFIS.","type":"string","enum":["SAME_FINGERS","ALL_FINGERS","CROSSED_WINDOW_TWEEZERS"]},"externalIDs":{"description":"List of externalIDs related to this transaction.","type":"array","items":{"$ref":"#/components/schemas/ExternalID"}},"labels":{"type":"string","enum":["ACCUMULATE","REPLACE"]},"liveness":{"description":"Flag to request liveness verification on query face image. If activated, a bonafide score will be returned on get transaction.","type":"boolean"},"biographicBase":{"$ref":"#/components/schemas/BiographicBaseFlags"}}},"ExternalID":{"type":"object","properties":{"name":{"description":"Name of the ID.","type":"string"},"key":{"description":"Value of the ID.","type":"string"}}},"BiographicBaseFlags":{"description":"Biographic database interaction configuration flags.","type":"object","properties":{"autoUpdate":{"description":"Update biographic base.\n\nIf absent, uses value of API config parameter `gbds.biographicBase.autoUpdate`.\n","type":"boolean"},"sendPguidAsKey":{"description":"Send PGUID as key on biographic base update.\n\nIf absent, uses value of API config parameter `gbds.biographicBase.sendPguidAsKey`.\n","type":"boolean"},"sendTguidAsKey":{"description":"Send TGUID as key on biographic base update.\n\nIf absent, uses value of API config parameter `gbds.biographicBase.sendTguidAsKey`.\n","type":"boolean"}}}}}}
```

## The ExternalID object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"ExternalID":{"type":"object","properties":{"name":{"description":"Name of the ID.","type":"string"},"key":{"description":"Value of the ID.","type":"string"}}}}}}
```

## The History object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"History":{"type":"object","properties":{"events":{"type":"array","items":{"$ref":"#/components/schemas/HistoryEvent"}}}},"HistoryEvent":{"required":["type"],"type":"object","properties":{"tguid":{"description":"Global unique ID of the transaction.","type":"string"},"timestamp":{"description":"Timestamp of event/transaction.","type":"integer","format":"int64"},"type":{"description":"Type of event/transaction.","type":"string"},"targetTguid":{"description":"Global unique ID of the transaction that was disabled.","type":"string"}},"discriminator":{"propertyName":"type"}}}}}
```

## The HistoryEvent object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"HistoryEvent":{"required":["type"],"type":"object","properties":{"tguid":{"description":"Global unique ID of the transaction.","type":"string"},"timestamp":{"description":"Timestamp of event/transaction.","type":"integer","format":"int64"},"type":{"description":"Type of event/transaction.","type":"string"},"targetTguid":{"description":"Global unique ID of the transaction that was disabled.","type":"string"}},"discriminator":{"propertyName":"type"}}}}}
```

## The Key object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"Key":{"type":"object","properties":{"id":{"description":"Name of entity identifier.","type":"string"},"value":{"description":"Value of entity identifier.","type":"string"}}}}}}
```

## The Person object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"Person":{"type":"object","properties":{"pguid":{"description":"Global unique ID of the Person. This attribute is assigned by the AFIS once the person is successfully enrolled","type":"string"},"lastEnrollTguid":{"description":"Global unique ID of the latest transaction on this Person.","type":"string"},"timestamp":{"description":"Timestamp of the latest transaction on this Person.","type":"integer","format":"int64"},"keys":{"type":"array","items":{"$ref":"#/components/schemas/Key"}},"biographics":{"type":"array","items":{"$ref":"#/components/schemas/Biographic"}},"biometric":{"type":"array","items":{"$ref":"#/components/schemas/Biometric"}},"auxiliaries":{"type":"array","items":{"$ref":"#/components/schemas/Biometric"}},"metadata":{"description":"Arbitrary data associated with the person.","type":"array","items":{"type":"string"}},"labels":{"description":"Arbitrary labels associated with a person, which can be used as filters for database queries.","uniqueItems":true,"type":"array","items":{"type":"string"}},"history":{"$ref":"#/components/schemas/History"},"biographicBaseStatus":{"$ref":"#/components/schemas/BiographicBaseStatus"}}},"Key":{"type":"object","properties":{"id":{"description":"Name of entity identifier.","type":"string"},"value":{"description":"Value of entity identifier.","type":"string"}}},"Biographic":{"type":"object","properties":{"id":{"description":"ID of the biographic data being stored.\n\nBiobase Server biographics have their IDs prepended with `bs-`. For example, `bs-name` and `bs-surname`.\n","type":"string"},"value":{"description":"Value of the biographic data.","type":"string"}}},"Biometric":{"type":"object","oneOf":[{"$ref":"#/components/schemas/CONSOLIDATED_TEMPLATE"},{"$ref":"#/components/schemas/TEMPLATE"},{"$ref":"#/components/schemas/ORIGINAL"}],"discriminator":{"propertyName":"source"}},"CONSOLIDATED_TEMPLATE":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained.","type":"string","enum":["CONSOLIDATED_TEMPLATE"]},"type":{"description":"Type of the biometric data.","type":"string","enum":["FINGERPRINT","PALMPRINT","FOOTPRINT","FACE","IRIS","SIGNATURE","SEQUENCE_CONTROL","NEWBORN_PALMPRINT","OTHER"]},"format":{"description":"Format of the biometric data.","type":"string","enum":["PRIVATE","ISO","ANSI","UNKNOWN","EBTS_TYPE9"]},"properties":{"$ref":"#/components/schemas/BiometricProperties"},"index":{"description":"Identifies which biometric, of the specified type, is being sent.","type":"integer","format":"int32"},"content":{"description":"Base64 encoded biometric data.","type":"string"},"quality":{"description":"Given the quality of the extracted biometric template. The quality is unbounded and starts at 0.","type":"integer","format":"int32"}}},"BiometricProperties":{"type":"object","properties":{"width":{"description":"Width, in pixels, of the image. If 0, GBDS will try to extract this information from the image header.","type":"integer","format":"int32"},"height":{"description":"Height, in pixels, of the image. If 0, GBDS will try to extract this information from the image header.","type":"integer","format":"int32"},"resolution":{"description":"Image or template resolution.","type":"integer","format":"int32"},"ratio":{"description":"Proportion of the image.","type":"number","format":"double"},"matcherId":{"description":"ID of the Biometric Matcher to be used in verification and identification operations.","type":"integer","format":"int32"},"extractorId":{"description":"ID of the extractor to be used on the image.","type":"integer","format":"int32"}}},"TEMPLATE":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained.","type":"string","enum":["TEMPLATE"]},"type":{"description":"Type of the biometric data.","type":"string","enum":["FINGERPRINT","PALMPRINT","FOOTPRINT","FACE","IRIS","SIGNATURE","SEQUENCE_CONTROL","NEWBORN_PALMPRINT","OTHER"]},"format":{"description":"Format of the biometric data.","type":"string","enum":["PRIVATE","ISO","ANSI","UNKNOWN","EBTS_TYPE9"]},"properties":{"$ref":"#/components/schemas/BiometricProperties"},"index":{"description":"Identifies which biometric, of the specified type, is being sent.","type":"integer","format":"int32"},"content":{"description":"Base64 encoded biometric data.","type":"string"},"quality":{"description":"Given the quality of the extracted biometric template. The quality is unbounded and starts at 0.","type":"integer","format":"int32"}}},"ORIGINAL":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained.","type":"string","enum":["ORIGINAL"]},"type":{"description":"Type of the biometric data.","type":"string","enum":["FINGERPRINT","PALMPRINT","FOOTPRINT","FACE","IRIS","VOICE","SIGNATURE","SEQUENCE_CONTROL","NEWBORN_PALMPRINT","OTHER"]},"format":{"description":"Format of the biometric data.","type":"string","enum":["RAW","WSQ","JPEG","JPEG2000","PNG","TIFF","GIF","BMP","PCM","WAV","PRIVATE","ISO","ANSI","UNKNOWN","EBTS_TYPE9"]},"properties":{"$ref":"#/components/schemas/BiometricProperties"},"index":{"description":"Identifies which biometric, of the specified type, is being sent.","type":"integer","format":"int32"},"content":{"description":"Base64 encoded biometric data.","type":"string"},"quality":{"description":"Given the quality of the extracted biometric template. The quality is unbounded and starts at 0.","type":"integer","format":"int32"}}},"History":{"type":"object","properties":{"events":{"type":"array","items":{"$ref":"#/components/schemas/HistoryEvent"}}}},"HistoryEvent":{"required":["type"],"type":"object","properties":{"tguid":{"description":"Global unique ID of the transaction.","type":"string"},"timestamp":{"description":"Timestamp of event/transaction.","type":"integer","format":"int64"},"type":{"description":"Type of event/transaction.","type":"string"},"targetTguid":{"description":"Global unique ID of the transaction that was disabled.","type":"string"}},"discriminator":{"propertyName":"type"}},"BiographicBaseStatus":{"description":"Status of the biographic base.\n- `UNAVAILABLE`: When all Biobase Servers are off.\n- `TIMEOUT`: When at least one Biobase Server is ON but the call timed out.\n- `UNAUTHORIZED`:\n  - If the **lookAllServers** conf is **ON**, it indicates that all running servers returned that the API authentication is unauthorized.\n  - If the **lookAllServers** conf is **OFF**, it indicates that the server that received the biographic request returned that the API authentication is unauthorized.\n- `INVALID_DATA`: The Biobase Server returned that the data request from the API is invalid. It is not supposed to happen if Biobase Server is implemented according to the Biographic Base API.\n- `NOT_FOUND`:\n  - If the **lookAllServers** conf is **ON**, it indicates that the person keys were not found on all Biobase Servers configured.\n  - If the **lookAllServers** conf is **OFF**, it indicates that person keys were not found on the server that received the biographic request.\n- `OK`: The Biobase Server returned biographics/face for the given person keys.\n","type":"string","enum":["UNAVAILABLE","TIMEOUT","UNAUTHORIZED","INVALID_DATA","NOT_FOUND","OK"]}}}}
```

## The PersonRequest object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"PersonRequest":{"type":"object","properties":{"timestamp":{"description":"Timestamp of the latest transaction on this Person.","type":"integer","format":"int64"},"keys":{"type":"array","items":{"$ref":"#/components/schemas/Key"}},"biographics":{"type":"array","items":{"$ref":"#/components/schemas/Biographic"}},"biometric":{"type":"array","items":{"$ref":"#/components/schemas/Biometric"}},"auxiliaries":{"type":"array","items":{"$ref":"#/components/schemas/Biometric"}},"metadata":{"description":"Arbitrary data associated with the person.","type":"string"},"labels":{"description":"Arbitrary labels associated with a person, which can be used as filters for database queries.","uniqueItems":true,"type":"array","items":{"type":"string"}}}},"Key":{"type":"object","properties":{"id":{"description":"Name of entity identifier.","type":"string"},"value":{"description":"Value of entity identifier.","type":"string"}}},"Biographic":{"type":"object","properties":{"id":{"description":"ID of the biographic data being stored.\n\nBiobase Server biographics have their IDs prepended with `bs-`. For example, `bs-name` and `bs-surname`.\n","type":"string"},"value":{"description":"Value of the biographic data.","type":"string"}}},"Biometric":{"type":"object","oneOf":[{"$ref":"#/components/schemas/CONSOLIDATED_TEMPLATE"},{"$ref":"#/components/schemas/TEMPLATE"},{"$ref":"#/components/schemas/ORIGINAL"}],"discriminator":{"propertyName":"source"}},"CONSOLIDATED_TEMPLATE":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained.","type":"string","enum":["CONSOLIDATED_TEMPLATE"]},"type":{"description":"Type of the biometric data.","type":"string","enum":["FINGERPRINT","PALMPRINT","FOOTPRINT","FACE","IRIS","SIGNATURE","SEQUENCE_CONTROL","NEWBORN_PALMPRINT","OTHER"]},"format":{"description":"Format of the biometric data.","type":"string","enum":["PRIVATE","ISO","ANSI","UNKNOWN","EBTS_TYPE9"]},"properties":{"$ref":"#/components/schemas/BiometricProperties"},"index":{"description":"Identifies which biometric, of the specified type, is being sent.","type":"integer","format":"int32"},"content":{"description":"Base64 encoded biometric data.","type":"string"},"quality":{"description":"Given the quality of the extracted biometric template. The quality is unbounded and starts at 0.","type":"integer","format":"int32"}}},"BiometricProperties":{"type":"object","properties":{"width":{"description":"Width, in pixels, of the image. If 0, GBDS will try to extract this information from the image header.","type":"integer","format":"int32"},"height":{"description":"Height, in pixels, of the image. If 0, GBDS will try to extract this information from the image header.","type":"integer","format":"int32"},"resolution":{"description":"Image or template resolution.","type":"integer","format":"int32"},"ratio":{"description":"Proportion of the image.","type":"number","format":"double"},"matcherId":{"description":"ID of the Biometric Matcher to be used in verification and identification operations.","type":"integer","format":"int32"},"extractorId":{"description":"ID of the extractor to be used on the image.","type":"integer","format":"int32"}}},"TEMPLATE":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained.","type":"string","enum":["TEMPLATE"]},"type":{"description":"Type of the biometric data.","type":"string","enum":["FINGERPRINT","PALMPRINT","FOOTPRINT","FACE","IRIS","SIGNATURE","SEQUENCE_CONTROL","NEWBORN_PALMPRINT","OTHER"]},"format":{"description":"Format of the biometric data.","type":"string","enum":["PRIVATE","ISO","ANSI","UNKNOWN","EBTS_TYPE9"]},"properties":{"$ref":"#/components/schemas/BiometricProperties"},"index":{"description":"Identifies which biometric, of the specified type, is being sent.","type":"integer","format":"int32"},"content":{"description":"Base64 encoded biometric data.","type":"string"},"quality":{"description":"Given the quality of the extracted biometric template. The quality is unbounded and starts at 0.","type":"integer","format":"int32"}}},"ORIGINAL":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained.","type":"string","enum":["ORIGINAL"]},"type":{"description":"Type of the biometric data.","type":"string","enum":["FINGERPRINT","PALMPRINT","FOOTPRINT","FACE","IRIS","VOICE","SIGNATURE","SEQUENCE_CONTROL","NEWBORN_PALMPRINT","OTHER"]},"format":{"description":"Format of the biometric data.","type":"string","enum":["RAW","WSQ","JPEG","JPEG2000","PNG","TIFF","GIF","BMP","PCM","WAV","PRIVATE","ISO","ANSI","UNKNOWN","EBTS_TYPE9"]},"properties":{"$ref":"#/components/schemas/BiometricProperties"},"index":{"description":"Identifies which biometric, of the specified type, is being sent.","type":"integer","format":"int32"},"content":{"description":"Base64 encoded biometric data.","type":"string"},"quality":{"description":"Given the quality of the extracted biometric template. The quality is unbounded and starts at 0.","type":"integer","format":"int32"}}}}}}
```

## The UpdatePeopleRequest object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"UpdatePeopleRequest":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PersonRequest"},"meta":{"$ref":"#/components/schemas/UpdateBiometricValidation"}}},"PersonRequest":{"type":"object","properties":{"timestamp":{"description":"Timestamp of the latest transaction on this Person.","type":"integer","format":"int64"},"keys":{"type":"array","items":{"$ref":"#/components/schemas/Key"}},"biographics":{"type":"array","items":{"$ref":"#/components/schemas/Biographic"}},"biometric":{"type":"array","items":{"$ref":"#/components/schemas/Biometric"}},"auxiliaries":{"type":"array","items":{"$ref":"#/components/schemas/Biometric"}},"metadata":{"description":"Arbitrary data associated with the person.","type":"string"},"labels":{"description":"Arbitrary labels associated with a person, which can be used as filters for database queries.","uniqueItems":true,"type":"array","items":{"type":"string"}}}},"Key":{"type":"object","properties":{"id":{"description":"Name of entity identifier.","type":"string"},"value":{"description":"Value of entity identifier.","type":"string"}}},"Biographic":{"type":"object","properties":{"id":{"description":"ID of the biographic data being stored.\n\nBiobase Server biographics have their IDs prepended with `bs-`. For example, `bs-name` and `bs-surname`.\n","type":"string"},"value":{"description":"Value of the biographic data.","type":"string"}}},"Biometric":{"type":"object","oneOf":[{"$ref":"#/components/schemas/CONSOLIDATED_TEMPLATE"},{"$ref":"#/components/schemas/TEMPLATE"},{"$ref":"#/components/schemas/ORIGINAL"}],"discriminator":{"propertyName":"source"}},"CONSOLIDATED_TEMPLATE":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained.","type":"string","enum":["CONSOLIDATED_TEMPLATE"]},"type":{"description":"Type of the biometric data.","type":"string","enum":["FINGERPRINT","PALMPRINT","FOOTPRINT","FACE","IRIS","SIGNATURE","SEQUENCE_CONTROL","NEWBORN_PALMPRINT","OTHER"]},"format":{"description":"Format of the biometric data.","type":"string","enum":["PRIVATE","ISO","ANSI","UNKNOWN","EBTS_TYPE9"]},"properties":{"$ref":"#/components/schemas/BiometricProperties"},"index":{"description":"Identifies which biometric, of the specified type, is being sent.","type":"integer","format":"int32"},"content":{"description":"Base64 encoded biometric data.","type":"string"},"quality":{"description":"Given the quality of the extracted biometric template. The quality is unbounded and starts at 0.","type":"integer","format":"int32"}}},"BiometricProperties":{"type":"object","properties":{"width":{"description":"Width, in pixels, of the image. If 0, GBDS will try to extract this information from the image header.","type":"integer","format":"int32"},"height":{"description":"Height, in pixels, of the image. If 0, GBDS will try to extract this information from the image header.","type":"integer","format":"int32"},"resolution":{"description":"Image or template resolution.","type":"integer","format":"int32"},"ratio":{"description":"Proportion of the image.","type":"number","format":"double"},"matcherId":{"description":"ID of the Biometric Matcher to be used in verification and identification operations.","type":"integer","format":"int32"},"extractorId":{"description":"ID of the extractor to be used on the image.","type":"integer","format":"int32"}}},"TEMPLATE":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained.","type":"string","enum":["TEMPLATE"]},"type":{"description":"Type of the biometric data.","type":"string","enum":["FINGERPRINT","PALMPRINT","FOOTPRINT","FACE","IRIS","SIGNATURE","SEQUENCE_CONTROL","NEWBORN_PALMPRINT","OTHER"]},"format":{"description":"Format of the biometric data.","type":"string","enum":["PRIVATE","ISO","ANSI","UNKNOWN","EBTS_TYPE9"]},"properties":{"$ref":"#/components/schemas/BiometricProperties"},"index":{"description":"Identifies which biometric, of the specified type, is being sent.","type":"integer","format":"int32"},"content":{"description":"Base64 encoded biometric data.","type":"string"},"quality":{"description":"Given the quality of the extracted biometric template. The quality is unbounded and starts at 0.","type":"integer","format":"int32"}}},"ORIGINAL":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained.","type":"string","enum":["ORIGINAL"]},"type":{"description":"Type of the biometric data.","type":"string","enum":["FINGERPRINT","PALMPRINT","FOOTPRINT","FACE","IRIS","VOICE","SIGNATURE","SEQUENCE_CONTROL","NEWBORN_PALMPRINT","OTHER"]},"format":{"description":"Format of the biometric data.","type":"string","enum":["RAW","WSQ","JPEG","JPEG2000","PNG","TIFF","GIF","BMP","PCM","WAV","PRIVATE","ISO","ANSI","UNKNOWN","EBTS_TYPE9"]},"properties":{"$ref":"#/components/schemas/BiometricProperties"},"index":{"description":"Identifies which biometric, of the specified type, is being sent.","type":"integer","format":"int32"},"content":{"description":"Base64 encoded biometric data.","type":"string"},"quality":{"description":"Given the quality of the extracted biometric template. The quality is unbounded and starts at 0.","type":"integer","format":"int32"}}},"UpdateBiometricValidation":{"type":"object","properties":{"timeout":{"description":"Time, in milliseconds, waiting for the completion of the operation. If this value is -1, then the method is fully synchronous. If the timeout value is 0, then the method is fully asynchronous. If>0, the call expires after this time (in milliseconds).","type":"integer","format":"int32"},"priority":{"description":"Priority of the update operation.","type":"string","enum":["GOD_PRIORITY","HIGHEST_PRIORITY","HIGHER_PRIORITY","HIGH_PRIORITY","DEFAULT_PRIORITY","LOW_PRIORITY","LOWER_PRIORITY","LOWEST_PRIORITY"]},"validationType":{"description":"Defines the type of biometric validation to be performed against the AFIS.","type":"string","enum":["SAME_FINGERS","ALL_FINGERS","CROSSED_WINDOW_TWEEZERS"]},"externalIDs":{"description":"List of externalIDs related to this transaction.","type":"array","items":{"$ref":"#/components/schemas/ExternalID"}},"labels":{"type":"string","enum":["ACCUMULATE","REPLACE"]},"liveness":{"description":"Flag to request liveness verification on query face image. If activated, a bonafide score will be returned on get transaction.","type":"boolean"},"biographicBase":{"$ref":"#/components/schemas/BiographicBaseFlags"}}},"ExternalID":{"type":"object","properties":{"name":{"description":"Name of the ID.","type":"string"},"key":{"description":"Value of the ID.","type":"string"}}},"BiographicBaseFlags":{"description":"Biographic database interaction configuration flags.","type":"object","properties":{"autoUpdate":{"description":"Update biographic base.\n\nIf absent, uses value of API config parameter `gbds.biographicBase.autoUpdate`.\n","type":"boolean"},"sendPguidAsKey":{"description":"Send PGUID as key on biographic base update.\n\nIf absent, uses value of API config parameter `gbds.biographicBase.sendPguidAsKey`.\n","type":"boolean"},"sendTguidAsKey":{"description":"Send TGUID as key on biographic base update.\n\nIf absent, uses value of API config parameter `gbds.biographicBase.sendTguidAsKey`.\n","type":"boolean"}}}}}}
```

## The EnrollResponse object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"EnrollResponse":{"type":"object","properties":{"data":{"type":"object","properties":{"status":{"description":"Status of the enroll transaction.","type":"string","enum":["ENQUEUED","PROCESSING","ENROLLED","EXCEPTION","FAILED","PENDING","REFUSED"]},"tguid":{"description":"Global unique id of the transaction.","type":"string"},"biographicBaseStatus":{"$ref":"#/components/schemas/BiographicBaseStatus"}}}}},"BiographicBaseStatus":{"description":"Status of the biographic base.\n- `UNAVAILABLE`: When all Biobase Servers are off.\n- `TIMEOUT`: When at least one Biobase Server is ON but the call timed out.\n- `UNAUTHORIZED`:\n  - If the **lookAllServers** conf is **ON**, it indicates that all running servers returned that the API authentication is unauthorized.\n  - If the **lookAllServers** conf is **OFF**, it indicates that the server that received the biographic request returned that the API authentication is unauthorized.\n- `INVALID_DATA`: The Biobase Server returned that the data request from the API is invalid. It is not supposed to happen if Biobase Server is implemented according to the Biographic Base API.\n- `NOT_FOUND`:\n  - If the **lookAllServers** conf is **ON**, it indicates that the person keys were not found on all Biobase Servers configured.\n  - If the **lookAllServers** conf is **OFF**, it indicates that person keys were not found on the server that received the biographic request.\n- `OK`: The Biobase Server returned biographics/face for the given person keys.\n","type":"string","enum":["UNAVAILABLE","TIMEOUT","UNAUTHORIZED","INVALID_DATA","NOT_FOUND","OK"]}}}}
```

## The GetPeopleResponse object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"GetPeopleResponse":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/Person"}}},"Person":{"type":"object","properties":{"pguid":{"description":"Global unique ID of the Person. This attribute is assigned by the AFIS once the person is successfully enrolled","type":"string"},"lastEnrollTguid":{"description":"Global unique ID of the latest transaction on this Person.","type":"string"},"timestamp":{"description":"Timestamp of the latest transaction on this Person.","type":"integer","format":"int64"},"keys":{"type":"array","items":{"$ref":"#/components/schemas/Key"}},"biographics":{"type":"array","items":{"$ref":"#/components/schemas/Biographic"}},"biometric":{"type":"array","items":{"$ref":"#/components/schemas/Biometric"}},"auxiliaries":{"type":"array","items":{"$ref":"#/components/schemas/Biometric"}},"metadata":{"description":"Arbitrary data associated with the person.","type":"array","items":{"type":"string"}},"labels":{"description":"Arbitrary labels associated with a person, which can be used as filters for database queries.","uniqueItems":true,"type":"array","items":{"type":"string"}},"history":{"$ref":"#/components/schemas/History"},"biographicBaseStatus":{"$ref":"#/components/schemas/BiographicBaseStatus"}}},"Key":{"type":"object","properties":{"id":{"description":"Name of entity identifier.","type":"string"},"value":{"description":"Value of entity identifier.","type":"string"}}},"Biographic":{"type":"object","properties":{"id":{"description":"ID of the biographic data being stored.\n\nBiobase Server biographics have their IDs prepended with `bs-`. For example, `bs-name` and `bs-surname`.\n","type":"string"},"value":{"description":"Value of the biographic data.","type":"string"}}},"Biometric":{"type":"object","oneOf":[{"$ref":"#/components/schemas/CONSOLIDATED_TEMPLATE"},{"$ref":"#/components/schemas/TEMPLATE"},{"$ref":"#/components/schemas/ORIGINAL"}],"discriminator":{"propertyName":"source"}},"CONSOLIDATED_TEMPLATE":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained.","type":"string","enum":["CONSOLIDATED_TEMPLATE"]},"type":{"description":"Type of the biometric data.","type":"string","enum":["FINGERPRINT","PALMPRINT","FOOTPRINT","FACE","IRIS","SIGNATURE","SEQUENCE_CONTROL","NEWBORN_PALMPRINT","OTHER"]},"format":{"description":"Format of the biometric data.","type":"string","enum":["PRIVATE","ISO","ANSI","UNKNOWN","EBTS_TYPE9"]},"properties":{"$ref":"#/components/schemas/BiometricProperties"},"index":{"description":"Identifies which biometric, of the specified type, is being sent.","type":"integer","format":"int32"},"content":{"description":"Base64 encoded biometric data.","type":"string"},"quality":{"description":"Given the quality of the extracted biometric template. The quality is unbounded and starts at 0.","type":"integer","format":"int32"}}},"BiometricProperties":{"type":"object","properties":{"width":{"description":"Width, in pixels, of the image. If 0, GBDS will try to extract this information from the image header.","type":"integer","format":"int32"},"height":{"description":"Height, in pixels, of the image. If 0, GBDS will try to extract this information from the image header.","type":"integer","format":"int32"},"resolution":{"description":"Image or template resolution.","type":"integer","format":"int32"},"ratio":{"description":"Proportion of the image.","type":"number","format":"double"},"matcherId":{"description":"ID of the Biometric Matcher to be used in verification and identification operations.","type":"integer","format":"int32"},"extractorId":{"description":"ID of the extractor to be used on the image.","type":"integer","format":"int32"}}},"TEMPLATE":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained.","type":"string","enum":["TEMPLATE"]},"type":{"description":"Type of the biometric data.","type":"string","enum":["FINGERPRINT","PALMPRINT","FOOTPRINT","FACE","IRIS","SIGNATURE","SEQUENCE_CONTROL","NEWBORN_PALMPRINT","OTHER"]},"format":{"description":"Format of the biometric data.","type":"string","enum":["PRIVATE","ISO","ANSI","UNKNOWN","EBTS_TYPE9"]},"properties":{"$ref":"#/components/schemas/BiometricProperties"},"index":{"description":"Identifies which biometric, of the specified type, is being sent.","type":"integer","format":"int32"},"content":{"description":"Base64 encoded biometric data.","type":"string"},"quality":{"description":"Given the quality of the extracted biometric template. The quality is unbounded and starts at 0.","type":"integer","format":"int32"}}},"ORIGINAL":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained.","type":"string","enum":["ORIGINAL"]},"type":{"description":"Type of the biometric data.","type":"string","enum":["FINGERPRINT","PALMPRINT","FOOTPRINT","FACE","IRIS","VOICE","SIGNATURE","SEQUENCE_CONTROL","NEWBORN_PALMPRINT","OTHER"]},"format":{"description":"Format of the biometric data.","type":"string","enum":["RAW","WSQ","JPEG","JPEG2000","PNG","TIFF","GIF","BMP","PCM","WAV","PRIVATE","ISO","ANSI","UNKNOWN","EBTS_TYPE9"]},"properties":{"$ref":"#/components/schemas/BiometricProperties"},"index":{"description":"Identifies which biometric, of the specified type, is being sent.","type":"integer","format":"int32"},"content":{"description":"Base64 encoded biometric data.","type":"string"},"quality":{"description":"Given the quality of the extracted biometric template. The quality is unbounded and starts at 0.","type":"integer","format":"int32"}}},"History":{"type":"object","properties":{"events":{"type":"array","items":{"$ref":"#/components/schemas/HistoryEvent"}}}},"HistoryEvent":{"required":["type"],"type":"object","properties":{"tguid":{"description":"Global unique ID of the transaction.","type":"string"},"timestamp":{"description":"Timestamp of event/transaction.","type":"integer","format":"int64"},"type":{"description":"Type of event/transaction.","type":"string"},"targetTguid":{"description":"Global unique ID of the transaction that was disabled.","type":"string"}},"discriminator":{"propertyName":"type"}},"BiographicBaseStatus":{"description":"Status of the biographic base.\n- `UNAVAILABLE`: When all Biobase Servers are off.\n- `TIMEOUT`: When at least one Biobase Server is ON but the call timed out.\n- `UNAUTHORIZED`:\n  - If the **lookAllServers** conf is **ON**, it indicates that all running servers returned that the API authentication is unauthorized.\n  - If the **lookAllServers** conf is **OFF**, it indicates that the server that received the biographic request returned that the API authentication is unauthorized.\n- `INVALID_DATA`: The Biobase Server returned that the data request from the API is invalid. It is not supposed to happen if Biobase Server is implemented according to the Biographic Base API.\n- `NOT_FOUND`:\n  - If the **lookAllServers** conf is **ON**, it indicates that the person keys were not found on all Biobase Servers configured.\n  - If the **lookAllServers** conf is **OFF**, it indicates that person keys were not found on the server that received the biographic request.\n- `OK`: The Biobase Server returned biographics/face for the given person keys.\n","type":"string","enum":["UNAVAILABLE","TIMEOUT","UNAUTHORIZED","INVALID_DATA","NOT_FOUND","OK"]}}}}
```

## The CreatePeopleRequest object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"CreatePeopleRequest":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PersonRequest"},"meta":{"$ref":"#/components/schemas/BiometricValidation"}}},"PersonRequest":{"type":"object","properties":{"timestamp":{"description":"Timestamp of the latest transaction on this Person.","type":"integer","format":"int64"},"keys":{"type":"array","items":{"$ref":"#/components/schemas/Key"}},"biographics":{"type":"array","items":{"$ref":"#/components/schemas/Biographic"}},"biometric":{"type":"array","items":{"$ref":"#/components/schemas/Biometric"}},"auxiliaries":{"type":"array","items":{"$ref":"#/components/schemas/Biometric"}},"metadata":{"description":"Arbitrary data associated with the person.","type":"string"},"labels":{"description":"Arbitrary labels associated with a person, which can be used as filters for database queries.","uniqueItems":true,"type":"array","items":{"type":"string"}}}},"Key":{"type":"object","properties":{"id":{"description":"Name of entity identifier.","type":"string"},"value":{"description":"Value of entity identifier.","type":"string"}}},"Biographic":{"type":"object","properties":{"id":{"description":"ID of the biographic data being stored.\n\nBiobase Server biographics have their IDs prepended with `bs-`. For example, `bs-name` and `bs-surname`.\n","type":"string"},"value":{"description":"Value of the biographic data.","type":"string"}}},"Biometric":{"type":"object","oneOf":[{"$ref":"#/components/schemas/CONSOLIDATED_TEMPLATE"},{"$ref":"#/components/schemas/TEMPLATE"},{"$ref":"#/components/schemas/ORIGINAL"}],"discriminator":{"propertyName":"source"}},"CONSOLIDATED_TEMPLATE":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained.","type":"string","enum":["CONSOLIDATED_TEMPLATE"]},"type":{"description":"Type of the biometric data.","type":"string","enum":["FINGERPRINT","PALMPRINT","FOOTPRINT","FACE","IRIS","SIGNATURE","SEQUENCE_CONTROL","NEWBORN_PALMPRINT","OTHER"]},"format":{"description":"Format of the biometric data.","type":"string","enum":["PRIVATE","ISO","ANSI","UNKNOWN","EBTS_TYPE9"]},"properties":{"$ref":"#/components/schemas/BiometricProperties"},"index":{"description":"Identifies which biometric, of the specified type, is being sent.","type":"integer","format":"int32"},"content":{"description":"Base64 encoded biometric data.","type":"string"},"quality":{"description":"Given the quality of the extracted biometric template. The quality is unbounded and starts at 0.","type":"integer","format":"int32"}}},"BiometricProperties":{"type":"object","properties":{"width":{"description":"Width, in pixels, of the image. If 0, GBDS will try to extract this information from the image header.","type":"integer","format":"int32"},"height":{"description":"Height, in pixels, of the image. If 0, GBDS will try to extract this information from the image header.","type":"integer","format":"int32"},"resolution":{"description":"Image or template resolution.","type":"integer","format":"int32"},"ratio":{"description":"Proportion of the image.","type":"number","format":"double"},"matcherId":{"description":"ID of the Biometric Matcher to be used in verification and identification operations.","type":"integer","format":"int32"},"extractorId":{"description":"ID of the extractor to be used on the image.","type":"integer","format":"int32"}}},"TEMPLATE":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained.","type":"string","enum":["TEMPLATE"]},"type":{"description":"Type of the biometric data.","type":"string","enum":["FINGERPRINT","PALMPRINT","FOOTPRINT","FACE","IRIS","SIGNATURE","SEQUENCE_CONTROL","NEWBORN_PALMPRINT","OTHER"]},"format":{"description":"Format of the biometric data.","type":"string","enum":["PRIVATE","ISO","ANSI","UNKNOWN","EBTS_TYPE9"]},"properties":{"$ref":"#/components/schemas/BiometricProperties"},"index":{"description":"Identifies which biometric, of the specified type, is being sent.","type":"integer","format":"int32"},"content":{"description":"Base64 encoded biometric data.","type":"string"},"quality":{"description":"Given the quality of the extracted biometric template. The quality is unbounded and starts at 0.","type":"integer","format":"int32"}}},"ORIGINAL":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained.","type":"string","enum":["ORIGINAL"]},"type":{"description":"Type of the biometric data.","type":"string","enum":["FINGERPRINT","PALMPRINT","FOOTPRINT","FACE","IRIS","VOICE","SIGNATURE","SEQUENCE_CONTROL","NEWBORN_PALMPRINT","OTHER"]},"format":{"description":"Format of the biometric data.","type":"string","enum":["RAW","WSQ","JPEG","JPEG2000","PNG","TIFF","GIF","BMP","PCM","WAV","PRIVATE","ISO","ANSI","UNKNOWN","EBTS_TYPE9"]},"properties":{"$ref":"#/components/schemas/BiometricProperties"},"index":{"description":"Identifies which biometric, of the specified type, is being sent.","type":"integer","format":"int32"},"content":{"description":"Base64 encoded biometric data.","type":"string"},"quality":{"description":"Given the quality of the extracted biometric template. The quality is unbounded and starts at 0.","type":"integer","format":"int32"}}},"BiometricValidation":{"type":"object","properties":{"timeout":{"description":"Time, in milliseconds, waiting for the completion of the operation. If this value is -1, then the method is fully synchronous. If the timeout value is 0, then the method is fully asynchronous. If>0, the call expires after this time (in milliseconds).","type":"integer","format":"int32"},"priority":{"description":"Priority of the enroll operation.","type":"string","enum":["GOD_PRIORITY","HIGHEST_PRIORITY","HIGHER_PRIORITY","HIGH_PRIORITY","DEFAULT_PRIORITY","LOW_PRIORITY","LOWER_PRIORITY","LOWEST_PRIORITY"]},"validationType":{"description":"Defines the type of biometric validation to be performed against the AFIS.","type":"string","enum":["SAME_FINGERS","ALL_FINGERS","CROSSED_WINDOW_TWEEZERS"]},"externalIDs":{"description":"List of externalIDs related to this transaction.","type":"array","items":{"$ref":"#/components/schemas/ExternalID"}},"labels":{"type":"string","enum":["ACCUMULATE","REPLACE"]},"liveness":{"description":"Flag to request liveness verification on query face image. If activated, a bonafide score will be returned on get transaction.","type":"boolean"},"biographicBase":{"$ref":"#/components/schemas/BiographicBaseFlags"}}},"ExternalID":{"type":"object","properties":{"name":{"description":"Name of the ID.","type":"string"},"key":{"description":"Value of the ID.","type":"string"}}},"BiographicBaseFlags":{"description":"Biographic database interaction configuration flags.","type":"object","properties":{"autoUpdate":{"description":"Update biographic base.\n\nIf absent, uses value of API config parameter `gbds.biographicBase.autoUpdate`.\n","type":"boolean"},"sendPguidAsKey":{"description":"Send PGUID as key on biographic base update.\n\nIf absent, uses value of API config parameter `gbds.biographicBase.sendPguidAsKey`.\n","type":"boolean"},"sendTguidAsKey":{"description":"Send TGUID as key on biographic base update.\n\nIf absent, uses value of API config parameter `gbds.biographicBase.sendTguidAsKey`.\n","type":"boolean"}}}}}}
```

## The ListPeopleRequest object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"ListPeopleRequest":{"type":"object","properties":{"data":{"type":"object","properties":{"personFields":{"description":"Defines the return information.","uniqueItems":true,"type":"array","items":{"type":"string","enum":["BIOMETRIC","AUXILIARIES","KEYS","BIOGRAPHICS","LABELS","METADATA","BASIC_FIELDS","NO_FIELDS","ALL_FIELDS"]}},"pguids":{"description":"This field is a array of PGUIDs.","type":"array","items":{"type":"string"}},"pageIndex":{"description":"Used for paging the result. Given the list, A, of matched People; pageIndex determines which page of A, of size pageSize, to be returned in the response.","type":"integer","format":"int64"},"pageSize":{"description":"Number of people, starting from first, to be returned in the response.","type":"integer"},"restrictions":{"description":"Search restrictions, as key, biographic, label, date, and metadata.","type":"array","items":{"anyOf":[{"$ref":"#/components/schemas/RestrictionBiographic"},{"$ref":"#/components/schemas/RestrictionDate"},{"$ref":"#/components/schemas/RestrictionKey"},{"$ref":"#/components/schemas/RestrictionLabel"}]}},"operator":{"description":"Logical operator used in the request.","type":"string","enum":["AND","OR"]},"includeAnomalies":{"description":"Whether to match People with anomalies.","type":"boolean"},"paginationCount":{"description":"Defines if total count on pagination will be on or off. It overwrites the value of gbds.peopleList.countFromRDB setting in the configuration file.","type":"boolean"},"biographicBase":{"description":"Determines if the API will try to get biographics from the Biobase Server or not.","type":"boolean"}}}}},"RestrictionBiographic":{"type":"object","properties":{"type":{"description":"Value MUST be BIOGRAPHIC","type":"string","default":"BIOGRAPHIC"},"id":{"type":"string"},"value":{"type":"string"},"exists":{"type":"boolean"},"matchMode":{"type":"string","default":"EXACT","enum":["START","EXACT","ANYWHERE","END","NOT_EQUALS"]}}},"RestrictionDate":{"type":"object","properties":{"type":{"description":"Value MUST be DATE.","type":"string","default":"DATE"},"startDate":{"description":"Start time. Must be in milliseconds.","type":"integer"},"endDate":{"description":"End time. Must be in milliseconds.","type":"integer"}}},"RestrictionKey":{"type":"object","properties":{"type":{"description":"Value MUST be KEY.","type":"string","default":"KEY"},"id":{"type":"string"},"value":{"type":"string"},"exists":{"type":"boolean"},"matchMode":{"type":"string","default":"EXACT","enum":["START","EXACT","ANYWHERE","END","NOT_EQUALS"]}}},"RestrictionLabel":{"type":"object","properties":{"type":{"description":"Value MUST be LABEL.","type":"string","default":"LABEL"},"label":{"type":"string"},"exists":{"type":"boolean"}}}}}}
```

## The PersonFieldsCollection object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"PersonFieldsCollection":{"description":"Defines the return information.","uniqueItems":true,"type":"array","items":{"type":"string","enum":["BIOMETRIC","AUXILIARIES","KEYS","BIOGRAPHICS","LABELS","METADATA","BASIC_FIELDS","NO_FIELDS","ALL_FIELDS"]}}}}}
```

## The RestrictionBiographic object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"RestrictionBiographic":{"type":"object","properties":{"type":{"description":"Value MUST be BIOGRAPHIC","type":"string","default":"BIOGRAPHIC"},"id":{"type":"string"},"value":{"type":"string"},"exists":{"type":"boolean"},"matchMode":{"type":"string","default":"EXACT","enum":["START","EXACT","ANYWHERE","END","NOT_EQUALS"]}}}}}}
```

## The RestrictionDate object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"RestrictionDate":{"type":"object","properties":{"type":{"description":"Value MUST be DATE.","type":"string","default":"DATE"},"startDate":{"description":"Start time. Must be in milliseconds.","type":"integer"},"endDate":{"description":"End time. Must be in milliseconds.","type":"integer"}}}}}}
```

## The RestrictionKey object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"RestrictionKey":{"type":"object","properties":{"type":{"description":"Value MUST be KEY.","type":"string","default":"KEY"},"id":{"type":"string"},"value":{"type":"string"},"exists":{"type":"boolean"},"matchMode":{"type":"string","default":"EXACT","enum":["START","EXACT","ANYWHERE","END","NOT_EQUALS"]}}}}}}
```

## The RestrictionLabel object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"RestrictionLabel":{"type":"object","properties":{"type":{"description":"Value MUST be LABEL.","type":"string","default":"LABEL"},"label":{"type":"string"},"exists":{"type":"boolean"}}}}}}
```

## The ListPeopleResponse object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"ListPeopleResponse":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/Person"}},"pagination":{"oneOf":[{"$ref":"#/components/schemas/Pagination"},{"$ref":"#/components/schemas/PaginationOff"}]}}},"Person":{"type":"object","properties":{"pguid":{"description":"Global unique ID of the Person. This attribute is assigned by the AFIS once the person is successfully enrolled","type":"string"},"lastEnrollTguid":{"description":"Global unique ID of the latest transaction on this Person.","type":"string"},"timestamp":{"description":"Timestamp of the latest transaction on this Person.","type":"integer","format":"int64"},"keys":{"type":"array","items":{"$ref":"#/components/schemas/Key"}},"biographics":{"type":"array","items":{"$ref":"#/components/schemas/Biographic"}},"biometric":{"type":"array","items":{"$ref":"#/components/schemas/Biometric"}},"auxiliaries":{"type":"array","items":{"$ref":"#/components/schemas/Biometric"}},"metadata":{"description":"Arbitrary data associated with the person.","type":"array","items":{"type":"string"}},"labels":{"description":"Arbitrary labels associated with a person, which can be used as filters for database queries.","uniqueItems":true,"type":"array","items":{"type":"string"}},"history":{"$ref":"#/components/schemas/History"},"biographicBaseStatus":{"$ref":"#/components/schemas/BiographicBaseStatus"}}},"Key":{"type":"object","properties":{"id":{"description":"Name of entity identifier.","type":"string"},"value":{"description":"Value of entity identifier.","type":"string"}}},"Biographic":{"type":"object","properties":{"id":{"description":"ID of the biographic data being stored.\n\nBiobase Server biographics have their IDs prepended with `bs-`. For example, `bs-name` and `bs-surname`.\n","type":"string"},"value":{"description":"Value of the biographic data.","type":"string"}}},"Biometric":{"type":"object","oneOf":[{"$ref":"#/components/schemas/CONSOLIDATED_TEMPLATE"},{"$ref":"#/components/schemas/TEMPLATE"},{"$ref":"#/components/schemas/ORIGINAL"}],"discriminator":{"propertyName":"source"}},"CONSOLIDATED_TEMPLATE":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained.","type":"string","enum":["CONSOLIDATED_TEMPLATE"]},"type":{"description":"Type of the biometric data.","type":"string","enum":["FINGERPRINT","PALMPRINT","FOOTPRINT","FACE","IRIS","SIGNATURE","SEQUENCE_CONTROL","NEWBORN_PALMPRINT","OTHER"]},"format":{"description":"Format of the biometric data.","type":"string","enum":["PRIVATE","ISO","ANSI","UNKNOWN","EBTS_TYPE9"]},"properties":{"$ref":"#/components/schemas/BiometricProperties"},"index":{"description":"Identifies which biometric, of the specified type, is being sent.","type":"integer","format":"int32"},"content":{"description":"Base64 encoded biometric data.","type":"string"},"quality":{"description":"Given the quality of the extracted biometric template. The quality is unbounded and starts at 0.","type":"integer","format":"int32"}}},"BiometricProperties":{"type":"object","properties":{"width":{"description":"Width, in pixels, of the image. If 0, GBDS will try to extract this information from the image header.","type":"integer","format":"int32"},"height":{"description":"Height, in pixels, of the image. If 0, GBDS will try to extract this information from the image header.","type":"integer","format":"int32"},"resolution":{"description":"Image or template resolution.","type":"integer","format":"int32"},"ratio":{"description":"Proportion of the image.","type":"number","format":"double"},"matcherId":{"description":"ID of the Biometric Matcher to be used in verification and identification operations.","type":"integer","format":"int32"},"extractorId":{"description":"ID of the extractor to be used on the image.","type":"integer","format":"int32"}}},"TEMPLATE":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained.","type":"string","enum":["TEMPLATE"]},"type":{"description":"Type of the biometric data.","type":"string","enum":["FINGERPRINT","PALMPRINT","FOOTPRINT","FACE","IRIS","SIGNATURE","SEQUENCE_CONTROL","NEWBORN_PALMPRINT","OTHER"]},"format":{"description":"Format of the biometric data.","type":"string","enum":["PRIVATE","ISO","ANSI","UNKNOWN","EBTS_TYPE9"]},"properties":{"$ref":"#/components/schemas/BiometricProperties"},"index":{"description":"Identifies which biometric, of the specified type, is being sent.","type":"integer","format":"int32"},"content":{"description":"Base64 encoded biometric data.","type":"string"},"quality":{"description":"Given the quality of the extracted biometric template. The quality is unbounded and starts at 0.","type":"integer","format":"int32"}}},"ORIGINAL":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained.","type":"string","enum":["ORIGINAL"]},"type":{"description":"Type of the biometric data.","type":"string","enum":["FINGERPRINT","PALMPRINT","FOOTPRINT","FACE","IRIS","VOICE","SIGNATURE","SEQUENCE_CONTROL","NEWBORN_PALMPRINT","OTHER"]},"format":{"description":"Format of the biometric data.","type":"string","enum":["RAW","WSQ","JPEG","JPEG2000","PNG","TIFF","GIF","BMP","PCM","WAV","PRIVATE","ISO","ANSI","UNKNOWN","EBTS_TYPE9"]},"properties":{"$ref":"#/components/schemas/BiometricProperties"},"index":{"description":"Identifies which biometric, of the specified type, is being sent.","type":"integer","format":"int32"},"content":{"description":"Base64 encoded biometric data.","type":"string"},"quality":{"description":"Given the quality of the extracted biometric template. The quality is unbounded and starts at 0.","type":"integer","format":"int32"}}},"History":{"type":"object","properties":{"events":{"type":"array","items":{"$ref":"#/components/schemas/HistoryEvent"}}}},"HistoryEvent":{"required":["type"],"type":"object","properties":{"tguid":{"description":"Global unique ID of the transaction.","type":"string"},"timestamp":{"description":"Timestamp of event/transaction.","type":"integer","format":"int64"},"type":{"description":"Type of event/transaction.","type":"string"},"targetTguid":{"description":"Global unique ID of the transaction that was disabled.","type":"string"}},"discriminator":{"propertyName":"type"}},"BiographicBaseStatus":{"description":"Status of the biographic base.\n- `UNAVAILABLE`: When all Biobase Servers are off.\n- `TIMEOUT`: When at least one Biobase Server is ON but the call timed out.\n- `UNAUTHORIZED`:\n  - If the **lookAllServers** conf is **ON**, it indicates that all running servers returned that the API authentication is unauthorized.\n  - If the **lookAllServers** conf is **OFF**, it indicates that the server that received the biographic request returned that the API authentication is unauthorized.\n- `INVALID_DATA`: The Biobase Server returned that the data request from the API is invalid. It is not supposed to happen if Biobase Server is implemented according to the Biographic Base API.\n- `NOT_FOUND`:\n  - If the **lookAllServers** conf is **ON**, it indicates that the person keys were not found on all Biobase Servers configured.\n  - If the **lookAllServers** conf is **OFF**, it indicates that person keys were not found on the server that received the biographic request.\n- `OK`: The Biobase Server returned biographics/face for the given person keys.\n","type":"string","enum":["UNAVAILABLE","TIMEOUT","UNAUTHORIZED","INVALID_DATA","NOT_FOUND","OK"]},"Pagination":{"type":"object","properties":{"total":{"description":"Total number of elements that matched the selection criteria.","type":"integer","format":"int64"},"count":{"description":"Number of elements in the response.","type":"integer","format":"int32"},"pageSize":{"description":"Size of the page.","type":"integer","format":"int32"},"currentPage":{"description":"Number of the current page.","type":"integer","format":"int64"},"totalPages":{"description":"Number of total pages.","type":"integer","format":"int64"}}},"PaginationOff":{"type":"object","properties":{"count":{"description":"Number of elements in the response.","type":"integer","format":"int32"},"pageSize":{"description":"Size of the page.","type":"integer","format":"int32"},"currentPage":{"description":"Number of the current page.","type":"integer","format":"int64"}}}}}}
```

## The GetPeoplePguidUsingKeyResponse object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"GetPeoplePguidUsingKeyResponse":{"type":"object","properties":{"data":{"description":"Person PGUID.","type":"string"}}}}}}
```

## The CreatePeopleTrustedRequest object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"CreatePeopleTrustedRequest":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PersonRequest"},"meta":{"$ref":"#/components/schemas/TrustedEnrollMeta"}}},"PersonRequest":{"type":"object","properties":{"timestamp":{"description":"Timestamp of the latest transaction on this Person.","type":"integer","format":"int64"},"keys":{"type":"array","items":{"$ref":"#/components/schemas/Key"}},"biographics":{"type":"array","items":{"$ref":"#/components/schemas/Biographic"}},"biometric":{"type":"array","items":{"$ref":"#/components/schemas/Biometric"}},"auxiliaries":{"type":"array","items":{"$ref":"#/components/schemas/Biometric"}},"metadata":{"description":"Arbitrary data associated with the person.","type":"string"},"labels":{"description":"Arbitrary labels associated with a person, which can be used as filters for database queries.","uniqueItems":true,"type":"array","items":{"type":"string"}}}},"Key":{"type":"object","properties":{"id":{"description":"Name of entity identifier.","type":"string"},"value":{"description":"Value of entity identifier.","type":"string"}}},"Biographic":{"type":"object","properties":{"id":{"description":"ID of the biographic data being stored.\n\nBiobase Server biographics have their IDs prepended with `bs-`. For example, `bs-name` and `bs-surname`.\n","type":"string"},"value":{"description":"Value of the biographic data.","type":"string"}}},"Biometric":{"type":"object","oneOf":[{"$ref":"#/components/schemas/CONSOLIDATED_TEMPLATE"},{"$ref":"#/components/schemas/TEMPLATE"},{"$ref":"#/components/schemas/ORIGINAL"}],"discriminator":{"propertyName":"source"}},"CONSOLIDATED_TEMPLATE":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained.","type":"string","enum":["CONSOLIDATED_TEMPLATE"]},"type":{"description":"Type of the biometric data.","type":"string","enum":["FINGERPRINT","PALMPRINT","FOOTPRINT","FACE","IRIS","SIGNATURE","SEQUENCE_CONTROL","NEWBORN_PALMPRINT","OTHER"]},"format":{"description":"Format of the biometric data.","type":"string","enum":["PRIVATE","ISO","ANSI","UNKNOWN","EBTS_TYPE9"]},"properties":{"$ref":"#/components/schemas/BiometricProperties"},"index":{"description":"Identifies which biometric, of the specified type, is being sent.","type":"integer","format":"int32"},"content":{"description":"Base64 encoded biometric data.","type":"string"},"quality":{"description":"Given the quality of the extracted biometric template. The quality is unbounded and starts at 0.","type":"integer","format":"int32"}}},"BiometricProperties":{"type":"object","properties":{"width":{"description":"Width, in pixels, of the image. If 0, GBDS will try to extract this information from the image header.","type":"integer","format":"int32"},"height":{"description":"Height, in pixels, of the image. If 0, GBDS will try to extract this information from the image header.","type":"integer","format":"int32"},"resolution":{"description":"Image or template resolution.","type":"integer","format":"int32"},"ratio":{"description":"Proportion of the image.","type":"number","format":"double"},"matcherId":{"description":"ID of the Biometric Matcher to be used in verification and identification operations.","type":"integer","format":"int32"},"extractorId":{"description":"ID of the extractor to be used on the image.","type":"integer","format":"int32"}}},"TEMPLATE":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained.","type":"string","enum":["TEMPLATE"]},"type":{"description":"Type of the biometric data.","type":"string","enum":["FINGERPRINT","PALMPRINT","FOOTPRINT","FACE","IRIS","SIGNATURE","SEQUENCE_CONTROL","NEWBORN_PALMPRINT","OTHER"]},"format":{"description":"Format of the biometric data.","type":"string","enum":["PRIVATE","ISO","ANSI","UNKNOWN","EBTS_TYPE9"]},"properties":{"$ref":"#/components/schemas/BiometricProperties"},"index":{"description":"Identifies which biometric, of the specified type, is being sent.","type":"integer","format":"int32"},"content":{"description":"Base64 encoded biometric data.","type":"string"},"quality":{"description":"Given the quality of the extracted biometric template. The quality is unbounded and starts at 0.","type":"integer","format":"int32"}}},"ORIGINAL":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained.","type":"string","enum":["ORIGINAL"]},"type":{"description":"Type of the biometric data.","type":"string","enum":["FINGERPRINT","PALMPRINT","FOOTPRINT","FACE","IRIS","VOICE","SIGNATURE","SEQUENCE_CONTROL","NEWBORN_PALMPRINT","OTHER"]},"format":{"description":"Format of the biometric data.","type":"string","enum":["RAW","WSQ","JPEG","JPEG2000","PNG","TIFF","GIF","BMP","PCM","WAV","PRIVATE","ISO","ANSI","UNKNOWN","EBTS_TYPE9"]},"properties":{"$ref":"#/components/schemas/BiometricProperties"},"index":{"description":"Identifies which biometric, of the specified type, is being sent.","type":"integer","format":"int32"},"content":{"description":"Base64 encoded biometric data.","type":"string"},"quality":{"description":"Given the quality of the extracted biometric template. The quality is unbounded and starts at 0.","type":"integer","format":"int32"}}},"TrustedEnrollMeta":{"description":"Contains extra information about the API call.","type":"object","properties":{"timeout":{"description":"Time, in milliseconds, waiting for the completion of the operation. If this value is -1, then the method is fully synchronous. If the timeout value is 0, then the method is fully asynchronous. If>0, the call expires after this time (in milliseconds).","type":"integer","format":"int32"},"priority":{"description":"Priority of the enroll operation.","type":"string","enum":["GOD_PRIORITY","HIGHEST_PRIORITY","HIGHER_PRIORITY","HIGH_PRIORITY","DEFAULT_PRIORITY","LOW_PRIORITY","LOWER_PRIORITY","LOWEST_PRIORITY"]},"active":{"description":"Determines if the biometric sent will be loaded into RAM and be available for Search and biometric validation.","type":"boolean"},"externalIDs":{"description":"a","type":"array","items":{"$ref":"#/components/schemas/ExternalIDRequest"}},"labelsOperation":{"description":"a","type":"string","enum":["REPLACE","ACCUMULATE"]},"liveness":{"description":"Flag to request liveness verification on query face image. If activated, a bonafide score will be returned on get transaction.","type":"boolean"},"biographicBase":{"$ref":"#/components/schemas/BiographicBaseFlags"}}},"ExternalIDRequest":{"type":"object","properties":{"name":{"type":"string"},"keys":{"type":"string"}}},"BiographicBaseFlags":{"description":"Biographic database interaction configuration flags.","type":"object","properties":{"autoUpdate":{"description":"Update biographic base.\n\nIf absent, uses value of API config parameter `gbds.biographicBase.autoUpdate`.\n","type":"boolean"},"sendPguidAsKey":{"description":"Send PGUID as key on biographic base update.\n\nIf absent, uses value of API config parameter `gbds.biographicBase.sendPguidAsKey`.\n","type":"boolean"},"sendTguidAsKey":{"description":"Send TGUID as key on biographic base update.\n\nIf absent, uses value of API config parameter `gbds.biographicBase.sendTguidAsKey`.\n","type":"boolean"}}}}}}
```

## The TrustedEnrollMeta object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"TrustedEnrollMeta":{"description":"Contains extra information about the API call.","type":"object","properties":{"timeout":{"description":"Time, in milliseconds, waiting for the completion of the operation. If this value is -1, then the method is fully synchronous. If the timeout value is 0, then the method is fully asynchronous. If>0, the call expires after this time (in milliseconds).","type":"integer","format":"int32"},"priority":{"description":"Priority of the enroll operation.","type":"string","enum":["GOD_PRIORITY","HIGHEST_PRIORITY","HIGHER_PRIORITY","HIGH_PRIORITY","DEFAULT_PRIORITY","LOW_PRIORITY","LOWER_PRIORITY","LOWEST_PRIORITY"]},"active":{"description":"Determines if the biometric sent will be loaded into RAM and be available for Search and biometric validation.","type":"boolean"},"externalIDs":{"description":"a","type":"array","items":{"$ref":"#/components/schemas/ExternalIDRequest"}},"labelsOperation":{"description":"a","type":"string","enum":["REPLACE","ACCUMULATE"]},"liveness":{"description":"Flag to request liveness verification on query face image. If activated, a bonafide score will be returned on get transaction.","type":"boolean"},"biographicBase":{"$ref":"#/components/schemas/BiographicBaseFlags"}}},"ExternalIDRequest":{"type":"object","properties":{"name":{"type":"string"},"keys":{"type":"string"}}},"BiographicBaseFlags":{"description":"Biographic database interaction configuration flags.","type":"object","properties":{"autoUpdate":{"description":"Update biographic base.\n\nIf absent, uses value of API config parameter `gbds.biographicBase.autoUpdate`.\n","type":"boolean"},"sendPguidAsKey":{"description":"Send PGUID as key on biographic base update.\n\nIf absent, uses value of API config parameter `gbds.biographicBase.sendPguidAsKey`.\n","type":"boolean"},"sendTguidAsKey":{"description":"Send TGUID as key on biographic base update.\n\nIf absent, uses value of API config parameter `gbds.biographicBase.sendTguidAsKey`.\n","type":"boolean"}}}}}}
```

## The ExternalIDRequest object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"ExternalIDRequest":{"type":"object","properties":{"name":{"type":"string"},"keys":{"type":"string"}}}}}}
```

## The UpdatePeopleTrustedRequest object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"UpdatePeopleTrustedRequest":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/PersonRequest"},"meta":{"$ref":"#/components/schemas/TrustedEnrollMeta"}}},"PersonRequest":{"type":"object","properties":{"timestamp":{"description":"Timestamp of the latest transaction on this Person.","type":"integer","format":"int64"},"keys":{"type":"array","items":{"$ref":"#/components/schemas/Key"}},"biographics":{"type":"array","items":{"$ref":"#/components/schemas/Biographic"}},"biometric":{"type":"array","items":{"$ref":"#/components/schemas/Biometric"}},"auxiliaries":{"type":"array","items":{"$ref":"#/components/schemas/Biometric"}},"metadata":{"description":"Arbitrary data associated with the person.","type":"string"},"labels":{"description":"Arbitrary labels associated with a person, which can be used as filters for database queries.","uniqueItems":true,"type":"array","items":{"type":"string"}}}},"Key":{"type":"object","properties":{"id":{"description":"Name of entity identifier.","type":"string"},"value":{"description":"Value of entity identifier.","type":"string"}}},"Biographic":{"type":"object","properties":{"id":{"description":"ID of the biographic data being stored.\n\nBiobase Server biographics have their IDs prepended with `bs-`. For example, `bs-name` and `bs-surname`.\n","type":"string"},"value":{"description":"Value of the biographic data.","type":"string"}}},"Biometric":{"type":"object","oneOf":[{"$ref":"#/components/schemas/CONSOLIDATED_TEMPLATE"},{"$ref":"#/components/schemas/TEMPLATE"},{"$ref":"#/components/schemas/ORIGINAL"}],"discriminator":{"propertyName":"source"}},"CONSOLIDATED_TEMPLATE":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained.","type":"string","enum":["CONSOLIDATED_TEMPLATE"]},"type":{"description":"Type of the biometric data.","type":"string","enum":["FINGERPRINT","PALMPRINT","FOOTPRINT","FACE","IRIS","SIGNATURE","SEQUENCE_CONTROL","NEWBORN_PALMPRINT","OTHER"]},"format":{"description":"Format of the biometric data.","type":"string","enum":["PRIVATE","ISO","ANSI","UNKNOWN","EBTS_TYPE9"]},"properties":{"$ref":"#/components/schemas/BiometricProperties"},"index":{"description":"Identifies which biometric, of the specified type, is being sent.","type":"integer","format":"int32"},"content":{"description":"Base64 encoded biometric data.","type":"string"},"quality":{"description":"Given the quality of the extracted biometric template. The quality is unbounded and starts at 0.","type":"integer","format":"int32"}}},"BiometricProperties":{"type":"object","properties":{"width":{"description":"Width, in pixels, of the image. If 0, GBDS will try to extract this information from the image header.","type":"integer","format":"int32"},"height":{"description":"Height, in pixels, of the image. If 0, GBDS will try to extract this information from the image header.","type":"integer","format":"int32"},"resolution":{"description":"Image or template resolution.","type":"integer","format":"int32"},"ratio":{"description":"Proportion of the image.","type":"number","format":"double"},"matcherId":{"description":"ID of the Biometric Matcher to be used in verification and identification operations.","type":"integer","format":"int32"},"extractorId":{"description":"ID of the extractor to be used on the image.","type":"integer","format":"int32"}}},"TEMPLATE":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained.","type":"string","enum":["TEMPLATE"]},"type":{"description":"Type of the biometric data.","type":"string","enum":["FINGERPRINT","PALMPRINT","FOOTPRINT","FACE","IRIS","SIGNATURE","SEQUENCE_CONTROL","NEWBORN_PALMPRINT","OTHER"]},"format":{"description":"Format of the biometric data.","type":"string","enum":["PRIVATE","ISO","ANSI","UNKNOWN","EBTS_TYPE9"]},"properties":{"$ref":"#/components/schemas/BiometricProperties"},"index":{"description":"Identifies which biometric, of the specified type, is being sent.","type":"integer","format":"int32"},"content":{"description":"Base64 encoded biometric data.","type":"string"},"quality":{"description":"Given the quality of the extracted biometric template. The quality is unbounded and starts at 0.","type":"integer","format":"int32"}}},"ORIGINAL":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained.","type":"string","enum":["ORIGINAL"]},"type":{"description":"Type of the biometric data.","type":"string","enum":["FINGERPRINT","PALMPRINT","FOOTPRINT","FACE","IRIS","VOICE","SIGNATURE","SEQUENCE_CONTROL","NEWBORN_PALMPRINT","OTHER"]},"format":{"description":"Format of the biometric data.","type":"string","enum":["RAW","WSQ","JPEG","JPEG2000","PNG","TIFF","GIF","BMP","PCM","WAV","PRIVATE","ISO","ANSI","UNKNOWN","EBTS_TYPE9"]},"properties":{"$ref":"#/components/schemas/BiometricProperties"},"index":{"description":"Identifies which biometric, of the specified type, is being sent.","type":"integer","format":"int32"},"content":{"description":"Base64 encoded biometric data.","type":"string"},"quality":{"description":"Given the quality of the extracted biometric template. The quality is unbounded and starts at 0.","type":"integer","format":"int32"}}},"TrustedEnrollMeta":{"description":"Contains extra information about the API call.","type":"object","properties":{"timeout":{"description":"Time, in milliseconds, waiting for the completion of the operation. If this value is -1, then the method is fully synchronous. If the timeout value is 0, then the method is fully asynchronous. If>0, the call expires after this time (in milliseconds).","type":"integer","format":"int32"},"priority":{"description":"Priority of the enroll operation.","type":"string","enum":["GOD_PRIORITY","HIGHEST_PRIORITY","HIGHER_PRIORITY","HIGH_PRIORITY","DEFAULT_PRIORITY","LOW_PRIORITY","LOWER_PRIORITY","LOWEST_PRIORITY"]},"active":{"description":"Determines if the biometric sent will be loaded into RAM and be available for Search and biometric validation.","type":"boolean"},"externalIDs":{"description":"a","type":"array","items":{"$ref":"#/components/schemas/ExternalIDRequest"}},"labelsOperation":{"description":"a","type":"string","enum":["REPLACE","ACCUMULATE"]},"liveness":{"description":"Flag to request liveness verification on query face image. If activated, a bonafide score will be returned on get transaction.","type":"boolean"},"biographicBase":{"$ref":"#/components/schemas/BiographicBaseFlags"}}},"ExternalIDRequest":{"type":"object","properties":{"name":{"type":"string"},"keys":{"type":"string"}}},"BiographicBaseFlags":{"description":"Biographic database interaction configuration flags.","type":"object","properties":{"autoUpdate":{"description":"Update biographic base.\n\nIf absent, uses value of API config parameter `gbds.biographicBase.autoUpdate`.\n","type":"boolean"},"sendPguidAsKey":{"description":"Send PGUID as key on biographic base update.\n\nIf absent, uses value of API config parameter `gbds.biographicBase.sendPguidAsKey`.\n","type":"boolean"},"sendTguidAsKey":{"description":"Send TGUID as key on biographic base update.\n\nIf absent, uses value of API config parameter `gbds.biographicBase.sendTguidAsKey`.\n","type":"boolean"}}}}}}
```

## The DuplicationIssue object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"DuplicationIssue":{"type":"object","properties":{"indexes":{"description":"List of pairs of duplicated indexes found.","type":"array","items":{"type":"integer","format":"int32"}}}}}}}
```

## The QualityAnalysis object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"QualityAnalysis":{"type":"object","properties":{"status":{"description":"Status of the analysis.","type":"string","enum":["PENDING","APPROVED","REJECTED","OK","ERROR","PENDING_DUPLICITIES"]},"user":{"description":"Username of whom issued the approval.","type":"string"},"comments":{"description":"User comments on the approval.","type":"string"},"timestamp":{"description":"Creation time of the approval, be it manual or automatic. If the enroll did not have any anomalies, the approval was automatic, thus this field will be equal to the enroll time. Otherwise, this timestamp will be the time when the user either approved or rejected the enrollment.","type":"integer","format":"int64"},"duplicationIssues":{"type":"array","items":{"$ref":"#/components/schemas/DuplicationIssue"}},"qualityIssues":{"type":"array","items":{"$ref":"#/components/schemas/QualityIssue"}},"sequenceControlIssues":{"type":"array","items":{"$ref":"#/components/schemas/SequenceControlIssue"}}}},"DuplicationIssue":{"type":"object","properties":{"indexes":{"description":"List of pairs of duplicated indexes found.","type":"array","items":{"type":"integer","format":"int32"}}}},"QualityIssue":{"type":"object","properties":{"index":{"description":"Index of the referred finger.","type":"integer","format":"int32"},"quality":{"description":"Quality calculated for the template.","type":"integer","format":"int32"}}},"SequenceControlIssue":{"type":"object","properties":{"index":{"description":"Index of the problematic finger.","type":"integer","format":"int32"},"matches":{"description":"List of sequence control indexes that matched the given finger and its matching score.","type":"array","items":{"type":"object","properties":{"index":{"type":"integer","format":"int32"},"score":{"type":"integer","format":"int32"}}}}}}}}}
```

## The QualityIssue object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"QualityIssue":{"type":"object","properties":{"index":{"description":"Index of the referred finger.","type":"integer","format":"int32"},"quality":{"description":"Quality calculated for the template.","type":"integer","format":"int32"}}}}}}
```

## The SequenceControlIssue object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"SequenceControlIssue":{"type":"object","properties":{"index":{"description":"Index of the problematic finger.","type":"integer","format":"int32"},"matches":{"description":"List of sequence control indexes that matched the given finger and its matching score.","type":"array","items":{"type":"object","properties":{"index":{"type":"integer","format":"int32"},"score":{"type":"integer","format":"int32"}}}}}}}}}
```

## The UpdateQualityAnalysisMeta object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"UpdateQualityAnalysisMeta":{"type":"object","properties":{"timeout":{"description":"Time, in milliseconds, waiting for the completion of the operation. If this value is -1, then the method is fully synchronous. If the timeout value is 0, then the method is fully asynchronous. If>0, the call expires after this time (in milliseconds).","type":"integer","format":"int32"}}}}}}
```

## The UpdateQualityAnalysisRequest object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"UpdateQualityAnalysisRequest":{"type":"object","properties":{"data":{"type":"object","properties":{"qualityAnalysis":{"$ref":"#/components/schemas/QualityAnalysis"},"biometric":{"type":"array","items":{"$ref":"#/components/schemas/Biometric"}}}},"meta":{"$ref":"#/components/schemas/UpdateQualityAnalysisMeta"}}},"QualityAnalysis":{"type":"object","properties":{"status":{"description":"Status of the analysis.","type":"string","enum":["PENDING","APPROVED","REJECTED","OK","ERROR","PENDING_DUPLICITIES"]},"user":{"description":"Username of whom issued the approval.","type":"string"},"comments":{"description":"User comments on the approval.","type":"string"},"timestamp":{"description":"Creation time of the approval, be it manual or automatic. If the enroll did not have any anomalies, the approval was automatic, thus this field will be equal to the enroll time. Otherwise, this timestamp will be the time when the user either approved or rejected the enrollment.","type":"integer","format":"int64"},"duplicationIssues":{"type":"array","items":{"$ref":"#/components/schemas/DuplicationIssue"}},"qualityIssues":{"type":"array","items":{"$ref":"#/components/schemas/QualityIssue"}},"sequenceControlIssues":{"type":"array","items":{"$ref":"#/components/schemas/SequenceControlIssue"}}}},"DuplicationIssue":{"type":"object","properties":{"indexes":{"description":"List of pairs of duplicated indexes found.","type":"array","items":{"type":"integer","format":"int32"}}}},"QualityIssue":{"type":"object","properties":{"index":{"description":"Index of the referred finger.","type":"integer","format":"int32"},"quality":{"description":"Quality calculated for the template.","type":"integer","format":"int32"}}},"SequenceControlIssue":{"type":"object","properties":{"index":{"description":"Index of the problematic finger.","type":"integer","format":"int32"},"matches":{"description":"List of sequence control indexes that matched the given finger and its matching score.","type":"array","items":{"type":"object","properties":{"index":{"type":"integer","format":"int32"},"score":{"type":"integer","format":"int32"}}}}}},"Biometric":{"type":"object","oneOf":[{"$ref":"#/components/schemas/CONSOLIDATED_TEMPLATE"},{"$ref":"#/components/schemas/TEMPLATE"},{"$ref":"#/components/schemas/ORIGINAL"}],"discriminator":{"propertyName":"source"}},"CONSOLIDATED_TEMPLATE":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained.","type":"string","enum":["CONSOLIDATED_TEMPLATE"]},"type":{"description":"Type of the biometric data.","type":"string","enum":["FINGERPRINT","PALMPRINT","FOOTPRINT","FACE","IRIS","SIGNATURE","SEQUENCE_CONTROL","NEWBORN_PALMPRINT","OTHER"]},"format":{"description":"Format of the biometric data.","type":"string","enum":["PRIVATE","ISO","ANSI","UNKNOWN","EBTS_TYPE9"]},"properties":{"$ref":"#/components/schemas/BiometricProperties"},"index":{"description":"Identifies which biometric, of the specified type, is being sent.","type":"integer","format":"int32"},"content":{"description":"Base64 encoded biometric data.","type":"string"},"quality":{"description":"Given the quality of the extracted biometric template. The quality is unbounded and starts at 0.","type":"integer","format":"int32"}}},"BiometricProperties":{"type":"object","properties":{"width":{"description":"Width, in pixels, of the image. If 0, GBDS will try to extract this information from the image header.","type":"integer","format":"int32"},"height":{"description":"Height, in pixels, of the image. If 0, GBDS will try to extract this information from the image header.","type":"integer","format":"int32"},"resolution":{"description":"Image or template resolution.","type":"integer","format":"int32"},"ratio":{"description":"Proportion of the image.","type":"number","format":"double"},"matcherId":{"description":"ID of the Biometric Matcher to be used in verification and identification operations.","type":"integer","format":"int32"},"extractorId":{"description":"ID of the extractor to be used on the image.","type":"integer","format":"int32"}}},"TEMPLATE":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained.","type":"string","enum":["TEMPLATE"]},"type":{"description":"Type of the biometric data.","type":"string","enum":["FINGERPRINT","PALMPRINT","FOOTPRINT","FACE","IRIS","SIGNATURE","SEQUENCE_CONTROL","NEWBORN_PALMPRINT","OTHER"]},"format":{"description":"Format of the biometric data.","type":"string","enum":["PRIVATE","ISO","ANSI","UNKNOWN","EBTS_TYPE9"]},"properties":{"$ref":"#/components/schemas/BiometricProperties"},"index":{"description":"Identifies which biometric, of the specified type, is being sent.","type":"integer","format":"int32"},"content":{"description":"Base64 encoded biometric data.","type":"string"},"quality":{"description":"Given the quality of the extracted biometric template. The quality is unbounded and starts at 0.","type":"integer","format":"int32"}}},"ORIGINAL":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained.","type":"string","enum":["ORIGINAL"]},"type":{"description":"Type of the biometric data.","type":"string","enum":["FINGERPRINT","PALMPRINT","FOOTPRINT","FACE","IRIS","VOICE","SIGNATURE","SEQUENCE_CONTROL","NEWBORN_PALMPRINT","OTHER"]},"format":{"description":"Format of the biometric data.","type":"string","enum":["RAW","WSQ","JPEG","JPEG2000","PNG","TIFF","GIF","BMP","PCM","WAV","PRIVATE","ISO","ANSI","UNKNOWN","EBTS_TYPE9"]},"properties":{"$ref":"#/components/schemas/BiometricProperties"},"index":{"description":"Identifies which biometric, of the specified type, is being sent.","type":"integer","format":"int32"},"content":{"description":"Base64 encoded biometric data.","type":"string"},"quality":{"description":"Given the quality of the extracted biometric template. The quality is unbounded and starts at 0.","type":"integer","format":"int32"}}},"UpdateQualityAnalysisMeta":{"type":"object","properties":{"timeout":{"description":"Time, in milliseconds, waiting for the completion of the operation. If this value is -1, then the method is fully synchronous. If the timeout value is 0, then the method is fully asynchronous. If>0, the call expires after this time (in milliseconds).","type":"integer","format":"int32"}}}}}}
```

## The UpdateQualityAnalysisResponse object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"UpdateQualityAnalysisResponse":{"type":"object","properties":{"data":{"type":"object","properties":{"newTransactionGUID":{"description":"Transaction GUID for new enroll transaction generated.","type":"string"}}}}}}}}
```

## The GetSearchesResponse object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"GetSearchesResponse":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/Search"}}},"Search":{"type":"object","properties":{"status":{"description":"Status of the search.","type":"string","enum":["ENQUEUED","PREPARED","PROCESSING","MATCH","NOT_MATCH","FAILED","PENDING","PERSON_NOT_FOUND"]},"tguid":{"description":"Search transaction TGUID.","type":"string"},"candidates":{"description":"List of match candidates.","type":"array","items":{"$ref":"#/components/schemas/Match"}},"progress":{"type":"number","format":"float"},"request":{"$ref":"#/components/schemas/SearchSpec"},"failReason":{"description":"Fail message on why search didn't complete.","type":"string"},"searchType":{"description":"Type of finger that was searched.","type":"string","enum":["SAME_FINGERS","ALL_FINGERS","CROSSED_WINDOW_TWEEZERS"]},"biometrics":{"description":"List of biometrics","type":"array","items":{"$ref":"#/components/schemas/Biometric"}},"apiID":{"description":"API ID","type":"string"},"gbdsVersion":{"description":"GBDS Version","type":"string"},"extractionElapsed":{"description":"Time to complete the extraction.","type":"integer","format":"int64"},"searchElapsed":{"description":"Time to complete the search.","type":"integer","format":"int64"},"postSearchElapsed":{"description":"Time to complete the post match.","type":"integer","format":"int64"},"ulsearch":{"description":"Unsolved latent search.","type":"boolean"},"latentSearch":{"description":"Latent search.","type":"boolean"},"score":{"description":"Score of the biometric comparison. Only returned if a single biometric was provided in the payload of the request that created the search.","type":"integer","format":"int32"},"bonafideScore":{"description":"Bonafide score of the liveness verification. Only returned if the `liveness` flag was set to `true` in the payload of the request that created the search. Ranges from 0 to 100 (0=attack, 100=genuine).","type":"integer","format":"int32"}}},"Match":{"type":"object","properties":{"matchedPersonPguid":{"description":"PGUID of the person the candidate was matched against.","type":"string"},"matchedPersonTguid":{"description":"TGUID of the person the candidate was matched against.","type":"string"},"biometricMatches":{"description":"Information about the match.","type":"array","items":{"$ref":"#/components/schemas/BiometricMatch"}}}},"BiometricMatch":{"type":"object","properties":{"score":{"description":"Score of the match.","type":"integer","format":"int32"},"queryIndex":{"description":"Index of the biometric data that was sent and caused a match.","type":"integer","format":"int32"},"referenceIndex":{"description":"Index of the biometric data, from the already enrolled person, which matched.","type":"integer","format":"int32"},"minutia":{"description":"Array of minutia matches. Returned only for latent searches.","type":"array","items":{"$ref":"#/components/schemas/Minutiae"}}}},"Minutiae":{"type":"object","properties":{"query":{"description":"Index of Minutiae, from the provided biometric data, which was involved in the match.","type":"integer","format":"int32"},"reference":{"description":"Index of Minutiae, from biometric data already in the database, which was involved in the match.","type":"integer","format":"int32"}}},"SearchSpec":{"type":"object","properties":{"searchType":{"description":"Type of finger to be searched.","type":"string","enum":["SAME_FINGERS","ALL_FINGERS","CROSSED_WINDOW_TWEEZERS"]},"biometric":{"description":"If only one biometric is provided, a match score will be returned. If more than one biometric is provided, a list of candidates can be retrieved using getSearchResult.","type":"array","items":{"$ref":"#/components/schemas/Biometric"}},"keys":{"type":"array","items":{"$ref":"#/components/schemas/Key"}},"pguids":{"description":"This field is a list of PGUIDs. If the list is empty or null, the search will be against the entire database. If it has only one PGUID, the search will be 1:1. It is possible to make 1:1 searches with more than one PGUID.","type":"array","items":{"type":"string"}},"labelFilters":{"description":"Used for 1:N operations. The filters will be compared with the labels field registered by the enroll method.","uniqueItems":true,"type":"array","items":{"type":"string"}},"isLatentSearch":{"description":"Flag indicating if the search is a Latent Search.","type":"boolean"},"isULSearch":{"description":"Flag indicating if the search is an UL Search.","type":"boolean"},"numberOfCandidates":{"description":"Number of candidates to be returned.","type":"integer","format":"int32"},"classificationThreshold":{"description":"Threshold for either classifying biometric data or marking it as UNKNOWN.","type":"integer","format":"int32"},"classifications":{"description":"Vector containing the classifications to be considered. Defaults to UNKNOWN.","uniqueItems":true,"type":"array","items":{"type":"string","enum":["PLAIN_ARCH","LEFT_LOOP","RIGHT_LOOP","WHORL","SCAR","UNKNOWN","AMPUTATION","OTHER"]}},"singularities":{"description":"Singularities to be considered. Defaults to NONE.","type":"string","enum":["NONE","NO_DELTA_ALL_CORES","ONE_DELTA_NO_CORES","ONE_DELTA_ALL_CORES"]},"latentSearchOptions":{"$ref":"#/components/schemas/LatentSearchOptions"},"searchOptions":{"$ref":"#/components/schemas/SearchOptions"},"user":{"type":"string"},"uguids":{"description":"Globally unique ID of the UL. Can be a list of uguids.","type":"array","items":{"type":"string"}},"liveness":{"description":"Flag to request liveness verification on query face image. If activated, a bonafide score will be returned.","type":"boolean"}}},"Biometric":{"type":"object","oneOf":[{"$ref":"#/components/schemas/CONSOLIDATED_TEMPLATE"},{"$ref":"#/components/schemas/TEMPLATE"},{"$ref":"#/components/schemas/ORIGINAL"}],"discriminator":{"propertyName":"source"}},"CONSOLIDATED_TEMPLATE":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained.","type":"string","enum":["CONSOLIDATED_TEMPLATE"]},"type":{"description":"Type of the biometric data.","type":"string","enum":["FINGERPRINT","PALMPRINT","FOOTPRINT","FACE","IRIS","SIGNATURE","SEQUENCE_CONTROL","NEWBORN_PALMPRINT","OTHER"]},"format":{"description":"Format of the biometric data.","type":"string","enum":["PRIVATE","ISO","ANSI","UNKNOWN","EBTS_TYPE9"]},"properties":{"$ref":"#/components/schemas/BiometricProperties"},"index":{"description":"Identifies which biometric, of the specified type, is being sent.","type":"integer","format":"int32"},"content":{"description":"Base64 encoded biometric data.","type":"string"},"quality":{"description":"Given the quality of the extracted biometric template. The quality is unbounded and starts at 0.","type":"integer","format":"int32"}}},"BiometricProperties":{"type":"object","properties":{"width":{"description":"Width, in pixels, of the image. If 0, GBDS will try to extract this information from the image header.","type":"integer","format":"int32"},"height":{"description":"Height, in pixels, of the image. If 0, GBDS will try to extract this information from the image header.","type":"integer","format":"int32"},"resolution":{"description":"Image or template resolution.","type":"integer","format":"int32"},"ratio":{"description":"Proportion of the image.","type":"number","format":"double"},"matcherId":{"description":"ID of the Biometric Matcher to be used in verification and identification operations.","type":"integer","format":"int32"},"extractorId":{"description":"ID of the extractor to be used on the image.","type":"integer","format":"int32"}}},"TEMPLATE":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained.","type":"string","enum":["TEMPLATE"]},"type":{"description":"Type of the biometric data.","type":"string","enum":["FINGERPRINT","PALMPRINT","FOOTPRINT","FACE","IRIS","SIGNATURE","SEQUENCE_CONTROL","NEWBORN_PALMPRINT","OTHER"]},"format":{"description":"Format of the biometric data.","type":"string","enum":["PRIVATE","ISO","ANSI","UNKNOWN","EBTS_TYPE9"]},"properties":{"$ref":"#/components/schemas/BiometricProperties"},"index":{"description":"Identifies which biometric, of the specified type, is being sent.","type":"integer","format":"int32"},"content":{"description":"Base64 encoded biometric data.","type":"string"},"quality":{"description":"Given the quality of the extracted biometric template. The quality is unbounded and starts at 0.","type":"integer","format":"int32"}}},"ORIGINAL":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained.","type":"string","enum":["ORIGINAL"]},"type":{"description":"Type of the biometric data.","type":"string","enum":["FINGERPRINT","PALMPRINT","FOOTPRINT","FACE","IRIS","VOICE","SIGNATURE","SEQUENCE_CONTROL","NEWBORN_PALMPRINT","OTHER"]},"format":{"description":"Format of the biometric data.","type":"string","enum":["RAW","WSQ","JPEG","JPEG2000","PNG","TIFF","GIF","BMP","PCM","WAV","PRIVATE","ISO","ANSI","UNKNOWN","EBTS_TYPE9"]},"properties":{"$ref":"#/components/schemas/BiometricProperties"},"index":{"description":"Identifies which biometric, of the specified type, is being sent.","type":"integer","format":"int32"},"content":{"description":"Base64 encoded biometric data.","type":"string"},"quality":{"description":"Given the quality of the extracted biometric template. The quality is unbounded and starts at 0.","type":"integer","format":"int32"}}},"Key":{"type":"object","properties":{"id":{"description":"Name of entity identifier.","type":"string"},"value":{"description":"Value of entity identifier.","type":"string"}}},"LatentSearchOptions":{"type":"object","properties":{"scoreThreshold":{"description":"Search score threshold.","type":"integer","format":"int32"},"rotationAngleThreshold":{"description":"Rotation angle threshold for searching.","type":"integer","format":"int32"}}},"SearchOptions":{"type":"object","properties":{"biometricType":{"description":"biometricType must contain its data and be one of the following values - FINGERPRINT, PALMPRINT, FACE, IRIS, NEWBORN_PALMPRINT, i.e., you must substitute the \"biometricType\" field name by one of the ENUM names.","type":"object","properties":{"scoreThreshold":{"description":"Search score threshold.","type":"integer","format":"int32"},"rotationAngleThreshold":{"description":"Rotation angle threshold for searching.","type":"integer","format":"int32"},"matcher":{"description":"Define which ginger preset will be used.","type":"string","enum":["DEFAULT","MOBILE"]}}}}}}}}
```

## The LatentSearchOptions object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"LatentSearchOptions":{"type":"object","properties":{"scoreThreshold":{"description":"Search score threshold.","type":"integer","format":"int32"},"rotationAngleThreshold":{"description":"Rotation angle threshold for searching.","type":"integer","format":"int32"}}}}}}
```

## The SearchOptions object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"SearchOptions":{"type":"object","properties":{"biometricType":{"description":"biometricType must contain its data and be one of the following values - FINGERPRINT, PALMPRINT, FACE, IRIS, NEWBORN_PALMPRINT, i.e., you must substitute the \"biometricType\" field name by one of the ENUM names.","type":"object","properties":{"scoreThreshold":{"description":"Search score threshold.","type":"integer","format":"int32"},"rotationAngleThreshold":{"description":"Rotation angle threshold for searching.","type":"integer","format":"int32"},"matcher":{"description":"Define which ginger preset will be used.","type":"string","enum":["DEFAULT","MOBILE"]}}}}}}}}
```

## The Search object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"Search":{"type":"object","properties":{"status":{"description":"Status of the search.","type":"string","enum":["ENQUEUED","PREPARED","PROCESSING","MATCH","NOT_MATCH","FAILED","PENDING","PERSON_NOT_FOUND"]},"tguid":{"description":"Search transaction TGUID.","type":"string"},"candidates":{"description":"List of match candidates.","type":"array","items":{"$ref":"#/components/schemas/Match"}},"progress":{"type":"number","format":"float"},"request":{"$ref":"#/components/schemas/SearchSpec"},"failReason":{"description":"Fail message on why search didn't complete.","type":"string"},"searchType":{"description":"Type of finger that was searched.","type":"string","enum":["SAME_FINGERS","ALL_FINGERS","CROSSED_WINDOW_TWEEZERS"]},"biometrics":{"description":"List of biometrics","type":"array","items":{"$ref":"#/components/schemas/Biometric"}},"apiID":{"description":"API ID","type":"string"},"gbdsVersion":{"description":"GBDS Version","type":"string"},"extractionElapsed":{"description":"Time to complete the extraction.","type":"integer","format":"int64"},"searchElapsed":{"description":"Time to complete the search.","type":"integer","format":"int64"},"postSearchElapsed":{"description":"Time to complete the post match.","type":"integer","format":"int64"},"ulsearch":{"description":"Unsolved latent search.","type":"boolean"},"latentSearch":{"description":"Latent search.","type":"boolean"},"score":{"description":"Score of the biometric comparison. Only returned if a single biometric was provided in the payload of the request that created the search.","type":"integer","format":"int32"},"bonafideScore":{"description":"Bonafide score of the liveness verification. Only returned if the `liveness` flag was set to `true` in the payload of the request that created the search. Ranges from 0 to 100 (0=attack, 100=genuine).","type":"integer","format":"int32"}}},"Match":{"type":"object","properties":{"matchedPersonPguid":{"description":"PGUID of the person the candidate was matched against.","type":"string"},"matchedPersonTguid":{"description":"TGUID of the person the candidate was matched against.","type":"string"},"biometricMatches":{"description":"Information about the match.","type":"array","items":{"$ref":"#/components/schemas/BiometricMatch"}}}},"BiometricMatch":{"type":"object","properties":{"score":{"description":"Score of the match.","type":"integer","format":"int32"},"queryIndex":{"description":"Index of the biometric data that was sent and caused a match.","type":"integer","format":"int32"},"referenceIndex":{"description":"Index of the biometric data, from the already enrolled person, which matched.","type":"integer","format":"int32"},"minutia":{"description":"Array of minutia matches. Returned only for latent searches.","type":"array","items":{"$ref":"#/components/schemas/Minutiae"}}}},"Minutiae":{"type":"object","properties":{"query":{"description":"Index of Minutiae, from the provided biometric data, which was involved in the match.","type":"integer","format":"int32"},"reference":{"description":"Index of Minutiae, from biometric data already in the database, which was involved in the match.","type":"integer","format":"int32"}}},"SearchSpec":{"type":"object","properties":{"searchType":{"description":"Type of finger to be searched.","type":"string","enum":["SAME_FINGERS","ALL_FINGERS","CROSSED_WINDOW_TWEEZERS"]},"biometric":{"description":"If only one biometric is provided, a match score will be returned. If more than one biometric is provided, a list of candidates can be retrieved using getSearchResult.","type":"array","items":{"$ref":"#/components/schemas/Biometric"}},"keys":{"type":"array","items":{"$ref":"#/components/schemas/Key"}},"pguids":{"description":"This field is a list of PGUIDs. If the list is empty or null, the search will be against the entire database. If it has only one PGUID, the search will be 1:1. It is possible to make 1:1 searches with more than one PGUID.","type":"array","items":{"type":"string"}},"labelFilters":{"description":"Used for 1:N operations. The filters will be compared with the labels field registered by the enroll method.","uniqueItems":true,"type":"array","items":{"type":"string"}},"isLatentSearch":{"description":"Flag indicating if the search is a Latent Search.","type":"boolean"},"isULSearch":{"description":"Flag indicating if the search is an UL Search.","type":"boolean"},"numberOfCandidates":{"description":"Number of candidates to be returned.","type":"integer","format":"int32"},"classificationThreshold":{"description":"Threshold for either classifying biometric data or marking it as UNKNOWN.","type":"integer","format":"int32"},"classifications":{"description":"Vector containing the classifications to be considered. Defaults to UNKNOWN.","uniqueItems":true,"type":"array","items":{"type":"string","enum":["PLAIN_ARCH","LEFT_LOOP","RIGHT_LOOP","WHORL","SCAR","UNKNOWN","AMPUTATION","OTHER"]}},"singularities":{"description":"Singularities to be considered. Defaults to NONE.","type":"string","enum":["NONE","NO_DELTA_ALL_CORES","ONE_DELTA_NO_CORES","ONE_DELTA_ALL_CORES"]},"latentSearchOptions":{"$ref":"#/components/schemas/LatentSearchOptions"},"searchOptions":{"$ref":"#/components/schemas/SearchOptions"},"user":{"type":"string"},"uguids":{"description":"Globally unique ID of the UL. Can be a list of uguids.","type":"array","items":{"type":"string"}},"liveness":{"description":"Flag to request liveness verification on query face image. If activated, a bonafide score will be returned.","type":"boolean"}}},"Biometric":{"type":"object","oneOf":[{"$ref":"#/components/schemas/CONSOLIDATED_TEMPLATE"},{"$ref":"#/components/schemas/TEMPLATE"},{"$ref":"#/components/schemas/ORIGINAL"}],"discriminator":{"propertyName":"source"}},"CONSOLIDATED_TEMPLATE":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained.","type":"string","enum":["CONSOLIDATED_TEMPLATE"]},"type":{"description":"Type of the biometric data.","type":"string","enum":["FINGERPRINT","PALMPRINT","FOOTPRINT","FACE","IRIS","SIGNATURE","SEQUENCE_CONTROL","NEWBORN_PALMPRINT","OTHER"]},"format":{"description":"Format of the biometric data.","type":"string","enum":["PRIVATE","ISO","ANSI","UNKNOWN","EBTS_TYPE9"]},"properties":{"$ref":"#/components/schemas/BiometricProperties"},"index":{"description":"Identifies which biometric, of the specified type, is being sent.","type":"integer","format":"int32"},"content":{"description":"Base64 encoded biometric data.","type":"string"},"quality":{"description":"Given the quality of the extracted biometric template. The quality is unbounded and starts at 0.","type":"integer","format":"int32"}}},"BiometricProperties":{"type":"object","properties":{"width":{"description":"Width, in pixels, of the image. If 0, GBDS will try to extract this information from the image header.","type":"integer","format":"int32"},"height":{"description":"Height, in pixels, of the image. If 0, GBDS will try to extract this information from the image header.","type":"integer","format":"int32"},"resolution":{"description":"Image or template resolution.","type":"integer","format":"int32"},"ratio":{"description":"Proportion of the image.","type":"number","format":"double"},"matcherId":{"description":"ID of the Biometric Matcher to be used in verification and identification operations.","type":"integer","format":"int32"},"extractorId":{"description":"ID of the extractor to be used on the image.","type":"integer","format":"int32"}}},"TEMPLATE":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained.","type":"string","enum":["TEMPLATE"]},"type":{"description":"Type of the biometric data.","type":"string","enum":["FINGERPRINT","PALMPRINT","FOOTPRINT","FACE","IRIS","SIGNATURE","SEQUENCE_CONTROL","NEWBORN_PALMPRINT","OTHER"]},"format":{"description":"Format of the biometric data.","type":"string","enum":["PRIVATE","ISO","ANSI","UNKNOWN","EBTS_TYPE9"]},"properties":{"$ref":"#/components/schemas/BiometricProperties"},"index":{"description":"Identifies which biometric, of the specified type, is being sent.","type":"integer","format":"int32"},"content":{"description":"Base64 encoded biometric data.","type":"string"},"quality":{"description":"Given the quality of the extracted biometric template. The quality is unbounded and starts at 0.","type":"integer","format":"int32"}}},"ORIGINAL":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained.","type":"string","enum":["ORIGINAL"]},"type":{"description":"Type of the biometric data.","type":"string","enum":["FINGERPRINT","PALMPRINT","FOOTPRINT","FACE","IRIS","VOICE","SIGNATURE","SEQUENCE_CONTROL","NEWBORN_PALMPRINT","OTHER"]},"format":{"description":"Format of the biometric data.","type":"string","enum":["RAW","WSQ","JPEG","JPEG2000","PNG","TIFF","GIF","BMP","PCM","WAV","PRIVATE","ISO","ANSI","UNKNOWN","EBTS_TYPE9"]},"properties":{"$ref":"#/components/schemas/BiometricProperties"},"index":{"description":"Identifies which biometric, of the specified type, is being sent.","type":"integer","format":"int32"},"content":{"description":"Base64 encoded biometric data.","type":"string"},"quality":{"description":"Given the quality of the extracted biometric template. The quality is unbounded and starts at 0.","type":"integer","format":"int32"}}},"Key":{"type":"object","properties":{"id":{"description":"Name of entity identifier.","type":"string"},"value":{"description":"Value of entity identifier.","type":"string"}}},"LatentSearchOptions":{"type":"object","properties":{"scoreThreshold":{"description":"Search score threshold.","type":"integer","format":"int32"},"rotationAngleThreshold":{"description":"Rotation angle threshold for searching.","type":"integer","format":"int32"}}},"SearchOptions":{"type":"object","properties":{"biometricType":{"description":"biometricType must contain its data and be one of the following values - FINGERPRINT, PALMPRINT, FACE, IRIS, NEWBORN_PALMPRINT, i.e., you must substitute the \"biometricType\" field name by one of the ENUM names.","type":"object","properties":{"scoreThreshold":{"description":"Search score threshold.","type":"integer","format":"int32"},"rotationAngleThreshold":{"description":"Rotation angle threshold for searching.","type":"integer","format":"int32"},"matcher":{"description":"Define which ginger preset will be used.","type":"string","enum":["DEFAULT","MOBILE"]}}}}}}}}
```

## The SearchSpec object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"SearchSpec":{"type":"object","properties":{"searchType":{"description":"Type of finger to be searched.","type":"string","enum":["SAME_FINGERS","ALL_FINGERS","CROSSED_WINDOW_TWEEZERS"]},"biometric":{"description":"If only one biometric is provided, a match score will be returned. If more than one biometric is provided, a list of candidates can be retrieved using getSearchResult.","type":"array","items":{"$ref":"#/components/schemas/Biometric"}},"keys":{"type":"array","items":{"$ref":"#/components/schemas/Key"}},"pguids":{"description":"This field is a list of PGUIDs. If the list is empty or null, the search will be against the entire database. If it has only one PGUID, the search will be 1:1. It is possible to make 1:1 searches with more than one PGUID.","type":"array","items":{"type":"string"}},"labelFilters":{"description":"Used for 1:N operations. The filters will be compared with the labels field registered by the enroll method.","uniqueItems":true,"type":"array","items":{"type":"string"}},"isLatentSearch":{"description":"Flag indicating if the search is a Latent Search.","type":"boolean"},"isULSearch":{"description":"Flag indicating if the search is an UL Search.","type":"boolean"},"numberOfCandidates":{"description":"Number of candidates to be returned.","type":"integer","format":"int32"},"classificationThreshold":{"description":"Threshold for either classifying biometric data or marking it as UNKNOWN.","type":"integer","format":"int32"},"classifications":{"description":"Vector containing the classifications to be considered. Defaults to UNKNOWN.","uniqueItems":true,"type":"array","items":{"type":"string","enum":["PLAIN_ARCH","LEFT_LOOP","RIGHT_LOOP","WHORL","SCAR","UNKNOWN","AMPUTATION","OTHER"]}},"singularities":{"description":"Singularities to be considered. Defaults to NONE.","type":"string","enum":["NONE","NO_DELTA_ALL_CORES","ONE_DELTA_NO_CORES","ONE_DELTA_ALL_CORES"]},"latentSearchOptions":{"$ref":"#/components/schemas/LatentSearchOptions"},"searchOptions":{"$ref":"#/components/schemas/SearchOptions"},"user":{"type":"string"},"uguids":{"description":"Globally unique ID of the UL. Can be a list of uguids.","type":"array","items":{"type":"string"}},"liveness":{"description":"Flag to request liveness verification on query face image. If activated, a bonafide score will be returned.","type":"boolean"}}},"Biometric":{"type":"object","oneOf":[{"$ref":"#/components/schemas/CONSOLIDATED_TEMPLATE"},{"$ref":"#/components/schemas/TEMPLATE"},{"$ref":"#/components/schemas/ORIGINAL"}],"discriminator":{"propertyName":"source"}},"CONSOLIDATED_TEMPLATE":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained.","type":"string","enum":["CONSOLIDATED_TEMPLATE"]},"type":{"description":"Type of the biometric data.","type":"string","enum":["FINGERPRINT","PALMPRINT","FOOTPRINT","FACE","IRIS","SIGNATURE","SEQUENCE_CONTROL","NEWBORN_PALMPRINT","OTHER"]},"format":{"description":"Format of the biometric data.","type":"string","enum":["PRIVATE","ISO","ANSI","UNKNOWN","EBTS_TYPE9"]},"properties":{"$ref":"#/components/schemas/BiometricProperties"},"index":{"description":"Identifies which biometric, of the specified type, is being sent.","type":"integer","format":"int32"},"content":{"description":"Base64 encoded biometric data.","type":"string"},"quality":{"description":"Given the quality of the extracted biometric template. The quality is unbounded and starts at 0.","type":"integer","format":"int32"}}},"BiometricProperties":{"type":"object","properties":{"width":{"description":"Width, in pixels, of the image. If 0, GBDS will try to extract this information from the image header.","type":"integer","format":"int32"},"height":{"description":"Height, in pixels, of the image. If 0, GBDS will try to extract this information from the image header.","type":"integer","format":"int32"},"resolution":{"description":"Image or template resolution.","type":"integer","format":"int32"},"ratio":{"description":"Proportion of the image.","type":"number","format":"double"},"matcherId":{"description":"ID of the Biometric Matcher to be used in verification and identification operations.","type":"integer","format":"int32"},"extractorId":{"description":"ID of the extractor to be used on the image.","type":"integer","format":"int32"}}},"TEMPLATE":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained.","type":"string","enum":["TEMPLATE"]},"type":{"description":"Type of the biometric data.","type":"string","enum":["FINGERPRINT","PALMPRINT","FOOTPRINT","FACE","IRIS","SIGNATURE","SEQUENCE_CONTROL","NEWBORN_PALMPRINT","OTHER"]},"format":{"description":"Format of the biometric data.","type":"string","enum":["PRIVATE","ISO","ANSI","UNKNOWN","EBTS_TYPE9"]},"properties":{"$ref":"#/components/schemas/BiometricProperties"},"index":{"description":"Identifies which biometric, of the specified type, is being sent.","type":"integer","format":"int32"},"content":{"description":"Base64 encoded biometric data.","type":"string"},"quality":{"description":"Given the quality of the extracted biometric template. The quality is unbounded and starts at 0.","type":"integer","format":"int32"}}},"ORIGINAL":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained.","type":"string","enum":["ORIGINAL"]},"type":{"description":"Type of the biometric data.","type":"string","enum":["FINGERPRINT","PALMPRINT","FOOTPRINT","FACE","IRIS","VOICE","SIGNATURE","SEQUENCE_CONTROL","NEWBORN_PALMPRINT","OTHER"]},"format":{"description":"Format of the biometric data.","type":"string","enum":["RAW","WSQ","JPEG","JPEG2000","PNG","TIFF","GIF","BMP","PCM","WAV","PRIVATE","ISO","ANSI","UNKNOWN","EBTS_TYPE9"]},"properties":{"$ref":"#/components/schemas/BiometricProperties"},"index":{"description":"Identifies which biometric, of the specified type, is being sent.","type":"integer","format":"int32"},"content":{"description":"Base64 encoded biometric data.","type":"string"},"quality":{"description":"Given the quality of the extracted biometric template. The quality is unbounded and starts at 0.","type":"integer","format":"int32"}}},"Key":{"type":"object","properties":{"id":{"description":"Name of entity identifier.","type":"string"},"value":{"description":"Value of entity identifier.","type":"string"}}},"LatentSearchOptions":{"type":"object","properties":{"scoreThreshold":{"description":"Search score threshold.","type":"integer","format":"int32"},"rotationAngleThreshold":{"description":"Rotation angle threshold for searching.","type":"integer","format":"int32"}}},"SearchOptions":{"type":"object","properties":{"biometricType":{"description":"biometricType must contain its data and be one of the following values - FINGERPRINT, PALMPRINT, FACE, IRIS, NEWBORN_PALMPRINT, i.e., you must substitute the \"biometricType\" field name by one of the ENUM names.","type":"object","properties":{"scoreThreshold":{"description":"Search score threshold.","type":"integer","format":"int32"},"rotationAngleThreshold":{"description":"Rotation angle threshold for searching.","type":"integer","format":"int32"},"matcher":{"description":"Define which ginger preset will be used.","type":"string","enum":["DEFAULT","MOBILE"]}}}}}}}}
```

## The CreateSearchRequest object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"CreateSearchRequest":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/SearchSpec"},"meta":{"$ref":"#/components/schemas/SearchMeta"}}},"SearchSpec":{"type":"object","properties":{"searchType":{"description":"Type of finger to be searched.","type":"string","enum":["SAME_FINGERS","ALL_FINGERS","CROSSED_WINDOW_TWEEZERS"]},"biometric":{"description":"If only one biometric is provided, a match score will be returned. If more than one biometric is provided, a list of candidates can be retrieved using getSearchResult.","type":"array","items":{"$ref":"#/components/schemas/Biometric"}},"keys":{"type":"array","items":{"$ref":"#/components/schemas/Key"}},"pguids":{"description":"This field is a list of PGUIDs. If the list is empty or null, the search will be against the entire database. If it has only one PGUID, the search will be 1:1. It is possible to make 1:1 searches with more than one PGUID.","type":"array","items":{"type":"string"}},"labelFilters":{"description":"Used for 1:N operations. The filters will be compared with the labels field registered by the enroll method.","uniqueItems":true,"type":"array","items":{"type":"string"}},"isLatentSearch":{"description":"Flag indicating if the search is a Latent Search.","type":"boolean"},"isULSearch":{"description":"Flag indicating if the search is an UL Search.","type":"boolean"},"numberOfCandidates":{"description":"Number of candidates to be returned.","type":"integer","format":"int32"},"classificationThreshold":{"description":"Threshold for either classifying biometric data or marking it as UNKNOWN.","type":"integer","format":"int32"},"classifications":{"description":"Vector containing the classifications to be considered. Defaults to UNKNOWN.","uniqueItems":true,"type":"array","items":{"type":"string","enum":["PLAIN_ARCH","LEFT_LOOP","RIGHT_LOOP","WHORL","SCAR","UNKNOWN","AMPUTATION","OTHER"]}},"singularities":{"description":"Singularities to be considered. Defaults to NONE.","type":"string","enum":["NONE","NO_DELTA_ALL_CORES","ONE_DELTA_NO_CORES","ONE_DELTA_ALL_CORES"]},"latentSearchOptions":{"$ref":"#/components/schemas/LatentSearchOptions"},"searchOptions":{"$ref":"#/components/schemas/SearchOptions"},"user":{"type":"string"},"uguids":{"description":"Globally unique ID of the UL. Can be a list of uguids.","type":"array","items":{"type":"string"}},"liveness":{"description":"Flag to request liveness verification on query face image. If activated, a bonafide score will be returned.","type":"boolean"}}},"Biometric":{"type":"object","oneOf":[{"$ref":"#/components/schemas/CONSOLIDATED_TEMPLATE"},{"$ref":"#/components/schemas/TEMPLATE"},{"$ref":"#/components/schemas/ORIGINAL"}],"discriminator":{"propertyName":"source"}},"CONSOLIDATED_TEMPLATE":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained.","type":"string","enum":["CONSOLIDATED_TEMPLATE"]},"type":{"description":"Type of the biometric data.","type":"string","enum":["FINGERPRINT","PALMPRINT","FOOTPRINT","FACE","IRIS","SIGNATURE","SEQUENCE_CONTROL","NEWBORN_PALMPRINT","OTHER"]},"format":{"description":"Format of the biometric data.","type":"string","enum":["PRIVATE","ISO","ANSI","UNKNOWN","EBTS_TYPE9"]},"properties":{"$ref":"#/components/schemas/BiometricProperties"},"index":{"description":"Identifies which biometric, of the specified type, is being sent.","type":"integer","format":"int32"},"content":{"description":"Base64 encoded biometric data.","type":"string"},"quality":{"description":"Given the quality of the extracted biometric template. The quality is unbounded and starts at 0.","type":"integer","format":"int32"}}},"BiometricProperties":{"type":"object","properties":{"width":{"description":"Width, in pixels, of the image. If 0, GBDS will try to extract this information from the image header.","type":"integer","format":"int32"},"height":{"description":"Height, in pixels, of the image. If 0, GBDS will try to extract this information from the image header.","type":"integer","format":"int32"},"resolution":{"description":"Image or template resolution.","type":"integer","format":"int32"},"ratio":{"description":"Proportion of the image.","type":"number","format":"double"},"matcherId":{"description":"ID of the Biometric Matcher to be used in verification and identification operations.","type":"integer","format":"int32"},"extractorId":{"description":"ID of the extractor to be used on the image.","type":"integer","format":"int32"}}},"TEMPLATE":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained.","type":"string","enum":["TEMPLATE"]},"type":{"description":"Type of the biometric data.","type":"string","enum":["FINGERPRINT","PALMPRINT","FOOTPRINT","FACE","IRIS","SIGNATURE","SEQUENCE_CONTROL","NEWBORN_PALMPRINT","OTHER"]},"format":{"description":"Format of the biometric data.","type":"string","enum":["PRIVATE","ISO","ANSI","UNKNOWN","EBTS_TYPE9"]},"properties":{"$ref":"#/components/schemas/BiometricProperties"},"index":{"description":"Identifies which biometric, of the specified type, is being sent.","type":"integer","format":"int32"},"content":{"description":"Base64 encoded biometric data.","type":"string"},"quality":{"description":"Given the quality of the extracted biometric template. The quality is unbounded and starts at 0.","type":"integer","format":"int32"}}},"ORIGINAL":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained.","type":"string","enum":["ORIGINAL"]},"type":{"description":"Type of the biometric data.","type":"string","enum":["FINGERPRINT","PALMPRINT","FOOTPRINT","FACE","IRIS","VOICE","SIGNATURE","SEQUENCE_CONTROL","NEWBORN_PALMPRINT","OTHER"]},"format":{"description":"Format of the biometric data.","type":"string","enum":["RAW","WSQ","JPEG","JPEG2000","PNG","TIFF","GIF","BMP","PCM","WAV","PRIVATE","ISO","ANSI","UNKNOWN","EBTS_TYPE9"]},"properties":{"$ref":"#/components/schemas/BiometricProperties"},"index":{"description":"Identifies which biometric, of the specified type, is being sent.","type":"integer","format":"int32"},"content":{"description":"Base64 encoded biometric data.","type":"string"},"quality":{"description":"Given the quality of the extracted biometric template. The quality is unbounded and starts at 0.","type":"integer","format":"int32"}}},"Key":{"type":"object","properties":{"id":{"description":"Name of entity identifier.","type":"string"},"value":{"description":"Value of entity identifier.","type":"string"}}},"LatentSearchOptions":{"type":"object","properties":{"scoreThreshold":{"description":"Search score threshold.","type":"integer","format":"int32"},"rotationAngleThreshold":{"description":"Rotation angle threshold for searching.","type":"integer","format":"int32"}}},"SearchOptions":{"type":"object","properties":{"biometricType":{"description":"biometricType must contain its data and be one of the following values - FINGERPRINT, PALMPRINT, FACE, IRIS, NEWBORN_PALMPRINT, i.e., you must substitute the \"biometricType\" field name by one of the ENUM names.","type":"object","properties":{"scoreThreshold":{"description":"Search score threshold.","type":"integer","format":"int32"},"rotationAngleThreshold":{"description":"Rotation angle threshold for searching.","type":"integer","format":"int32"},"matcher":{"description":"Define which ginger preset will be used.","type":"string","enum":["DEFAULT","MOBILE"]}}}}},"SearchMeta":{"description":"Contains extra information about the API call.","type":"object","properties":{"timeout":{"description":"Time, in milliseconds, waiting for the completion of the operation. If this value is -1, then the method is fully synchronous. If the timeout value is 0, then the method is fully asynchronous. If>0, the call expires after this time (in milliseconds).","type":"integer","format":"int32"},"priority":{"description":"Priority of the operation.","type":"string","enum":["GOD_PRIORITY","HIGHEST_PRIORITY","HIGHER_PRIORITY","HIGH_PRIORITY","DEFAULT_PRIORITY","LOW_PRIORITY","LOWER_PRIORITY","LOWEST_PRIORITY"]},"metadata":{"type":"array","items":{"type":"object","properties":{"key":{"description":"Additional information in base64 format.","type":"string"}}}}}}}}}
```

## The SearchMeta object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"SearchMeta":{"description":"Contains extra information about the API call.","type":"object","properties":{"timeout":{"description":"Time, in milliseconds, waiting for the completion of the operation. If this value is -1, then the method is fully synchronous. If the timeout value is 0, then the method is fully asynchronous. If>0, the call expires after this time (in milliseconds).","type":"integer","format":"int32"},"priority":{"description":"Priority of the operation.","type":"string","enum":["GOD_PRIORITY","HIGHEST_PRIORITY","HIGHER_PRIORITY","HIGH_PRIORITY","DEFAULT_PRIORITY","LOW_PRIORITY","LOWER_PRIORITY","LOWEST_PRIORITY"]},"metadata":{"type":"array","items":{"type":"object","properties":{"key":{"description":"Additional information in base64 format.","type":"string"}}}}}}}}}
```

## The CreateSearchResponse object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"CreateSearchResponse":{"type":"object","properties":{"data":{"type":"object","properties":{"status":{"description":"Status of the search.","type":"string","enum":["ENQUEUED","PROCESSING","MATCH","NOT_MATCH","FAILED"]},"tguid":{"description":"Search transaction TGUID.","type":"string"},"score":{"description":"Biometric comparison score. Only returned if a single biometric was provided in the request payload.","type":"integer","format":"int32"},"bonafideScore":{"description":"Bonafide score of the liveness verification. Only returned if the `liveness` flag was set to `true` in the request payload. Ranges from 0 to 100. (0=attack, 100=genuine).","type":"integer","format":"int32"}}}}}}}}
```

## The Enroll object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"Enroll":{"type":"object","properties":{"tguid":{"description":"Global unique ID of the transaction.","type":"string"},"pguid":{"description":"PGUID of the UL candidate.","type":"string"},"status":{"description":"Status of the enroll transaction.","type":"string","enum":["ENQUEUED","PROCESSING","ENROLLED","EXCEPTION","FAILED","PENDING","REFUSED","RESENT_ENROLL"]},"timestamp":{"description":"Timestamp of Enroll creation.","type":"integer","format":"int64"},"progress":{"description":"Progress of the Enroll operation.","type":"number","format":"float"},"candidates":{"description":"Identify candidates","type":"array","items":{"$ref":"#/components/schemas/Match"}},"exceptions":{"description":"Exception candidates (verify post match results)","type":"array","items":{"$ref":"#/components/schemas/Match"}},"person":{"$ref":"#/components/schemas/Person"},"qualityAnalysis":{"$ref":"#/components/schemas/QualityAnalysis"},"failReason":{"description":"Message describing why the enroll failed","type":"string"},"isCurrentTransaction":{"description":"Whether this is the current transaction for the person identified by PGUID.","type":"boolean"},"refusedReason":{"$ref":"#/components/schemas/EnrollRefusedReason"},"bonafideScore":{"description":"Bonafide score of the liveness verification. Only returned if the `liveness` flag was set to `true` in the payload of the enroll/update request. Ranges from 0 to 100 (0=attack, 100=genuine).","type":"integer","format":"int32"}}},"Match":{"type":"object","properties":{"matchedPersonPguid":{"description":"PGUID of the person the candidate was matched against.","type":"string"},"matchedPersonTguid":{"description":"TGUID of the person the candidate was matched against.","type":"string"},"biometricMatches":{"description":"Information about the match.","type":"array","items":{"$ref":"#/components/schemas/BiometricMatch"}}}},"BiometricMatch":{"type":"object","properties":{"score":{"description":"Score of the match.","type":"integer","format":"int32"},"queryIndex":{"description":"Index of the biometric data that was sent and caused a match.","type":"integer","format":"int32"},"referenceIndex":{"description":"Index of the biometric data, from the already enrolled person, which matched.","type":"integer","format":"int32"},"minutia":{"description":"Array of minutia matches. Returned only for latent searches.","type":"array","items":{"$ref":"#/components/schemas/Minutiae"}}}},"Minutiae":{"type":"object","properties":{"query":{"description":"Index of Minutiae, from the provided biometric data, which was involved in the match.","type":"integer","format":"int32"},"reference":{"description":"Index of Minutiae, from biometric data already in the database, which was involved in the match.","type":"integer","format":"int32"}}},"Person":{"type":"object","properties":{"pguid":{"description":"Global unique ID of the Person. This attribute is assigned by the AFIS once the person is successfully enrolled","type":"string"},"lastEnrollTguid":{"description":"Global unique ID of the latest transaction on this Person.","type":"string"},"timestamp":{"description":"Timestamp of the latest transaction on this Person.","type":"integer","format":"int64"},"keys":{"type":"array","items":{"$ref":"#/components/schemas/Key"}},"biographics":{"type":"array","items":{"$ref":"#/components/schemas/Biographic"}},"biometric":{"type":"array","items":{"$ref":"#/components/schemas/Biometric"}},"auxiliaries":{"type":"array","items":{"$ref":"#/components/schemas/Biometric"}},"metadata":{"description":"Arbitrary data associated with the person.","type":"array","items":{"type":"string"}},"labels":{"description":"Arbitrary labels associated with a person, which can be used as filters for database queries.","uniqueItems":true,"type":"array","items":{"type":"string"}},"history":{"$ref":"#/components/schemas/History"},"biographicBaseStatus":{"$ref":"#/components/schemas/BiographicBaseStatus"}}},"Key":{"type":"object","properties":{"id":{"description":"Name of entity identifier.","type":"string"},"value":{"description":"Value of entity identifier.","type":"string"}}},"Biographic":{"type":"object","properties":{"id":{"description":"ID of the biographic data being stored.\n\nBiobase Server biographics have their IDs prepended with `bs-`. For example, `bs-name` and `bs-surname`.\n","type":"string"},"value":{"description":"Value of the biographic data.","type":"string"}}},"Biometric":{"type":"object","oneOf":[{"$ref":"#/components/schemas/CONSOLIDATED_TEMPLATE"},{"$ref":"#/components/schemas/TEMPLATE"},{"$ref":"#/components/schemas/ORIGINAL"}],"discriminator":{"propertyName":"source"}},"CONSOLIDATED_TEMPLATE":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained.","type":"string","enum":["CONSOLIDATED_TEMPLATE"]},"type":{"description":"Type of the biometric data.","type":"string","enum":["FINGERPRINT","PALMPRINT","FOOTPRINT","FACE","IRIS","SIGNATURE","SEQUENCE_CONTROL","NEWBORN_PALMPRINT","OTHER"]},"format":{"description":"Format of the biometric data.","type":"string","enum":["PRIVATE","ISO","ANSI","UNKNOWN","EBTS_TYPE9"]},"properties":{"$ref":"#/components/schemas/BiometricProperties"},"index":{"description":"Identifies which biometric, of the specified type, is being sent.","type":"integer","format":"int32"},"content":{"description":"Base64 encoded biometric data.","type":"string"},"quality":{"description":"Given the quality of the extracted biometric template. The quality is unbounded and starts at 0.","type":"integer","format":"int32"}}},"BiometricProperties":{"type":"object","properties":{"width":{"description":"Width, in pixels, of the image. If 0, GBDS will try to extract this information from the image header.","type":"integer","format":"int32"},"height":{"description":"Height, in pixels, of the image. If 0, GBDS will try to extract this information from the image header.","type":"integer","format":"int32"},"resolution":{"description":"Image or template resolution.","type":"integer","format":"int32"},"ratio":{"description":"Proportion of the image.","type":"number","format":"double"},"matcherId":{"description":"ID of the Biometric Matcher to be used in verification and identification operations.","type":"integer","format":"int32"},"extractorId":{"description":"ID of the extractor to be used on the image.","type":"integer","format":"int32"}}},"TEMPLATE":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained.","type":"string","enum":["TEMPLATE"]},"type":{"description":"Type of the biometric data.","type":"string","enum":["FINGERPRINT","PALMPRINT","FOOTPRINT","FACE","IRIS","SIGNATURE","SEQUENCE_CONTROL","NEWBORN_PALMPRINT","OTHER"]},"format":{"description":"Format of the biometric data.","type":"string","enum":["PRIVATE","ISO","ANSI","UNKNOWN","EBTS_TYPE9"]},"properties":{"$ref":"#/components/schemas/BiometricProperties"},"index":{"description":"Identifies which biometric, of the specified type, is being sent.","type":"integer","format":"int32"},"content":{"description":"Base64 encoded biometric data.","type":"string"},"quality":{"description":"Given the quality of the extracted biometric template. The quality is unbounded and starts at 0.","type":"integer","format":"int32"}}},"ORIGINAL":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained.","type":"string","enum":["ORIGINAL"]},"type":{"description":"Type of the biometric data.","type":"string","enum":["FINGERPRINT","PALMPRINT","FOOTPRINT","FACE","IRIS","VOICE","SIGNATURE","SEQUENCE_CONTROL","NEWBORN_PALMPRINT","OTHER"]},"format":{"description":"Format of the biometric data.","type":"string","enum":["RAW","WSQ","JPEG","JPEG2000","PNG","TIFF","GIF","BMP","PCM","WAV","PRIVATE","ISO","ANSI","UNKNOWN","EBTS_TYPE9"]},"properties":{"$ref":"#/components/schemas/BiometricProperties"},"index":{"description":"Identifies which biometric, of the specified type, is being sent.","type":"integer","format":"int32"},"content":{"description":"Base64 encoded biometric data.","type":"string"},"quality":{"description":"Given the quality of the extracted biometric template. The quality is unbounded and starts at 0.","type":"integer","format":"int32"}}},"History":{"type":"object","properties":{"events":{"type":"array","items":{"$ref":"#/components/schemas/HistoryEvent"}}}},"HistoryEvent":{"required":["type"],"type":"object","properties":{"tguid":{"description":"Global unique ID of the transaction.","type":"string"},"timestamp":{"description":"Timestamp of event/transaction.","type":"integer","format":"int64"},"type":{"description":"Type of event/transaction.","type":"string"},"targetTguid":{"description":"Global unique ID of the transaction that was disabled.","type":"string"}},"discriminator":{"propertyName":"type"}},"BiographicBaseStatus":{"description":"Status of the biographic base.\n- `UNAVAILABLE`: When all Biobase Servers are off.\n- `TIMEOUT`: When at least one Biobase Server is ON but the call timed out.\n- `UNAUTHORIZED`:\n  - If the **lookAllServers** conf is **ON**, it indicates that all running servers returned that the API authentication is unauthorized.\n  - If the **lookAllServers** conf is **OFF**, it indicates that the server that received the biographic request returned that the API authentication is unauthorized.\n- `INVALID_DATA`: The Biobase Server returned that the data request from the API is invalid. It is not supposed to happen if Biobase Server is implemented according to the Biographic Base API.\n- `NOT_FOUND`:\n  - If the **lookAllServers** conf is **ON**, it indicates that the person keys were not found on all Biobase Servers configured.\n  - If the **lookAllServers** conf is **OFF**, it indicates that person keys were not found on the server that received the biographic request.\n- `OK`: The Biobase Server returned biographics/face for the given person keys.\n","type":"string","enum":["UNAVAILABLE","TIMEOUT","UNAUTHORIZED","INVALID_DATA","NOT_FOUND","OK"]},"QualityAnalysis":{"type":"object","properties":{"status":{"description":"Status of the analysis.","type":"string","enum":["PENDING","APPROVED","REJECTED","OK","ERROR","PENDING_DUPLICITIES"]},"user":{"description":"Username of whom issued the approval.","type":"string"},"comments":{"description":"User comments on the approval.","type":"string"},"timestamp":{"description":"Creation time of the approval, be it manual or automatic. If the enroll did not have any anomalies, the approval was automatic, thus this field will be equal to the enroll time. Otherwise, this timestamp will be the time when the user either approved or rejected the enrollment.","type":"integer","format":"int64"},"duplicationIssues":{"type":"array","items":{"$ref":"#/components/schemas/DuplicationIssue"}},"qualityIssues":{"type":"array","items":{"$ref":"#/components/schemas/QualityIssue"}},"sequenceControlIssues":{"type":"array","items":{"$ref":"#/components/schemas/SequenceControlIssue"}}}},"DuplicationIssue":{"type":"object","properties":{"indexes":{"description":"List of pairs of duplicated indexes found.","type":"array","items":{"type":"integer","format":"int32"}}}},"QualityIssue":{"type":"object","properties":{"index":{"description":"Index of the referred finger.","type":"integer","format":"int32"},"quality":{"description":"Quality calculated for the template.","type":"integer","format":"int32"}}},"SequenceControlIssue":{"type":"object","properties":{"index":{"description":"Index of the problematic finger.","type":"integer","format":"int32"},"matches":{"description":"List of sequence control indexes that matched the given finger and its matching score.","type":"array","items":{"type":"object","properties":{"index":{"type":"integer","format":"int32"},"score":{"type":"integer","format":"int32"}}}}}},"EnrollRefusedReason":{"type":"object","properties":{"matchedPeopleThatAreReferenceInSomeExceptionUnderAnalysis":{"description":"List of PGUID of the people that is the reference in some exception under analysis.","type":"array","items":{"type":"string"}},"matchedTransactionsThatHaveAnExceptionUnderAnalysis":{"description":"List of TGUID of entrant transactions with the exception under analysis.","type":"array","items":{"type":"string"}}}}}}}
```

## The EnrollTransaction object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"EnrollTransaction":{"type":"object","properties":{"tguid":{"description":"Global unique ID of the transaction.","type":"string"},"pguid":{"description":"PGUID of the UL candidate.","type":"string"},"status":{"description":"Status of the enroll transaction.","type":"string","enum":["ENQUEUED","PROCESSING","ENROLLED","EXCEPTION","FAILED","PENDING","REFUSED","RESENT_ENROLL"]},"timestamp":{"description":"Timestamp of Enroll creation.","type":"integer","format":"int64"},"progress":{"description":"Progress of the Enroll operation.","type":"number","format":"float"},"candidates":{"type":"array","items":{"$ref":"#/components/schemas/Match"}},"person":{"$ref":"#/components/schemas/Person"},"qualityAnalysis":{"$ref":"#/components/schemas/QualityAnalysis"},"failReason":{"description":"Message describing why the enroll failed","type":"string"},"isCurrentTransaction":{"description":"Whether this is the current transaction for the person identified by PGUID.","type":"boolean"},"refusedReason":{"$ref":"#/components/schemas/EnrollRefusedReason"},"apiID":{"description":"API ID that processed the enroll/search transaction","type":"string"},"gbdsVersion":{"description":"GBDS version that processed the transaction","type":"string"},"extractionElapsed":{"type":"integer","format":"int64"},"extractionQualityElapsed":{"type":"integer","format":"int64"},"searchElapsed":{"type":"integer","format":"int64"}}},"Match":{"type":"object","properties":{"matchedPersonPguid":{"description":"PGUID of the person the candidate was matched against.","type":"string"},"matchedPersonTguid":{"description":"TGUID of the person the candidate was matched against.","type":"string"},"biometricMatches":{"description":"Information about the match.","type":"array","items":{"$ref":"#/components/schemas/BiometricMatch"}}}},"BiometricMatch":{"type":"object","properties":{"score":{"description":"Score of the match.","type":"integer","format":"int32"},"queryIndex":{"description":"Index of the biometric data that was sent and caused a match.","type":"integer","format":"int32"},"referenceIndex":{"description":"Index of the biometric data, from the already enrolled person, which matched.","type":"integer","format":"int32"},"minutia":{"description":"Array of minutia matches. Returned only for latent searches.","type":"array","items":{"$ref":"#/components/schemas/Minutiae"}}}},"Minutiae":{"type":"object","properties":{"query":{"description":"Index of Minutiae, from the provided biometric data, which was involved in the match.","type":"integer","format":"int32"},"reference":{"description":"Index of Minutiae, from biometric data already in the database, which was involved in the match.","type":"integer","format":"int32"}}},"Person":{"type":"object","properties":{"pguid":{"description":"Global unique ID of the Person. This attribute is assigned by the AFIS once the person is successfully enrolled","type":"string"},"lastEnrollTguid":{"description":"Global unique ID of the latest transaction on this Person.","type":"string"},"timestamp":{"description":"Timestamp of the latest transaction on this Person.","type":"integer","format":"int64"},"keys":{"type":"array","items":{"$ref":"#/components/schemas/Key"}},"biographics":{"type":"array","items":{"$ref":"#/components/schemas/Biographic"}},"biometric":{"type":"array","items":{"$ref":"#/components/schemas/Biometric"}},"auxiliaries":{"type":"array","items":{"$ref":"#/components/schemas/Biometric"}},"metadata":{"description":"Arbitrary data associated with the person.","type":"array","items":{"type":"string"}},"labels":{"description":"Arbitrary labels associated with a person, which can be used as filters for database queries.","uniqueItems":true,"type":"array","items":{"type":"string"}},"history":{"$ref":"#/components/schemas/History"},"biographicBaseStatus":{"$ref":"#/components/schemas/BiographicBaseStatus"}}},"Key":{"type":"object","properties":{"id":{"description":"Name of entity identifier.","type":"string"},"value":{"description":"Value of entity identifier.","type":"string"}}},"Biographic":{"type":"object","properties":{"id":{"description":"ID of the biographic data being stored.\n\nBiobase Server biographics have their IDs prepended with `bs-`. For example, `bs-name` and `bs-surname`.\n","type":"string"},"value":{"description":"Value of the biographic data.","type":"string"}}},"Biometric":{"type":"object","oneOf":[{"$ref":"#/components/schemas/CONSOLIDATED_TEMPLATE"},{"$ref":"#/components/schemas/TEMPLATE"},{"$ref":"#/components/schemas/ORIGINAL"}],"discriminator":{"propertyName":"source"}},"CONSOLIDATED_TEMPLATE":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained.","type":"string","enum":["CONSOLIDATED_TEMPLATE"]},"type":{"description":"Type of the biometric data.","type":"string","enum":["FINGERPRINT","PALMPRINT","FOOTPRINT","FACE","IRIS","SIGNATURE","SEQUENCE_CONTROL","NEWBORN_PALMPRINT","OTHER"]},"format":{"description":"Format of the biometric data.","type":"string","enum":["PRIVATE","ISO","ANSI","UNKNOWN","EBTS_TYPE9"]},"properties":{"$ref":"#/components/schemas/BiometricProperties"},"index":{"description":"Identifies which biometric, of the specified type, is being sent.","type":"integer","format":"int32"},"content":{"description":"Base64 encoded biometric data.","type":"string"},"quality":{"description":"Given the quality of the extracted biometric template. The quality is unbounded and starts at 0.","type":"integer","format":"int32"}}},"BiometricProperties":{"type":"object","properties":{"width":{"description":"Width, in pixels, of the image. If 0, GBDS will try to extract this information from the image header.","type":"integer","format":"int32"},"height":{"description":"Height, in pixels, of the image. If 0, GBDS will try to extract this information from the image header.","type":"integer","format":"int32"},"resolution":{"description":"Image or template resolution.","type":"integer","format":"int32"},"ratio":{"description":"Proportion of the image.","type":"number","format":"double"},"matcherId":{"description":"ID of the Biometric Matcher to be used in verification and identification operations.","type":"integer","format":"int32"},"extractorId":{"description":"ID of the extractor to be used on the image.","type":"integer","format":"int32"}}},"TEMPLATE":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained.","type":"string","enum":["TEMPLATE"]},"type":{"description":"Type of the biometric data.","type":"string","enum":["FINGERPRINT","PALMPRINT","FOOTPRINT","FACE","IRIS","SIGNATURE","SEQUENCE_CONTROL","NEWBORN_PALMPRINT","OTHER"]},"format":{"description":"Format of the biometric data.","type":"string","enum":["PRIVATE","ISO","ANSI","UNKNOWN","EBTS_TYPE9"]},"properties":{"$ref":"#/components/schemas/BiometricProperties"},"index":{"description":"Identifies which biometric, of the specified type, is being sent.","type":"integer","format":"int32"},"content":{"description":"Base64 encoded biometric data.","type":"string"},"quality":{"description":"Given the quality of the extracted biometric template. The quality is unbounded and starts at 0.","type":"integer","format":"int32"}}},"ORIGINAL":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained.","type":"string","enum":["ORIGINAL"]},"type":{"description":"Type of the biometric data.","type":"string","enum":["FINGERPRINT","PALMPRINT","FOOTPRINT","FACE","IRIS","VOICE","SIGNATURE","SEQUENCE_CONTROL","NEWBORN_PALMPRINT","OTHER"]},"format":{"description":"Format of the biometric data.","type":"string","enum":["RAW","WSQ","JPEG","JPEG2000","PNG","TIFF","GIF","BMP","PCM","WAV","PRIVATE","ISO","ANSI","UNKNOWN","EBTS_TYPE9"]},"properties":{"$ref":"#/components/schemas/BiometricProperties"},"index":{"description":"Identifies which biometric, of the specified type, is being sent.","type":"integer","format":"int32"},"content":{"description":"Base64 encoded biometric data.","type":"string"},"quality":{"description":"Given the quality of the extracted biometric template. The quality is unbounded and starts at 0.","type":"integer","format":"int32"}}},"History":{"type":"object","properties":{"events":{"type":"array","items":{"$ref":"#/components/schemas/HistoryEvent"}}}},"HistoryEvent":{"required":["type"],"type":"object","properties":{"tguid":{"description":"Global unique ID of the transaction.","type":"string"},"timestamp":{"description":"Timestamp of event/transaction.","type":"integer","format":"int64"},"type":{"description":"Type of event/transaction.","type":"string"},"targetTguid":{"description":"Global unique ID of the transaction that was disabled.","type":"string"}},"discriminator":{"propertyName":"type"}},"BiographicBaseStatus":{"description":"Status of the biographic base.\n- `UNAVAILABLE`: When all Biobase Servers are off.\n- `TIMEOUT`: When at least one Biobase Server is ON but the call timed out.\n- `UNAUTHORIZED`:\n  - If the **lookAllServers** conf is **ON**, it indicates that all running servers returned that the API authentication is unauthorized.\n  - If the **lookAllServers** conf is **OFF**, it indicates that the server that received the biographic request returned that the API authentication is unauthorized.\n- `INVALID_DATA`: The Biobase Server returned that the data request from the API is invalid. It is not supposed to happen if Biobase Server is implemented according to the Biographic Base API.\n- `NOT_FOUND`:\n  - If the **lookAllServers** conf is **ON**, it indicates that the person keys were not found on all Biobase Servers configured.\n  - If the **lookAllServers** conf is **OFF**, it indicates that person keys were not found on the server that received the biographic request.\n- `OK`: The Biobase Server returned biographics/face for the given person keys.\n","type":"string","enum":["UNAVAILABLE","TIMEOUT","UNAUTHORIZED","INVALID_DATA","NOT_FOUND","OK"]},"QualityAnalysis":{"type":"object","properties":{"status":{"description":"Status of the analysis.","type":"string","enum":["PENDING","APPROVED","REJECTED","OK","ERROR","PENDING_DUPLICITIES"]},"user":{"description":"Username of whom issued the approval.","type":"string"},"comments":{"description":"User comments on the approval.","type":"string"},"timestamp":{"description":"Creation time of the approval, be it manual or automatic. If the enroll did not have any anomalies, the approval was automatic, thus this field will be equal to the enroll time. Otherwise, this timestamp will be the time when the user either approved or rejected the enrollment.","type":"integer","format":"int64"},"duplicationIssues":{"type":"array","items":{"$ref":"#/components/schemas/DuplicationIssue"}},"qualityIssues":{"type":"array","items":{"$ref":"#/components/schemas/QualityIssue"}},"sequenceControlIssues":{"type":"array","items":{"$ref":"#/components/schemas/SequenceControlIssue"}}}},"DuplicationIssue":{"type":"object","properties":{"indexes":{"description":"List of pairs of duplicated indexes found.","type":"array","items":{"type":"integer","format":"int32"}}}},"QualityIssue":{"type":"object","properties":{"index":{"description":"Index of the referred finger.","type":"integer","format":"int32"},"quality":{"description":"Quality calculated for the template.","type":"integer","format":"int32"}}},"SequenceControlIssue":{"type":"object","properties":{"index":{"description":"Index of the problematic finger.","type":"integer","format":"int32"},"matches":{"description":"List of sequence control indexes that matched the given finger and its matching score.","type":"array","items":{"type":"object","properties":{"index":{"type":"integer","format":"int32"},"score":{"type":"integer","format":"int32"}}}}}},"EnrollRefusedReason":{"type":"object","properties":{"matchedPeopleThatAreReferenceInSomeExceptionUnderAnalysis":{"description":"List of PGUID of the people that is the reference in some exception under analysis.","type":"array","items":{"type":"string"}},"matchedTransactionsThatHaveAnExceptionUnderAnalysis":{"description":"List of TGUID of entrant transactions with the exception under analysis.","type":"array","items":{"type":"string"}}}}}}}
```

## The GetEnrollTransactionsResponse object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"GetEnrollTransactionsResponse":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/Enroll"}}},"Enroll":{"type":"object","properties":{"tguid":{"description":"Global unique ID of the transaction.","type":"string"},"pguid":{"description":"PGUID of the UL candidate.","type":"string"},"status":{"description":"Status of the enroll transaction.","type":"string","enum":["ENQUEUED","PROCESSING","ENROLLED","EXCEPTION","FAILED","PENDING","REFUSED","RESENT_ENROLL"]},"timestamp":{"description":"Timestamp of Enroll creation.","type":"integer","format":"int64"},"progress":{"description":"Progress of the Enroll operation.","type":"number","format":"float"},"candidates":{"description":"Identify candidates","type":"array","items":{"$ref":"#/components/schemas/Match"}},"exceptions":{"description":"Exception candidates (verify post match results)","type":"array","items":{"$ref":"#/components/schemas/Match"}},"person":{"$ref":"#/components/schemas/Person"},"qualityAnalysis":{"$ref":"#/components/schemas/QualityAnalysis"},"failReason":{"description":"Message describing why the enroll failed","type":"string"},"isCurrentTransaction":{"description":"Whether this is the current transaction for the person identified by PGUID.","type":"boolean"},"refusedReason":{"$ref":"#/components/schemas/EnrollRefusedReason"},"bonafideScore":{"description":"Bonafide score of the liveness verification. Only returned if the `liveness` flag was set to `true` in the payload of the enroll/update request. Ranges from 0 to 100 (0=attack, 100=genuine).","type":"integer","format":"int32"}}},"Match":{"type":"object","properties":{"matchedPersonPguid":{"description":"PGUID of the person the candidate was matched against.","type":"string"},"matchedPersonTguid":{"description":"TGUID of the person the candidate was matched against.","type":"string"},"biometricMatches":{"description":"Information about the match.","type":"array","items":{"$ref":"#/components/schemas/BiometricMatch"}}}},"BiometricMatch":{"type":"object","properties":{"score":{"description":"Score of the match.","type":"integer","format":"int32"},"queryIndex":{"description":"Index of the biometric data that was sent and caused a match.","type":"integer","format":"int32"},"referenceIndex":{"description":"Index of the biometric data, from the already enrolled person, which matched.","type":"integer","format":"int32"},"minutia":{"description":"Array of minutia matches. Returned only for latent searches.","type":"array","items":{"$ref":"#/components/schemas/Minutiae"}}}},"Minutiae":{"type":"object","properties":{"query":{"description":"Index of Minutiae, from the provided biometric data, which was involved in the match.","type":"integer","format":"int32"},"reference":{"description":"Index of Minutiae, from biometric data already in the database, which was involved in the match.","type":"integer","format":"int32"}}},"Person":{"type":"object","properties":{"pguid":{"description":"Global unique ID of the Person. This attribute is assigned by the AFIS once the person is successfully enrolled","type":"string"},"lastEnrollTguid":{"description":"Global unique ID of the latest transaction on this Person.","type":"string"},"timestamp":{"description":"Timestamp of the latest transaction on this Person.","type":"integer","format":"int64"},"keys":{"type":"array","items":{"$ref":"#/components/schemas/Key"}},"biographics":{"type":"array","items":{"$ref":"#/components/schemas/Biographic"}},"biometric":{"type":"array","items":{"$ref":"#/components/schemas/Biometric"}},"auxiliaries":{"type":"array","items":{"$ref":"#/components/schemas/Biometric"}},"metadata":{"description":"Arbitrary data associated with the person.","type":"array","items":{"type":"string"}},"labels":{"description":"Arbitrary labels associated with a person, which can be used as filters for database queries.","uniqueItems":true,"type":"array","items":{"type":"string"}},"history":{"$ref":"#/components/schemas/History"},"biographicBaseStatus":{"$ref":"#/components/schemas/BiographicBaseStatus"}}},"Key":{"type":"object","properties":{"id":{"description":"Name of entity identifier.","type":"string"},"value":{"description":"Value of entity identifier.","type":"string"}}},"Biographic":{"type":"object","properties":{"id":{"description":"ID of the biographic data being stored.\n\nBiobase Server biographics have their IDs prepended with `bs-`. For example, `bs-name` and `bs-surname`.\n","type":"string"},"value":{"description":"Value of the biographic data.","type":"string"}}},"Biometric":{"type":"object","oneOf":[{"$ref":"#/components/schemas/CONSOLIDATED_TEMPLATE"},{"$ref":"#/components/schemas/TEMPLATE"},{"$ref":"#/components/schemas/ORIGINAL"}],"discriminator":{"propertyName":"source"}},"CONSOLIDATED_TEMPLATE":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained.","type":"string","enum":["CONSOLIDATED_TEMPLATE"]},"type":{"description":"Type of the biometric data.","type":"string","enum":["FINGERPRINT","PALMPRINT","FOOTPRINT","FACE","IRIS","SIGNATURE","SEQUENCE_CONTROL","NEWBORN_PALMPRINT","OTHER"]},"format":{"description":"Format of the biometric data.","type":"string","enum":["PRIVATE","ISO","ANSI","UNKNOWN","EBTS_TYPE9"]},"properties":{"$ref":"#/components/schemas/BiometricProperties"},"index":{"description":"Identifies which biometric, of the specified type, is being sent.","type":"integer","format":"int32"},"content":{"description":"Base64 encoded biometric data.","type":"string"},"quality":{"description":"Given the quality of the extracted biometric template. The quality is unbounded and starts at 0.","type":"integer","format":"int32"}}},"BiometricProperties":{"type":"object","properties":{"width":{"description":"Width, in pixels, of the image. If 0, GBDS will try to extract this information from the image header.","type":"integer","format":"int32"},"height":{"description":"Height, in pixels, of the image. If 0, GBDS will try to extract this information from the image header.","type":"integer","format":"int32"},"resolution":{"description":"Image or template resolution.","type":"integer","format":"int32"},"ratio":{"description":"Proportion of the image.","type":"number","format":"double"},"matcherId":{"description":"ID of the Biometric Matcher to be used in verification and identification operations.","type":"integer","format":"int32"},"extractorId":{"description":"ID of the extractor to be used on the image.","type":"integer","format":"int32"}}},"TEMPLATE":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained.","type":"string","enum":["TEMPLATE"]},"type":{"description":"Type of the biometric data.","type":"string","enum":["FINGERPRINT","PALMPRINT","FOOTPRINT","FACE","IRIS","SIGNATURE","SEQUENCE_CONTROL","NEWBORN_PALMPRINT","OTHER"]},"format":{"description":"Format of the biometric data.","type":"string","enum":["PRIVATE","ISO","ANSI","UNKNOWN","EBTS_TYPE9"]},"properties":{"$ref":"#/components/schemas/BiometricProperties"},"index":{"description":"Identifies which biometric, of the specified type, is being sent.","type":"integer","format":"int32"},"content":{"description":"Base64 encoded biometric data.","type":"string"},"quality":{"description":"Given the quality of the extracted biometric template. The quality is unbounded and starts at 0.","type":"integer","format":"int32"}}},"ORIGINAL":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained.","type":"string","enum":["ORIGINAL"]},"type":{"description":"Type of the biometric data.","type":"string","enum":["FINGERPRINT","PALMPRINT","FOOTPRINT","FACE","IRIS","VOICE","SIGNATURE","SEQUENCE_CONTROL","NEWBORN_PALMPRINT","OTHER"]},"format":{"description":"Format of the biometric data.","type":"string","enum":["RAW","WSQ","JPEG","JPEG2000","PNG","TIFF","GIF","BMP","PCM","WAV","PRIVATE","ISO","ANSI","UNKNOWN","EBTS_TYPE9"]},"properties":{"$ref":"#/components/schemas/BiometricProperties"},"index":{"description":"Identifies which biometric, of the specified type, is being sent.","type":"integer","format":"int32"},"content":{"description":"Base64 encoded biometric data.","type":"string"},"quality":{"description":"Given the quality of the extracted biometric template. The quality is unbounded and starts at 0.","type":"integer","format":"int32"}}},"History":{"type":"object","properties":{"events":{"type":"array","items":{"$ref":"#/components/schemas/HistoryEvent"}}}},"HistoryEvent":{"required":["type"],"type":"object","properties":{"tguid":{"description":"Global unique ID of the transaction.","type":"string"},"timestamp":{"description":"Timestamp of event/transaction.","type":"integer","format":"int64"},"type":{"description":"Type of event/transaction.","type":"string"},"targetTguid":{"description":"Global unique ID of the transaction that was disabled.","type":"string"}},"discriminator":{"propertyName":"type"}},"BiographicBaseStatus":{"description":"Status of the biographic base.\n- `UNAVAILABLE`: When all Biobase Servers are off.\n- `TIMEOUT`: When at least one Biobase Server is ON but the call timed out.\n- `UNAUTHORIZED`:\n  - If the **lookAllServers** conf is **ON**, it indicates that all running servers returned that the API authentication is unauthorized.\n  - If the **lookAllServers** conf is **OFF**, it indicates that the server that received the biographic request returned that the API authentication is unauthorized.\n- `INVALID_DATA`: The Biobase Server returned that the data request from the API is invalid. It is not supposed to happen if Biobase Server is implemented according to the Biographic Base API.\n- `NOT_FOUND`:\n  - If the **lookAllServers** conf is **ON**, it indicates that the person keys were not found on all Biobase Servers configured.\n  - If the **lookAllServers** conf is **OFF**, it indicates that person keys were not found on the server that received the biographic request.\n- `OK`: The Biobase Server returned biographics/face for the given person keys.\n","type":"string","enum":["UNAVAILABLE","TIMEOUT","UNAUTHORIZED","INVALID_DATA","NOT_FOUND","OK"]},"QualityAnalysis":{"type":"object","properties":{"status":{"description":"Status of the analysis.","type":"string","enum":["PENDING","APPROVED","REJECTED","OK","ERROR","PENDING_DUPLICITIES"]},"user":{"description":"Username of whom issued the approval.","type":"string"},"comments":{"description":"User comments on the approval.","type":"string"},"timestamp":{"description":"Creation time of the approval, be it manual or automatic. If the enroll did not have any anomalies, the approval was automatic, thus this field will be equal to the enroll time. Otherwise, this timestamp will be the time when the user either approved or rejected the enrollment.","type":"integer","format":"int64"},"duplicationIssues":{"type":"array","items":{"$ref":"#/components/schemas/DuplicationIssue"}},"qualityIssues":{"type":"array","items":{"$ref":"#/components/schemas/QualityIssue"}},"sequenceControlIssues":{"type":"array","items":{"$ref":"#/components/schemas/SequenceControlIssue"}}}},"DuplicationIssue":{"type":"object","properties":{"indexes":{"description":"List of pairs of duplicated indexes found.","type":"array","items":{"type":"integer","format":"int32"}}}},"QualityIssue":{"type":"object","properties":{"index":{"description":"Index of the referred finger.","type":"integer","format":"int32"},"quality":{"description":"Quality calculated for the template.","type":"integer","format":"int32"}}},"SequenceControlIssue":{"type":"object","properties":{"index":{"description":"Index of the problematic finger.","type":"integer","format":"int32"},"matches":{"description":"List of sequence control indexes that matched the given finger and its matching score.","type":"array","items":{"type":"object","properties":{"index":{"type":"integer","format":"int32"},"score":{"type":"integer","format":"int32"}}}}}},"EnrollRefusedReason":{"type":"object","properties":{"matchedPeopleThatAreReferenceInSomeExceptionUnderAnalysis":{"description":"List of PGUID of the people that is the reference in some exception under analysis.","type":"array","items":{"type":"string"}},"matchedTransactionsThatHaveAnExceptionUnderAnalysis":{"description":"List of TGUID of entrant transactions with the exception under analysis.","type":"array","items":{"type":"string"}}}}}}}
```

## The ListEnrollTransactionsResponse object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"ListEnrollTransactionsResponse":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/Enroll"}},"pagination":{"$ref":"#/components/schemas/Pagination"},"meta":{"$ref":"#/components/schemas/ResponseMeta"}}},"Enroll":{"type":"object","properties":{"tguid":{"description":"Global unique ID of the transaction.","type":"string"},"pguid":{"description":"PGUID of the UL candidate.","type":"string"},"status":{"description":"Status of the enroll transaction.","type":"string","enum":["ENQUEUED","PROCESSING","ENROLLED","EXCEPTION","FAILED","PENDING","REFUSED","RESENT_ENROLL"]},"timestamp":{"description":"Timestamp of Enroll creation.","type":"integer","format":"int64"},"progress":{"description":"Progress of the Enroll operation.","type":"number","format":"float"},"candidates":{"description":"Identify candidates","type":"array","items":{"$ref":"#/components/schemas/Match"}},"exceptions":{"description":"Exception candidates (verify post match results)","type":"array","items":{"$ref":"#/components/schemas/Match"}},"person":{"$ref":"#/components/schemas/Person"},"qualityAnalysis":{"$ref":"#/components/schemas/QualityAnalysis"},"failReason":{"description":"Message describing why the enroll failed","type":"string"},"isCurrentTransaction":{"description":"Whether this is the current transaction for the person identified by PGUID.","type":"boolean"},"refusedReason":{"$ref":"#/components/schemas/EnrollRefusedReason"},"bonafideScore":{"description":"Bonafide score of the liveness verification. Only returned if the `liveness` flag was set to `true` in the payload of the enroll/update request. Ranges from 0 to 100 (0=attack, 100=genuine).","type":"integer","format":"int32"}}},"Match":{"type":"object","properties":{"matchedPersonPguid":{"description":"PGUID of the person the candidate was matched against.","type":"string"},"matchedPersonTguid":{"description":"TGUID of the person the candidate was matched against.","type":"string"},"biometricMatches":{"description":"Information about the match.","type":"array","items":{"$ref":"#/components/schemas/BiometricMatch"}}}},"BiometricMatch":{"type":"object","properties":{"score":{"description":"Score of the match.","type":"integer","format":"int32"},"queryIndex":{"description":"Index of the biometric data that was sent and caused a match.","type":"integer","format":"int32"},"referenceIndex":{"description":"Index of the biometric data, from the already enrolled person, which matched.","type":"integer","format":"int32"},"minutia":{"description":"Array of minutia matches. Returned only for latent searches.","type":"array","items":{"$ref":"#/components/schemas/Minutiae"}}}},"Minutiae":{"type":"object","properties":{"query":{"description":"Index of Minutiae, from the provided biometric data, which was involved in the match.","type":"integer","format":"int32"},"reference":{"description":"Index of Minutiae, from biometric data already in the database, which was involved in the match.","type":"integer","format":"int32"}}},"Person":{"type":"object","properties":{"pguid":{"description":"Global unique ID of the Person. This attribute is assigned by the AFIS once the person is successfully enrolled","type":"string"},"lastEnrollTguid":{"description":"Global unique ID of the latest transaction on this Person.","type":"string"},"timestamp":{"description":"Timestamp of the latest transaction on this Person.","type":"integer","format":"int64"},"keys":{"type":"array","items":{"$ref":"#/components/schemas/Key"}},"biographics":{"type":"array","items":{"$ref":"#/components/schemas/Biographic"}},"biometric":{"type":"array","items":{"$ref":"#/components/schemas/Biometric"}},"auxiliaries":{"type":"array","items":{"$ref":"#/components/schemas/Biometric"}},"metadata":{"description":"Arbitrary data associated with the person.","type":"array","items":{"type":"string"}},"labels":{"description":"Arbitrary labels associated with a person, which can be used as filters for database queries.","uniqueItems":true,"type":"array","items":{"type":"string"}},"history":{"$ref":"#/components/schemas/History"},"biographicBaseStatus":{"$ref":"#/components/schemas/BiographicBaseStatus"}}},"Key":{"type":"object","properties":{"id":{"description":"Name of entity identifier.","type":"string"},"value":{"description":"Value of entity identifier.","type":"string"}}},"Biographic":{"type":"object","properties":{"id":{"description":"ID of the biographic data being stored.\n\nBiobase Server biographics have their IDs prepended with `bs-`. For example, `bs-name` and `bs-surname`.\n","type":"string"},"value":{"description":"Value of the biographic data.","type":"string"}}},"Biometric":{"type":"object","oneOf":[{"$ref":"#/components/schemas/CONSOLIDATED_TEMPLATE"},{"$ref":"#/components/schemas/TEMPLATE"},{"$ref":"#/components/schemas/ORIGINAL"}],"discriminator":{"propertyName":"source"}},"CONSOLIDATED_TEMPLATE":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained.","type":"string","enum":["CONSOLIDATED_TEMPLATE"]},"type":{"description":"Type of the biometric data.","type":"string","enum":["FINGERPRINT","PALMPRINT","FOOTPRINT","FACE","IRIS","SIGNATURE","SEQUENCE_CONTROL","NEWBORN_PALMPRINT","OTHER"]},"format":{"description":"Format of the biometric data.","type":"string","enum":["PRIVATE","ISO","ANSI","UNKNOWN","EBTS_TYPE9"]},"properties":{"$ref":"#/components/schemas/BiometricProperties"},"index":{"description":"Identifies which biometric, of the specified type, is being sent.","type":"integer","format":"int32"},"content":{"description":"Base64 encoded biometric data.","type":"string"},"quality":{"description":"Given the quality of the extracted biometric template. The quality is unbounded and starts at 0.","type":"integer","format":"int32"}}},"BiometricProperties":{"type":"object","properties":{"width":{"description":"Width, in pixels, of the image. If 0, GBDS will try to extract this information from the image header.","type":"integer","format":"int32"},"height":{"description":"Height, in pixels, of the image. If 0, GBDS will try to extract this information from the image header.","type":"integer","format":"int32"},"resolution":{"description":"Image or template resolution.","type":"integer","format":"int32"},"ratio":{"description":"Proportion of the image.","type":"number","format":"double"},"matcherId":{"description":"ID of the Biometric Matcher to be used in verification and identification operations.","type":"integer","format":"int32"},"extractorId":{"description":"ID of the extractor to be used on the image.","type":"integer","format":"int32"}}},"TEMPLATE":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained.","type":"string","enum":["TEMPLATE"]},"type":{"description":"Type of the biometric data.","type":"string","enum":["FINGERPRINT","PALMPRINT","FOOTPRINT","FACE","IRIS","SIGNATURE","SEQUENCE_CONTROL","NEWBORN_PALMPRINT","OTHER"]},"format":{"description":"Format of the biometric data.","type":"string","enum":["PRIVATE","ISO","ANSI","UNKNOWN","EBTS_TYPE9"]},"properties":{"$ref":"#/components/schemas/BiometricProperties"},"index":{"description":"Identifies which biometric, of the specified type, is being sent.","type":"integer","format":"int32"},"content":{"description":"Base64 encoded biometric data.","type":"string"},"quality":{"description":"Given the quality of the extracted biometric template. The quality is unbounded and starts at 0.","type":"integer","format":"int32"}}},"ORIGINAL":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained.","type":"string","enum":["ORIGINAL"]},"type":{"description":"Type of the biometric data.","type":"string","enum":["FINGERPRINT","PALMPRINT","FOOTPRINT","FACE","IRIS","VOICE","SIGNATURE","SEQUENCE_CONTROL","NEWBORN_PALMPRINT","OTHER"]},"format":{"description":"Format of the biometric data.","type":"string","enum":["RAW","WSQ","JPEG","JPEG2000","PNG","TIFF","GIF","BMP","PCM","WAV","PRIVATE","ISO","ANSI","UNKNOWN","EBTS_TYPE9"]},"properties":{"$ref":"#/components/schemas/BiometricProperties"},"index":{"description":"Identifies which biometric, of the specified type, is being sent.","type":"integer","format":"int32"},"content":{"description":"Base64 encoded biometric data.","type":"string"},"quality":{"description":"Given the quality of the extracted biometric template. The quality is unbounded and starts at 0.","type":"integer","format":"int32"}}},"History":{"type":"object","properties":{"events":{"type":"array","items":{"$ref":"#/components/schemas/HistoryEvent"}}}},"HistoryEvent":{"required":["type"],"type":"object","properties":{"tguid":{"description":"Global unique ID of the transaction.","type":"string"},"timestamp":{"description":"Timestamp of event/transaction.","type":"integer","format":"int64"},"type":{"description":"Type of event/transaction.","type":"string"},"targetTguid":{"description":"Global unique ID of the transaction that was disabled.","type":"string"}},"discriminator":{"propertyName":"type"}},"BiographicBaseStatus":{"description":"Status of the biographic base.\n- `UNAVAILABLE`: When all Biobase Servers are off.\n- `TIMEOUT`: When at least one Biobase Server is ON but the call timed out.\n- `UNAUTHORIZED`:\n  - If the **lookAllServers** conf is **ON**, it indicates that all running servers returned that the API authentication is unauthorized.\n  - If the **lookAllServers** conf is **OFF**, it indicates that the server that received the biographic request returned that the API authentication is unauthorized.\n- `INVALID_DATA`: The Biobase Server returned that the data request from the API is invalid. It is not supposed to happen if Biobase Server is implemented according to the Biographic Base API.\n- `NOT_FOUND`:\n  - If the **lookAllServers** conf is **ON**, it indicates that the person keys were not found on all Biobase Servers configured.\n  - If the **lookAllServers** conf is **OFF**, it indicates that person keys were not found on the server that received the biographic request.\n- `OK`: The Biobase Server returned biographics/face for the given person keys.\n","type":"string","enum":["UNAVAILABLE","TIMEOUT","UNAUTHORIZED","INVALID_DATA","NOT_FOUND","OK"]},"QualityAnalysis":{"type":"object","properties":{"status":{"description":"Status of the analysis.","type":"string","enum":["PENDING","APPROVED","REJECTED","OK","ERROR","PENDING_DUPLICITIES"]},"user":{"description":"Username of whom issued the approval.","type":"string"},"comments":{"description":"User comments on the approval.","type":"string"},"timestamp":{"description":"Creation time of the approval, be it manual or automatic. If the enroll did not have any anomalies, the approval was automatic, thus this field will be equal to the enroll time. Otherwise, this timestamp will be the time when the user either approved or rejected the enrollment.","type":"integer","format":"int64"},"duplicationIssues":{"type":"array","items":{"$ref":"#/components/schemas/DuplicationIssue"}},"qualityIssues":{"type":"array","items":{"$ref":"#/components/schemas/QualityIssue"}},"sequenceControlIssues":{"type":"array","items":{"$ref":"#/components/schemas/SequenceControlIssue"}}}},"DuplicationIssue":{"type":"object","properties":{"indexes":{"description":"List of pairs of duplicated indexes found.","type":"array","items":{"type":"integer","format":"int32"}}}},"QualityIssue":{"type":"object","properties":{"index":{"description":"Index of the referred finger.","type":"integer","format":"int32"},"quality":{"description":"Quality calculated for the template.","type":"integer","format":"int32"}}},"SequenceControlIssue":{"type":"object","properties":{"index":{"description":"Index of the problematic finger.","type":"integer","format":"int32"},"matches":{"description":"List of sequence control indexes that matched the given finger and its matching score.","type":"array","items":{"type":"object","properties":{"index":{"type":"integer","format":"int32"},"score":{"type":"integer","format":"int32"}}}}}},"EnrollRefusedReason":{"type":"object","properties":{"matchedPeopleThatAreReferenceInSomeExceptionUnderAnalysis":{"description":"List of PGUID of the people that is the reference in some exception under analysis.","type":"array","items":{"type":"string"}},"matchedTransactionsThatHaveAnExceptionUnderAnalysis":{"description":"List of TGUID of entrant transactions with the exception under analysis.","type":"array","items":{"type":"string"}}}},"Pagination":{"type":"object","properties":{"total":{"description":"Total number of elements that matched the selection criteria.","type":"integer","format":"int64"},"count":{"description":"Number of elements in the response.","type":"integer","format":"int32"},"pageSize":{"description":"Size of the page.","type":"integer","format":"int32"},"currentPage":{"description":"Number of the current page.","type":"integer","format":"int64"},"totalPages":{"description":"Number of total pages.","type":"integer","format":"int64"}}},"ResponseMeta":{"type":"object","properties":{"tguidsWithError":{"description":"Array containing TGUID for transactions, of the requested page, which had errors during retrieval and thus are NOT present in the returned page.","type":"array","items":{"type":"string"}}}}}}}
```

## The ResponseMeta object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"ResponseMeta":{"type":"object","properties":{"tguidsWithError":{"description":"Array containing TGUID for transactions, of the requested page, which had errors during retrieval and thus are NOT present in the returned page.","type":"array","items":{"type":"string"}}}}}}}
```

## The Fragment object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"Fragment":{"type":"object","properties":{"id":{"description":"ID of the fragment.","type":"string"},"caseId":{"description":"ID of case the fragment is associated to.","type":"string"},"image":{"$ref":"#/components/schemas/Biometric"},"template":{"$ref":"#/components/schemas/Biometric"}}},"Biometric":{"type":"object","oneOf":[{"$ref":"#/components/schemas/CONSOLIDATED_TEMPLATE"},{"$ref":"#/components/schemas/TEMPLATE"},{"$ref":"#/components/schemas/ORIGINAL"}],"discriminator":{"propertyName":"source"}},"CONSOLIDATED_TEMPLATE":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained.","type":"string","enum":["CONSOLIDATED_TEMPLATE"]},"type":{"description":"Type of the biometric data.","type":"string","enum":["FINGERPRINT","PALMPRINT","FOOTPRINT","FACE","IRIS","SIGNATURE","SEQUENCE_CONTROL","NEWBORN_PALMPRINT","OTHER"]},"format":{"description":"Format of the biometric data.","type":"string","enum":["PRIVATE","ISO","ANSI","UNKNOWN","EBTS_TYPE9"]},"properties":{"$ref":"#/components/schemas/BiometricProperties"},"index":{"description":"Identifies which biometric, of the specified type, is being sent.","type":"integer","format":"int32"},"content":{"description":"Base64 encoded biometric data.","type":"string"},"quality":{"description":"Given the quality of the extracted biometric template. The quality is unbounded and starts at 0.","type":"integer","format":"int32"}}},"BiometricProperties":{"type":"object","properties":{"width":{"description":"Width, in pixels, of the image. If 0, GBDS will try to extract this information from the image header.","type":"integer","format":"int32"},"height":{"description":"Height, in pixels, of the image. If 0, GBDS will try to extract this information from the image header.","type":"integer","format":"int32"},"resolution":{"description":"Image or template resolution.","type":"integer","format":"int32"},"ratio":{"description":"Proportion of the image.","type":"number","format":"double"},"matcherId":{"description":"ID of the Biometric Matcher to be used in verification and identification operations.","type":"integer","format":"int32"},"extractorId":{"description":"ID of the extractor to be used on the image.","type":"integer","format":"int32"}}},"TEMPLATE":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained.","type":"string","enum":["TEMPLATE"]},"type":{"description":"Type of the biometric data.","type":"string","enum":["FINGERPRINT","PALMPRINT","FOOTPRINT","FACE","IRIS","SIGNATURE","SEQUENCE_CONTROL","NEWBORN_PALMPRINT","OTHER"]},"format":{"description":"Format of the biometric data.","type":"string","enum":["PRIVATE","ISO","ANSI","UNKNOWN","EBTS_TYPE9"]},"properties":{"$ref":"#/components/schemas/BiometricProperties"},"index":{"description":"Identifies which biometric, of the specified type, is being sent.","type":"integer","format":"int32"},"content":{"description":"Base64 encoded biometric data.","type":"string"},"quality":{"description":"Given the quality of the extracted biometric template. The quality is unbounded and starts at 0.","type":"integer","format":"int32"}}},"ORIGINAL":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained.","type":"string","enum":["ORIGINAL"]},"type":{"description":"Type of the biometric data.","type":"string","enum":["FINGERPRINT","PALMPRINT","FOOTPRINT","FACE","IRIS","VOICE","SIGNATURE","SEQUENCE_CONTROL","NEWBORN_PALMPRINT","OTHER"]},"format":{"description":"Format of the biometric data.","type":"string","enum":["RAW","WSQ","JPEG","JPEG2000","PNG","TIFF","GIF","BMP","PCM","WAV","PRIVATE","ISO","ANSI","UNKNOWN","EBTS_TYPE9"]},"properties":{"$ref":"#/components/schemas/BiometricProperties"},"index":{"description":"Identifies which biometric, of the specified type, is being sent.","type":"integer","format":"int32"},"content":{"description":"Base64 encoded biometric data.","type":"string"},"quality":{"description":"Given the quality of the extracted biometric template. The quality is unbounded and starts at 0.","type":"integer","format":"int32"}}}}}}
```

## The ListULsResponse object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"ListULsResponse":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/UL"}},"pagination":{"$ref":"#/components/schemas/Pagination"}}},"UL":{"type":"object","properties":{"uguid":{"description":"Globally unique ID of the UL.","type":"string"},"status":{"description":"UL Status.","type":"string","enum":["UNSOLVED","SOLVED","ENQUEUED","FAILED"]},"creationTime":{"description":"Timestamp, in milliseconds, of UL creation.","type":"integer","format":"int64"},"personPguid":{"description":"PGUID of the person the UL was matched against. Only present when the UL has status RESOLVED.","type":"string"},"personTguid":{"description":"TGUID of the person the UL was matched against. Only present when the UL has status RESOLVED.","type":"string"},"candidates":{"type":"array","items":{"$ref":"#/components/schemas/Match"}},"linkedULs":{"description":"List of UGUIDs if ULs that were linked against this UL.","type":"array","items":{"type":"string"}},"fragment":{"$ref":"#/components/schemas/Fragment"},"ulAnalysis":{"$ref":"#/components/schemas/ULAnalysis"},"isSearchable":{"description":"Flag that indicates whether the UL's fragment is already registered and searchable.","type":"boolean"},"failReason":{"description":"If failed, this field indicates the reason.","type":"string"}}},"Match":{"type":"object","properties":{"matchedPersonPguid":{"description":"PGUID of the person the candidate was matched against.","type":"string"},"matchedPersonTguid":{"description":"TGUID of the person the candidate was matched against.","type":"string"},"biometricMatches":{"description":"Information about the match.","type":"array","items":{"$ref":"#/components/schemas/BiometricMatch"}}}},"BiometricMatch":{"type":"object","properties":{"score":{"description":"Score of the match.","type":"integer","format":"int32"},"queryIndex":{"description":"Index of the biometric data that was sent and caused a match.","type":"integer","format":"int32"},"referenceIndex":{"description":"Index of the biometric data, from the already enrolled person, which matched.","type":"integer","format":"int32"},"minutia":{"description":"Array of minutia matches. Returned only for latent searches.","type":"array","items":{"$ref":"#/components/schemas/Minutiae"}}}},"Minutiae":{"type":"object","properties":{"query":{"description":"Index of Minutiae, from the provided biometric data, which was involved in the match.","type":"integer","format":"int32"},"reference":{"description":"Index of Minutiae, from biometric data already in the database, which was involved in the match.","type":"integer","format":"int32"}}},"Fragment":{"type":"object","properties":{"id":{"description":"ID of the fragment.","type":"string"},"caseId":{"description":"ID of case the fragment is associated to.","type":"string"},"image":{"$ref":"#/components/schemas/Biometric"},"template":{"$ref":"#/components/schemas/Biometric"}}},"Biometric":{"type":"object","oneOf":[{"$ref":"#/components/schemas/CONSOLIDATED_TEMPLATE"},{"$ref":"#/components/schemas/TEMPLATE"},{"$ref":"#/components/schemas/ORIGINAL"}],"discriminator":{"propertyName":"source"}},"CONSOLIDATED_TEMPLATE":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained.","type":"string","enum":["CONSOLIDATED_TEMPLATE"]},"type":{"description":"Type of the biometric data.","type":"string","enum":["FINGERPRINT","PALMPRINT","FOOTPRINT","FACE","IRIS","SIGNATURE","SEQUENCE_CONTROL","NEWBORN_PALMPRINT","OTHER"]},"format":{"description":"Format of the biometric data.","type":"string","enum":["PRIVATE","ISO","ANSI","UNKNOWN","EBTS_TYPE9"]},"properties":{"$ref":"#/components/schemas/BiometricProperties"},"index":{"description":"Identifies which biometric, of the specified type, is being sent.","type":"integer","format":"int32"},"content":{"description":"Base64 encoded biometric data.","type":"string"},"quality":{"description":"Given the quality of the extracted biometric template. The quality is unbounded and starts at 0.","type":"integer","format":"int32"}}},"BiometricProperties":{"type":"object","properties":{"width":{"description":"Width, in pixels, of the image. If 0, GBDS will try to extract this information from the image header.","type":"integer","format":"int32"},"height":{"description":"Height, in pixels, of the image. If 0, GBDS will try to extract this information from the image header.","type":"integer","format":"int32"},"resolution":{"description":"Image or template resolution.","type":"integer","format":"int32"},"ratio":{"description":"Proportion of the image.","type":"number","format":"double"},"matcherId":{"description":"ID of the Biometric Matcher to be used in verification and identification operations.","type":"integer","format":"int32"},"extractorId":{"description":"ID of the extractor to be used on the image.","type":"integer","format":"int32"}}},"TEMPLATE":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained.","type":"string","enum":["TEMPLATE"]},"type":{"description":"Type of the biometric data.","type":"string","enum":["FINGERPRINT","PALMPRINT","FOOTPRINT","FACE","IRIS","SIGNATURE","SEQUENCE_CONTROL","NEWBORN_PALMPRINT","OTHER"]},"format":{"description":"Format of the biometric data.","type":"string","enum":["PRIVATE","ISO","ANSI","UNKNOWN","EBTS_TYPE9"]},"properties":{"$ref":"#/components/schemas/BiometricProperties"},"index":{"description":"Identifies which biometric, of the specified type, is being sent.","type":"integer","format":"int32"},"content":{"description":"Base64 encoded biometric data.","type":"string"},"quality":{"description":"Given the quality of the extracted biometric template. The quality is unbounded and starts at 0.","type":"integer","format":"int32"}}},"ORIGINAL":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained.","type":"string","enum":["ORIGINAL"]},"type":{"description":"Type of the biometric data.","type":"string","enum":["FINGERPRINT","PALMPRINT","FOOTPRINT","FACE","IRIS","VOICE","SIGNATURE","SEQUENCE_CONTROL","NEWBORN_PALMPRINT","OTHER"]},"format":{"description":"Format of the biometric data.","type":"string","enum":["RAW","WSQ","JPEG","JPEG2000","PNG","TIFF","GIF","BMP","PCM","WAV","PRIVATE","ISO","ANSI","UNKNOWN","EBTS_TYPE9"]},"properties":{"$ref":"#/components/schemas/BiometricProperties"},"index":{"description":"Identifies which biometric, of the specified type, is being sent.","type":"integer","format":"int32"},"content":{"description":"Base64 encoded biometric data.","type":"string"},"quality":{"description":"Given the quality of the extracted biometric template. The quality is unbounded and starts at 0.","type":"integer","format":"int32"}}},"ULAnalysis":{"type":"object","properties":{"user":{"description":"Username of user that solved UL.","type":"string"},"timestamp":{"description":"Timestamp, in milliseconds, of when UL was solved.","type":"integer","format":"int64"}}},"Pagination":{"type":"object","properties":{"total":{"description":"Total number of elements that matched the selection criteria.","type":"integer","format":"int64"},"count":{"description":"Number of elements in the response.","type":"integer","format":"int32"},"pageSize":{"description":"Size of the page.","type":"integer","format":"int32"},"currentPage":{"description":"Number of the current page.","type":"integer","format":"int64"},"totalPages":{"description":"Number of total pages.","type":"integer","format":"int64"}}}}}}
```

## The UL object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"UL":{"type":"object","properties":{"uguid":{"description":"Globally unique ID of the UL.","type":"string"},"status":{"description":"UL Status.","type":"string","enum":["UNSOLVED","SOLVED","ENQUEUED","FAILED"]},"creationTime":{"description":"Timestamp, in milliseconds, of UL creation.","type":"integer","format":"int64"},"personPguid":{"description":"PGUID of the person the UL was matched against. Only present when the UL has status RESOLVED.","type":"string"},"personTguid":{"description":"TGUID of the person the UL was matched against. Only present when the UL has status RESOLVED.","type":"string"},"candidates":{"type":"array","items":{"$ref":"#/components/schemas/Match"}},"linkedULs":{"description":"List of UGUIDs if ULs that were linked against this UL.","type":"array","items":{"type":"string"}},"fragment":{"$ref":"#/components/schemas/Fragment"},"ulAnalysis":{"$ref":"#/components/schemas/ULAnalysis"},"isSearchable":{"description":"Flag that indicates whether the UL's fragment is already registered and searchable.","type":"boolean"},"failReason":{"description":"If failed, this field indicates the reason.","type":"string"}}},"Match":{"type":"object","properties":{"matchedPersonPguid":{"description":"PGUID of the person the candidate was matched against.","type":"string"},"matchedPersonTguid":{"description":"TGUID of the person the candidate was matched against.","type":"string"},"biometricMatches":{"description":"Information about the match.","type":"array","items":{"$ref":"#/components/schemas/BiometricMatch"}}}},"BiometricMatch":{"type":"object","properties":{"score":{"description":"Score of the match.","type":"integer","format":"int32"},"queryIndex":{"description":"Index of the biometric data that was sent and caused a match.","type":"integer","format":"int32"},"referenceIndex":{"description":"Index of the biometric data, from the already enrolled person, which matched.","type":"integer","format":"int32"},"minutia":{"description":"Array of minutia matches. Returned only for latent searches.","type":"array","items":{"$ref":"#/components/schemas/Minutiae"}}}},"Minutiae":{"type":"object","properties":{"query":{"description":"Index of Minutiae, from the provided biometric data, which was involved in the match.","type":"integer","format":"int32"},"reference":{"description":"Index of Minutiae, from biometric data already in the database, which was involved in the match.","type":"integer","format":"int32"}}},"Fragment":{"type":"object","properties":{"id":{"description":"ID of the fragment.","type":"string"},"caseId":{"description":"ID of case the fragment is associated to.","type":"string"},"image":{"$ref":"#/components/schemas/Biometric"},"template":{"$ref":"#/components/schemas/Biometric"}}},"Biometric":{"type":"object","oneOf":[{"$ref":"#/components/schemas/CONSOLIDATED_TEMPLATE"},{"$ref":"#/components/schemas/TEMPLATE"},{"$ref":"#/components/schemas/ORIGINAL"}],"discriminator":{"propertyName":"source"}},"CONSOLIDATED_TEMPLATE":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained.","type":"string","enum":["CONSOLIDATED_TEMPLATE"]},"type":{"description":"Type of the biometric data.","type":"string","enum":["FINGERPRINT","PALMPRINT","FOOTPRINT","FACE","IRIS","SIGNATURE","SEQUENCE_CONTROL","NEWBORN_PALMPRINT","OTHER"]},"format":{"description":"Format of the biometric data.","type":"string","enum":["PRIVATE","ISO","ANSI","UNKNOWN","EBTS_TYPE9"]},"properties":{"$ref":"#/components/schemas/BiometricProperties"},"index":{"description":"Identifies which biometric, of the specified type, is being sent.","type":"integer","format":"int32"},"content":{"description":"Base64 encoded biometric data.","type":"string"},"quality":{"description":"Given the quality of the extracted biometric template. The quality is unbounded and starts at 0.","type":"integer","format":"int32"}}},"BiometricProperties":{"type":"object","properties":{"width":{"description":"Width, in pixels, of the image. If 0, GBDS will try to extract this information from the image header.","type":"integer","format":"int32"},"height":{"description":"Height, in pixels, of the image. If 0, GBDS will try to extract this information from the image header.","type":"integer","format":"int32"},"resolution":{"description":"Image or template resolution.","type":"integer","format":"int32"},"ratio":{"description":"Proportion of the image.","type":"number","format":"double"},"matcherId":{"description":"ID of the Biometric Matcher to be used in verification and identification operations.","type":"integer","format":"int32"},"extractorId":{"description":"ID of the extractor to be used on the image.","type":"integer","format":"int32"}}},"TEMPLATE":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained.","type":"string","enum":["TEMPLATE"]},"type":{"description":"Type of the biometric data.","type":"string","enum":["FINGERPRINT","PALMPRINT","FOOTPRINT","FACE","IRIS","SIGNATURE","SEQUENCE_CONTROL","NEWBORN_PALMPRINT","OTHER"]},"format":{"description":"Format of the biometric data.","type":"string","enum":["PRIVATE","ISO","ANSI","UNKNOWN","EBTS_TYPE9"]},"properties":{"$ref":"#/components/schemas/BiometricProperties"},"index":{"description":"Identifies which biometric, of the specified type, is being sent.","type":"integer","format":"int32"},"content":{"description":"Base64 encoded biometric data.","type":"string"},"quality":{"description":"Given the quality of the extracted biometric template. The quality is unbounded and starts at 0.","type":"integer","format":"int32"}}},"ORIGINAL":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained.","type":"string","enum":["ORIGINAL"]},"type":{"description":"Type of the biometric data.","type":"string","enum":["FINGERPRINT","PALMPRINT","FOOTPRINT","FACE","IRIS","VOICE","SIGNATURE","SEQUENCE_CONTROL","NEWBORN_PALMPRINT","OTHER"]},"format":{"description":"Format of the biometric data.","type":"string","enum":["RAW","WSQ","JPEG","JPEG2000","PNG","TIFF","GIF","BMP","PCM","WAV","PRIVATE","ISO","ANSI","UNKNOWN","EBTS_TYPE9"]},"properties":{"$ref":"#/components/schemas/BiometricProperties"},"index":{"description":"Identifies which biometric, of the specified type, is being sent.","type":"integer","format":"int32"},"content":{"description":"Base64 encoded biometric data.","type":"string"},"quality":{"description":"Given the quality of the extracted biometric template. The quality is unbounded and starts at 0.","type":"integer","format":"int32"}}},"ULAnalysis":{"type":"object","properties":{"user":{"description":"Username of user that solved UL.","type":"string"},"timestamp":{"description":"Timestamp, in milliseconds, of when UL was solved.","type":"integer","format":"int64"}}}}}}
```

## The ULAnalysis object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"ULAnalysis":{"type":"object","properties":{"user":{"description":"Username of user that solved UL.","type":"string"},"timestamp":{"description":"Timestamp, in milliseconds, of when UL was solved.","type":"integer","format":"int64"}}}}}}
```

## The ListULCandidatesResponse object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"ListULCandidatesResponse":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/ULCandidate"}},"pagination":{"$ref":"#/components/schemas/Pagination"}}},"ULCandidate":{"type":"object","properties":{"uguid":{"description":"Globally unique ID of the UL it has matched.","type":"string"},"status":{"description":"Matched UL status.","type":"string","enum":["UNSOLVED","SOLVED"]},"creationTime":{"description":"Timestamp, in milliseconds, of UL creation.","type":"string","format":"date-time"},"matchedPersonPguid":{"description":"PGUID of the person the UL candidate was matched against. Only present when the UL has status RESOLVED.","type":"string"},"matchedPersonTguid":{"description":"TGUID of the person the UL candidate was matched against. Only present when the UL has status RESOLVED.","type":"string"},"caseId":{"description":"Case ID of the UL it has matched.","type":"string"},"fragmentId":{"description":"Fragment ID of the UL it has matched.","type":"string"},"fragmentIndex":{"description":"UL index that matched.","type":"integer","format":"int32"},"user":{"description":"User assigned to the matched UL.","type":"string"},"timestamp":{"description":"Timestamp in milliseconds of the match.","type":"string","format":"date-time"},"candidatePguid":{"description":"PGUID of the UL candidate.","type":"string"},"candidateTguid":{"description":"TGUID of the UL candidate.","type":"string"},"candidateIndex":{"description":"UL candidate index that matched.","type":"integer","format":"int32"},"score":{"description":"Score of the match.","type":"integer","format":"int32"}}},"Pagination":{"type":"object","properties":{"total":{"description":"Total number of elements that matched the selection criteria.","type":"integer","format":"int64"},"count":{"description":"Number of elements in the response.","type":"integer","format":"int32"},"pageSize":{"description":"Size of the page.","type":"integer","format":"int32"},"currentPage":{"description":"Number of the current page.","type":"integer","format":"int64"},"totalPages":{"description":"Number of total pages.","type":"integer","format":"int64"}}}}}}
```

## The ULCandidate object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"ULCandidate":{"type":"object","properties":{"uguid":{"description":"Globally unique ID of the UL it has matched.","type":"string"},"status":{"description":"Matched UL status.","type":"string","enum":["UNSOLVED","SOLVED"]},"creationTime":{"description":"Timestamp, in milliseconds, of UL creation.","type":"string","format":"date-time"},"matchedPersonPguid":{"description":"PGUID of the person the UL candidate was matched against. Only present when the UL has status RESOLVED.","type":"string"},"matchedPersonTguid":{"description":"TGUID of the person the UL candidate was matched against. Only present when the UL has status RESOLVED.","type":"string"},"caseId":{"description":"Case ID of the UL it has matched.","type":"string"},"fragmentId":{"description":"Fragment ID of the UL it has matched.","type":"string"},"fragmentIndex":{"description":"UL index that matched.","type":"integer","format":"int32"},"user":{"description":"User assigned to the matched UL.","type":"string"},"timestamp":{"description":"Timestamp in milliseconds of the match.","type":"string","format":"date-time"},"candidatePguid":{"description":"PGUID of the UL candidate.","type":"string"},"candidateTguid":{"description":"TGUID of the UL candidate.","type":"string"},"candidateIndex":{"description":"UL candidate index that matched.","type":"integer","format":"int32"},"score":{"description":"Score of the match.","type":"integer","format":"int32"}}}}}}
```

## The CreateULsRequest object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"CreateULsRequest":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/Fragment"},"meta":{"$ref":"#/components/schemas/ULValidation"}}},"Fragment":{"type":"object","properties":{"id":{"description":"ID of the fragment.","type":"string"},"caseId":{"description":"ID of case the fragment is associated to.","type":"string"},"image":{"$ref":"#/components/schemas/Biometric"},"template":{"$ref":"#/components/schemas/Biometric"}}},"Biometric":{"type":"object","oneOf":[{"$ref":"#/components/schemas/CONSOLIDATED_TEMPLATE"},{"$ref":"#/components/schemas/TEMPLATE"},{"$ref":"#/components/schemas/ORIGINAL"}],"discriminator":{"propertyName":"source"}},"CONSOLIDATED_TEMPLATE":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained.","type":"string","enum":["CONSOLIDATED_TEMPLATE"]},"type":{"description":"Type of the biometric data.","type":"string","enum":["FINGERPRINT","PALMPRINT","FOOTPRINT","FACE","IRIS","SIGNATURE","SEQUENCE_CONTROL","NEWBORN_PALMPRINT","OTHER"]},"format":{"description":"Format of the biometric data.","type":"string","enum":["PRIVATE","ISO","ANSI","UNKNOWN","EBTS_TYPE9"]},"properties":{"$ref":"#/components/schemas/BiometricProperties"},"index":{"description":"Identifies which biometric, of the specified type, is being sent.","type":"integer","format":"int32"},"content":{"description":"Base64 encoded biometric data.","type":"string"},"quality":{"description":"Given the quality of the extracted biometric template. The quality is unbounded and starts at 0.","type":"integer","format":"int32"}}},"BiometricProperties":{"type":"object","properties":{"width":{"description":"Width, in pixels, of the image. If 0, GBDS will try to extract this information from the image header.","type":"integer","format":"int32"},"height":{"description":"Height, in pixels, of the image. If 0, GBDS will try to extract this information from the image header.","type":"integer","format":"int32"},"resolution":{"description":"Image or template resolution.","type":"integer","format":"int32"},"ratio":{"description":"Proportion of the image.","type":"number","format":"double"},"matcherId":{"description":"ID of the Biometric Matcher to be used in verification and identification operations.","type":"integer","format":"int32"},"extractorId":{"description":"ID of the extractor to be used on the image.","type":"integer","format":"int32"}}},"TEMPLATE":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained.","type":"string","enum":["TEMPLATE"]},"type":{"description":"Type of the biometric data.","type":"string","enum":["FINGERPRINT","PALMPRINT","FOOTPRINT","FACE","IRIS","SIGNATURE","SEQUENCE_CONTROL","NEWBORN_PALMPRINT","OTHER"]},"format":{"description":"Format of the biometric data.","type":"string","enum":["PRIVATE","ISO","ANSI","UNKNOWN","EBTS_TYPE9"]},"properties":{"$ref":"#/components/schemas/BiometricProperties"},"index":{"description":"Identifies which biometric, of the specified type, is being sent.","type":"integer","format":"int32"},"content":{"description":"Base64 encoded biometric data.","type":"string"},"quality":{"description":"Given the quality of the extracted biometric template. The quality is unbounded and starts at 0.","type":"integer","format":"int32"}}},"ORIGINAL":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained.","type":"string","enum":["ORIGINAL"]},"type":{"description":"Type of the biometric data.","type":"string","enum":["FINGERPRINT","PALMPRINT","FOOTPRINT","FACE","IRIS","VOICE","SIGNATURE","SEQUENCE_CONTROL","NEWBORN_PALMPRINT","OTHER"]},"format":{"description":"Format of the biometric data.","type":"string","enum":["RAW","WSQ","JPEG","JPEG2000","PNG","TIFF","GIF","BMP","PCM","WAV","PRIVATE","ISO","ANSI","UNKNOWN","EBTS_TYPE9"]},"properties":{"$ref":"#/components/schemas/BiometricProperties"},"index":{"description":"Identifies which biometric, of the specified type, is being sent.","type":"integer","format":"int32"},"content":{"description":"Base64 encoded biometric data.","type":"string"},"quality":{"description":"Given the quality of the extracted biometric template. The quality is unbounded and starts at 0.","type":"integer","format":"int32"}}},"ULValidation":{"type":"object","properties":{"timeout":{"description":"Time, in milliseconds, waiting for the completion of the operation. If this value is -1, then the method is fully synchronous. If the timeout value is 0, then the method is fully asynchronous. If>0, the call expires after this time (in milliseconds).","type":"integer","format":"int32"}}}}}}
```

## The ULValidation object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"ULValidation":{"type":"object","properties":{"timeout":{"description":"Time, in milliseconds, waiting for the completion of the operation. If this value is -1, then the method is fully synchronous. If the timeout value is 0, then the method is fully asynchronous. If>0, the call expires after this time (in milliseconds).","type":"integer","format":"int32"}}}}}}
```

## The CreateULsResponse object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"CreateULsResponse":{"type":"object","properties":{"data":{"type":"object","properties":{"tguid":{"description":"Global unique ID of the transaction.","type":"string"},"uguid":{"description":"UGUID of target UL.","type":"string"}}}}}}}}
```

## The GetULsResponse object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"GetULsResponse":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/UL"}}},"UL":{"type":"object","properties":{"uguid":{"description":"Globally unique ID of the UL.","type":"string"},"status":{"description":"UL Status.","type":"string","enum":["UNSOLVED","SOLVED","ENQUEUED","FAILED"]},"creationTime":{"description":"Timestamp, in milliseconds, of UL creation.","type":"integer","format":"int64"},"personPguid":{"description":"PGUID of the person the UL was matched against. Only present when the UL has status RESOLVED.","type":"string"},"personTguid":{"description":"TGUID of the person the UL was matched against. Only present when the UL has status RESOLVED.","type":"string"},"candidates":{"type":"array","items":{"$ref":"#/components/schemas/Match"}},"linkedULs":{"description":"List of UGUIDs if ULs that were linked against this UL.","type":"array","items":{"type":"string"}},"fragment":{"$ref":"#/components/schemas/Fragment"},"ulAnalysis":{"$ref":"#/components/schemas/ULAnalysis"},"isSearchable":{"description":"Flag that indicates whether the UL's fragment is already registered and searchable.","type":"boolean"},"failReason":{"description":"If failed, this field indicates the reason.","type":"string"}}},"Match":{"type":"object","properties":{"matchedPersonPguid":{"description":"PGUID of the person the candidate was matched against.","type":"string"},"matchedPersonTguid":{"description":"TGUID of the person the candidate was matched against.","type":"string"},"biometricMatches":{"description":"Information about the match.","type":"array","items":{"$ref":"#/components/schemas/BiometricMatch"}}}},"BiometricMatch":{"type":"object","properties":{"score":{"description":"Score of the match.","type":"integer","format":"int32"},"queryIndex":{"description":"Index of the biometric data that was sent and caused a match.","type":"integer","format":"int32"},"referenceIndex":{"description":"Index of the biometric data, from the already enrolled person, which matched.","type":"integer","format":"int32"},"minutia":{"description":"Array of minutia matches. Returned only for latent searches.","type":"array","items":{"$ref":"#/components/schemas/Minutiae"}}}},"Minutiae":{"type":"object","properties":{"query":{"description":"Index of Minutiae, from the provided biometric data, which was involved in the match.","type":"integer","format":"int32"},"reference":{"description":"Index of Minutiae, from biometric data already in the database, which was involved in the match.","type":"integer","format":"int32"}}},"Fragment":{"type":"object","properties":{"id":{"description":"ID of the fragment.","type":"string"},"caseId":{"description":"ID of case the fragment is associated to.","type":"string"},"image":{"$ref":"#/components/schemas/Biometric"},"template":{"$ref":"#/components/schemas/Biometric"}}},"Biometric":{"type":"object","oneOf":[{"$ref":"#/components/schemas/CONSOLIDATED_TEMPLATE"},{"$ref":"#/components/schemas/TEMPLATE"},{"$ref":"#/components/schemas/ORIGINAL"}],"discriminator":{"propertyName":"source"}},"CONSOLIDATED_TEMPLATE":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained.","type":"string","enum":["CONSOLIDATED_TEMPLATE"]},"type":{"description":"Type of the biometric data.","type":"string","enum":["FINGERPRINT","PALMPRINT","FOOTPRINT","FACE","IRIS","SIGNATURE","SEQUENCE_CONTROL","NEWBORN_PALMPRINT","OTHER"]},"format":{"description":"Format of the biometric data.","type":"string","enum":["PRIVATE","ISO","ANSI","UNKNOWN","EBTS_TYPE9"]},"properties":{"$ref":"#/components/schemas/BiometricProperties"},"index":{"description":"Identifies which biometric, of the specified type, is being sent.","type":"integer","format":"int32"},"content":{"description":"Base64 encoded biometric data.","type":"string"},"quality":{"description":"Given the quality of the extracted biometric template. The quality is unbounded and starts at 0.","type":"integer","format":"int32"}}},"BiometricProperties":{"type":"object","properties":{"width":{"description":"Width, in pixels, of the image. If 0, GBDS will try to extract this information from the image header.","type":"integer","format":"int32"},"height":{"description":"Height, in pixels, of the image. If 0, GBDS will try to extract this information from the image header.","type":"integer","format":"int32"},"resolution":{"description":"Image or template resolution.","type":"integer","format":"int32"},"ratio":{"description":"Proportion of the image.","type":"number","format":"double"},"matcherId":{"description":"ID of the Biometric Matcher to be used in verification and identification operations.","type":"integer","format":"int32"},"extractorId":{"description":"ID of the extractor to be used on the image.","type":"integer","format":"int32"}}},"TEMPLATE":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained.","type":"string","enum":["TEMPLATE"]},"type":{"description":"Type of the biometric data.","type":"string","enum":["FINGERPRINT","PALMPRINT","FOOTPRINT","FACE","IRIS","SIGNATURE","SEQUENCE_CONTROL","NEWBORN_PALMPRINT","OTHER"]},"format":{"description":"Format of the biometric data.","type":"string","enum":["PRIVATE","ISO","ANSI","UNKNOWN","EBTS_TYPE9"]},"properties":{"$ref":"#/components/schemas/BiometricProperties"},"index":{"description":"Identifies which biometric, of the specified type, is being sent.","type":"integer","format":"int32"},"content":{"description":"Base64 encoded biometric data.","type":"string"},"quality":{"description":"Given the quality of the extracted biometric template. The quality is unbounded and starts at 0.","type":"integer","format":"int32"}}},"ORIGINAL":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained.","type":"string","enum":["ORIGINAL"]},"type":{"description":"Type of the biometric data.","type":"string","enum":["FINGERPRINT","PALMPRINT","FOOTPRINT","FACE","IRIS","VOICE","SIGNATURE","SEQUENCE_CONTROL","NEWBORN_PALMPRINT","OTHER"]},"format":{"description":"Format of the biometric data.","type":"string","enum":["RAW","WSQ","JPEG","JPEG2000","PNG","TIFF","GIF","BMP","PCM","WAV","PRIVATE","ISO","ANSI","UNKNOWN","EBTS_TYPE9"]},"properties":{"$ref":"#/components/schemas/BiometricProperties"},"index":{"description":"Identifies which biometric, of the specified type, is being sent.","type":"integer","format":"int32"},"content":{"description":"Base64 encoded biometric data.","type":"string"},"quality":{"description":"Given the quality of the extracted biometric template. The quality is unbounded and starts at 0.","type":"integer","format":"int32"}}},"ULAnalysis":{"type":"object","properties":{"user":{"description":"Username of user that solved UL.","type":"string"},"timestamp":{"description":"Timestamp, in milliseconds, of when UL was solved.","type":"integer","format":"int64"}}}}}}
```

## The SolveULsRequest object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"SolveULsRequest":{"type":"object","properties":{"data":{"type":"object","properties":{"tguid":{"description":"TGUID of reference person to which the UL should be matched.","type":"string"},"user":{"description":"User that is solving UL.","type":"string"}}}}}}}}
```

## The DeleteULCandidatesRequest object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"DeleteULCandidatesRequest":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/DeleteULCandidatesSpec"}}},"DeleteULCandidatesSpec":{"type":"object","properties":{"uguid":{"description":"UGUID of target UL.","type":"string"},"candidates":{"description":"Array of people whose biometric data matched with the biometric data.","type":"array","items":{"$ref":"#/components/schemas/ULCandidateIdentifier"}}}},"ULCandidateIdentifier":{"type":"object","properties":{"pguid":{"description":"PGUID of the target candidate.","type":"string"},"tguid":{"description":"TGUID of the target candidate.","type":"string"},"index":{"description":"Index of the target candidate.","type":"integer","format":"int32"}}}}}}
```

## The ULCandidateIdentifier object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"ULCandidateIdentifier":{"type":"object","properties":{"pguid":{"description":"PGUID of the target candidate.","type":"string"},"tguid":{"description":"TGUID of the target candidate.","type":"string"},"index":{"description":"Index of the target candidate.","type":"integer","format":"int32"}}}}}}
```

## The DeleteULCandidatesSpec object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"DeleteULCandidatesSpec":{"type":"object","properties":{"uguid":{"description":"UGUID of target UL.","type":"string"},"candidates":{"description":"Array of people whose biometric data matched with the biometric data.","type":"array","items":{"$ref":"#/components/schemas/ULCandidateIdentifier"}}}},"ULCandidateIdentifier":{"type":"object","properties":{"pguid":{"description":"PGUID of the target candidate.","type":"string"},"tguid":{"description":"TGUID of the target candidate.","type":"string"},"index":{"description":"Index of the target candidate.","type":"integer","format":"int32"}}}}}}
```

## The EnrollRefusedReason object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"EnrollRefusedReason":{"type":"object","properties":{"matchedPeopleThatAreReferenceInSomeExceptionUnderAnalysis":{"description":"List of PGUID of the people that is the reference in some exception under analysis.","type":"array","items":{"type":"string"}},"matchedTransactionsThatHaveAnExceptionUnderAnalysis":{"description":"List of TGUID of entrant transactions with the exception under analysis.","type":"array","items":{"type":"string"}}}}}}}
```

## The GetVersion object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"GetVersion":{"type":"object","properties":{"data":{"type":"object","properties":{"api":{"type":"object","properties":{"version":{"type":"string"},"build":{"type":"string"},"apiId":{"type":"string"}}},"searchEngine":{"type":"object","properties":{"version":{"type":"string"},"build":{"type":"string"}}}}}}}}}}
```

## The GroupEmail object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"GroupEmail":{"type":"object","properties":{"data":{"type":"object","properties":{"name":{"description":"Name of the group","type":"string"},"enabled":{"description":"Enable or disable the send email service for this group.","type":"boolean"},"emails":{"description":"array of e-mails","type":"array","items":{"type":"string"}}}}}}}}}
```

## The CreateGroupEmailResponse object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"CreateGroupEmailResponse":{"type":"object","properties":{"status":{"type":"string"},"data":{"type":"object","properties":{"name":{"description":"Name of the group","type":"string"},"enabled":{"description":"Enable or disable the send email service for this group.","type":"boolean"},"emails":{"description":"array of e-mails","type":"array","items":{"type":"string"}}}}}}}}}
```

## The UserGroup object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"UserGroup":{"type":"object","properties":{"data":{"type":"object","properties":{"username":{"description":"Name of the user.","type":"string"},"groups":{"description":"Array of group name objects.","type":"array","items":{"type":"object","properties":{"name":{"type":"string"}}}}}}}}}}}
```

## The CreateUserEmailResponse object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"CreateUserEmailResponse":{"type":"object","properties":{"status":{"type":"string"},"data":{"type":"object","properties":{"username":{"description":"Name of the user.","type":"string"},"groups":{"description":"Array of objects of groups","type":"array","items":{"type":"object","properties":{"name":{"type":"string"}}}}}}}}}}}
```

## The ConfigurationRequest object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"ConfigurationRequest":{"type":"object","properties":{"application":{"description":"Configuration mode for the application.","type":"string","enum":["GBDS_API","GBDS_DRIVER","GBDS_API_AND_DRIVER"]},"configurations":{"description":"Dictionary of configuration parameters and default values. It can contain multiple unique parameters as Strings.","type":"object"}}}}}}
```

## The TransparencyPeopleRequest object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"TransparencyPeopleRequest":{"type":"object","properties":{"pguid":{"description":"person global ID.","type":"string"},"action":{"description":"transparency action","type":"string","enum":["NOTIFY","CLASSIFIED","REMOVE"]},"enabled":{"type":"string"},"groups":{"description":"groups the pguid belongs to","type":"array","items":{"type":"object"}}}}}}}
```

## The TransparencyPeopleResponse object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"TransparencyPeopleResponse":{"type":"object","properties":{"status":{"type":"string","description":"transaction status."},"data":{"$ref":"#/components/schemas/TransparencyPeopleRequest"}}},"TransparencyPeopleRequest":{"type":"object","properties":{"pguid":{"description":"person global ID.","type":"string"},"action":{"description":"transparency action","type":"string","enum":["NOTIFY","CLASSIFIED","REMOVE"]},"enabled":{"type":"string"},"groups":{"description":"groups the pguid belongs to","type":"array","items":{"type":"object"}}}}}}}
```

## The GetTransparencyPeople object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"GetTransparencyPeople":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/TransparencyPeopleRequest"}}}},"TransparencyPeopleRequest":{"type":"object","properties":{"pguid":{"description":"person global ID.","type":"string"},"action":{"description":"transparency action","type":"string","enum":["NOTIFY","CLASSIFIED","REMOVE"]},"enabled":{"type":"string"},"groups":{"description":"groups the pguid belongs to","type":"array","items":{"type":"object"}}}}}}}
```

## The GetMatcherStatusResponse object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"GetMatcherStatusResponse":{"type":"object","properties":{"data":{"type":"object","properties":{"configuredMatchers":{"description":"Number of matchers running on the cluster.","type":"integer","format":"int32"},"peopleCount":{"description":"Sum of all people in the nodes.","type":"integer","format":"int32"},"ulCount":{"description":"Sum of all ULs in the nodes.","type":"integer","format":"int32"},"nodes":{"description":"Array of nodes.","type":"array","items":{"type":"object","properties":{"hostname":{"description":"Name of the node.","type":"string"},"monitorPort":{"description":"Port of the GBDS Monitor service.","type":"integer","format":"int32"},"status":{"description":"Status of the node.","type":"string","enum":["NONE","SPRING_START","CLUSTER_ASSEMBLY","MATCHERS_ASSEMBLY","PEOPLE_BOOT","UL_BOOT","KAFKA_START","RUNNING","SHUTTING_DOWN"]},"configuredMatchers":{"description":"Number of matchers running on the node.","type":"integer","format":"int32"},"peopleCount":{"description":"Sum of all people in this node.","type":"integer","format":"int32"},"ulCount":{"description":"Sum of all ULs in this node.","type":"integer","format":"int32"},"memory":{"description":"Memory used by the node. Unused biometric modalities will not be shown.","$ref":"#/components/schemas/Memory"},"activeMatchers":{"description":"Matchers running on the node.","type":"array","items":{"type":"object","properties":{"name":{"description":"Name of the matcher.","type":"string"},"peopleCount":{"description":"Quantity of people in the matcher.","type":"integer","format":"int32"},"ulCount":{"description":"Quantity of ULs in the matcher.","type":"integer","format":"int32"},"memory":{"description":"Memory used by the matcher. Unused biometric modalities will not be shown.","$ref":"#/components/schemas/Memory"}}}}}}}}}}},"Memory":{"type":"object","properties":{"FINGERPRINT":{"type":"object","properties":{"size":{"type":"integer","format":"int32"},"total":{"type":"integer","format":"int32"}}},"PALMPRINT":{"type":"object","properties":{"size":{"type":"integer","format":"int32"},"total":{"type":"integer","format":"int32"}}},"NEWBORN":{"type":"object","properties":{"size":{"type":"integer","format":"int32"},"total":{"type":"integer","format":"int32"}}},"UL_FINGERPRINT":{"type":"object","properties":{"size":{"type":"integer","format":"int32"},"total":{"type":"integer","format":"int32"}}},"UL_PALMPRINT":{"type":"object","properties":{"size":{"type":"integer","format":"int32"},"total":{"type":"integer","format":"int32"}}},"FACE":{"type":"object","properties":{"size":{"type":"integer","format":"int32"},"total":{"type":"integer","format":"int32"}}},"IRIS":{"type":"object","properties":{"size":{"type":"integer","format":"int32"},"total":{"type":"integer","format":"int32"}}}}}}}}
```

## The Memory object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"Memory":{"type":"object","properties":{"FINGERPRINT":{"type":"object","properties":{"size":{"type":"integer","format":"int32"},"total":{"type":"integer","format":"int32"}}},"PALMPRINT":{"type":"object","properties":{"size":{"type":"integer","format":"int32"},"total":{"type":"integer","format":"int32"}}},"NEWBORN":{"type":"object","properties":{"size":{"type":"integer","format":"int32"},"total":{"type":"integer","format":"int32"}}},"UL_FINGERPRINT":{"type":"object","properties":{"size":{"type":"integer","format":"int32"},"total":{"type":"integer","format":"int32"}}},"UL_PALMPRINT":{"type":"object","properties":{"size":{"type":"integer","format":"int32"},"total":{"type":"integer","format":"int32"}}},"FACE":{"type":"object","properties":{"size":{"type":"integer","format":"int32"},"total":{"type":"integer","format":"int32"}}},"IRIS":{"type":"object","properties":{"size":{"type":"integer","format":"int32"},"total":{"type":"integer","format":"int32"}}}}}}}}
```

## The GetGBDSStatusResponse object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"GetGBDSStatusResponse":{"type":"object","properties":{"data":{"type":"object","properties":{"configuredMatchers":{"description":"Number of matchers running on the cluster.","type":"integer","format":"int32"},"nodes":{"type":"array","items":{"type":"object","properties":{"hostname":{"description":"Name of the node.","type":"string"},"monitorPort":{"description":"Port of the GBDS Monitor service.","type":"integer","format":"int32"},"configuredMatchers":{"description":"Number of matchers running on the node.","type":"integer","format":"int32"}}}}}}}}}}}
```

## The ChangeLogLevel object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"ChangeLogLevel":{"type":"object","properties":{"component":{"type":"string","enum":["API","DRIVER"]},"logLevel":{"type":"string","enum":["TRACE","DEBUG","INFO","WARN","ERROR","OFF","ALL"]}}}}}}
```

## The ChangeLogLevelRequest object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"ChangeLogLevelRequest":{"type":"object","properties":{"data":{"type":"array","writeOnly":true,"items":{"$ref":"#/components/schemas/ChangeLogLevel"}}}},"ChangeLogLevel":{"type":"object","properties":{"component":{"type":"string","enum":["API","DRIVER"]},"logLevel":{"type":"string","enum":["TRACE","DEBUG","INFO","WARN","ERROR","OFF","ALL"]}}}}}}
```

## The ExtractionServiceBean object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"ExtractionServiceBean":{"type":"object","properties":{"id":{"type":"integer","format":"int32"},"url":{"type":"string"},"enabled":{"type":"boolean"},"library":{"type":"string","enum":["GINGER","FACE","GIRL"]},"message":{"type":"string"}}}}}}
```

## The ListExtractionServicesResponse object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"ListExtractionServicesResponse":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/ExtractionServiceBean"}}}},"ExtractionServiceBean":{"type":"object","properties":{"id":{"type":"integer","format":"int32"},"url":{"type":"string"},"enabled":{"type":"boolean"},"library":{"type":"string","enum":["GINGER","FACE","GIRL"]},"message":{"type":"string"}}}}}}
```

## The ExtractionServiceRequest object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"ExtractionServiceRequest":{"type":"object","properties":{"library":{"type":"string","enum":["GINGER","FACE","GIRL"]},"count":{"type":"integer","format":"int32"}}}}}}
```

## The ShutdownRequest object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"ShutdownRequest":{"type":"object","properties":{"data":{"type":"object","properties":{"shouldShutdownAPI":{"type":"boolean"},"shouldShutdownDriver":{"type":"boolean"}}}}}}}}
```

## The QualityExtractionBean object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"QualityExtractionBean":{"type":"object","properties":{"id":{"type":"integer","format":"int32"},"url":{"type":"string"},"enabled":{"type":"boolean"},"library":{"type":"string","enum":["FACE","FINGER"]},"message":{"type":"string"}}}}}}
```

## The QualityExtractionResponse object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"QualityExtractionResponse":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/QualityExtractionBean"}}}},"QualityExtractionBean":{"type":"object","properties":{"id":{"type":"integer","format":"int32"},"url":{"type":"string"},"enabled":{"type":"boolean"},"library":{"type":"string","enum":["FACE","FINGER"]},"message":{"type":"string"}}}}}}
```

## The QualityExtractionRequest object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"QualityExtractionRequest":{"type":"object","properties":{"library":{"type":"string","enum":["FINGER","FACE"]},"count":{"type":"integer","format":"int32"}}}}}}
```

## The API object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"API":{"type":"object","properties":{"apiId":{"type":"string","description":"Unique ID of the API instance."},"hostname":{"type":"string","description":"Hostname or IP Address of the node that is hosting the API instance."},"port":{"type":"integer","format":"int32","description":"Port mapped to the API instance."},"type":{"type":"string","enum":["LEADER","RUNNER"]}}}}}}
```

## The CreateAPIRequest object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"CreateAPIRequest":{"type":"object","properties":{"data":{"type":"object","$ref":"#/components/schemas/API"}}},"API":{"type":"object","properties":{"apiId":{"type":"string","description":"Unique ID of the API instance."},"hostname":{"type":"string","description":"Hostname or IP Address of the node that is hosting the API instance."},"port":{"type":"integer","format":"int32","description":"Port mapped to the API instance."},"type":{"type":"string","enum":["LEADER","RUNNER"]}}}}}}
```

## The CreateAPIResponse object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"CreateAPIResponse":{"type":"object","properties":{"status":{"type":"string","enum":["CREATED","UPDATED"]},"data":{"type":"object","$ref":"#/components/schemas/API"}}},"API":{"type":"object","properties":{"apiId":{"type":"string","description":"Unique ID of the API instance."},"hostname":{"type":"string","description":"Hostname or IP Address of the node that is hosting the API instance."},"port":{"type":"integer","format":"int32","description":"Port mapped to the API instance."},"type":{"type":"string","enum":["LEADER","RUNNER"]}}}}}}
```

## The ListAPIsResponse object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"ListAPIsResponse":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/API"}}}},"API":{"type":"object","properties":{"apiId":{"type":"string","description":"Unique ID of the API instance."},"hostname":{"type":"string","description":"Hostname or IP Address of the node that is hosting the API instance."},"port":{"type":"integer","format":"int32","description":"Port mapped to the API instance."},"type":{"type":"string","enum":["LEADER","RUNNER"]}}}}}}
```

## The TransactionReportResponse object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"TransactionReportResponse":{"type":"object","properties":{"data":{"type":"array","items":{"oneOf":[{"$ref":"#/components/schemas/ReportGroupedByAPIEnroll"},{"$ref":"#/components/schemas/ReportGroupedByAPISearch"},{"$ref":"#/components/schemas/ReportNotGroupedByAPIEnroll"},{"$ref":"#/components/schemas/ReportNotGroupedByAPISearch"}]}}}},"ReportGroupedByAPIEnroll":{"type":"object","properties":{"count":{"description":"Sum of transactions of this type in during the specified period.","type":"integer","format":"int32"},"extractionTimeAvg":{"description":"Average time for template extraction.","type":"number","format":"double"},"extractionTimeMin":{"description":"Minimum time for template extraction.","type":"integer","format":"int32"},"extractionTimeMax":{"description":"Maximum time for template extraction.","type":"integer","format":"int32"},"extractionQualityAvg":{"description":"Average time for quality extraction.","type":"number","format":"double"},"extractionQualityMin":{"description":"Minimum time for quality extraction.","type":"integer","format":"int32"},"extractionQualityMax":{"description":"Maximum time for template extraction.","type":"integer","format":"int32"},"matchAvg":{"description":"Average time for biometric comparison.","type":"number","format":"double"},"matchMin":{"description":"Minimum time for biometric comparison.","type":"integer","format":"int32"},"matchMax":{"description":"Maximum time for biometric comparison.","type":"integer","format":"int32"},"totalAvg":{"description":"Average time to complete a transaction.","type":"number","format":"double"},"totalMin":{"description":"Minimum time to complete a transaction.","type":"integer","format":"int32"},"totalMax":{"description":"Maximum time to complete a transaction.","type":"integer","format":"int32"},"type":{"description":"Transaction type.","type":"string","enum":["ENROLL","UPDATE"]},"apiId":{"description":"API ID to group transactions.","type":"string"}}},"ReportGroupedByAPISearch":{"type":"object","properties":{"count":{"description":"Sum of transactions of this type in during the specified period.","type":"integer","format":"int32"},"extractionTimeAvg":{"description":"Average time for template extraction.","type":"number","format":"double"},"extractionTimeMin":{"description":"Minimum time for template extraction.","type":"integer","format":"int32"},"extractionTimeMax":{"description":"Maximum time for template extraction.","type":"integer","format":"int32"},"extractionQualityAvg":{"description":"Average time for quality extraction.","type":"number","format":"double"},"extractionQualityMin":{"description":"Minimum time for quality extraction.","type":"integer","format":"int32"},"extractionQualityMax":{"description":"Maximum time for template extraction.","type":"integer","format":"int32"},"matchAvg":{"description":"Average time for biometric comparison.","type":"number","format":"double"},"matchMin":{"description":"Minimum time for biometric comparison.","type":"integer","format":"int32"},"matchMax":{"description":"Maximum time for biometric comparison.","type":"integer","format":"int32"},"totalAvg":{"description":"Average time to complete a transaction.","type":"number","format":"double"},"totalMin":{"description":"Minimum time to complete a transaction.","type":"integer","format":"int32"},"totalMax":{"description":"Maximum time to complete a transaction.","type":"integer","format":"int32"},"type":{"description":"Transaction type.","type":"string","enum":["VERIFY","IDENTIFY"]},"latent":{"description":"Whether the transactions are latent searches or not.","type":"boolean"},"ul":{"description":"Whether the transactions are UL searches or not.","type":"boolean"},"apiId":{"description":"API ID to group transactions.","type":"string"}}},"ReportNotGroupedByAPIEnroll":{"type":"object","properties":{"count":{"description":"Sum of transactions of this type in during the specified period.","type":"integer","format":"int32"},"extractionTimeAvg":{"description":"Average time for template extraction.","type":"number","format":"double"},"extractionTimeMin":{"description":"Minimum time for template extraction.","type":"integer","format":"int32"},"extractionTimeMax":{"description":"Maximum time for template extraction.","type":"integer","format":"int32"},"extractionQualityAvg":{"description":"Average time for quality extraction.","type":"number","format":"double"},"extractionQualityMin":{"description":"Minimum time for quality extraction.","type":"integer","format":"int32"},"extractionQualityMax":{"description":"Maximum time for template extraction.","type":"integer","format":"int32"},"matchAvg":{"description":"Average time for biometric comparison.","type":"number","format":"double"},"matchMin":{"description":"Minimum time for biometric comparison.","type":"integer","format":"int32"},"matchMax":{"description":"Maximum time for biometric comparison.","type":"integer","format":"int32"},"totalAvg":{"description":"Average time to complete a transaction.","type":"number","format":"double"},"totalMin":{"description":"Minimum time to complete a transaction.","type":"integer","format":"int32"},"totalMax":{"description":"Maximum time to complete a transaction.","type":"integer","format":"int32"},"type":{"description":"Transaction type.","type":"string","enum":["ENROLL","UPDATE"]}}},"ReportNotGroupedByAPISearch":{"type":"object","properties":{"count":{"description":"Sum of transactions of this type in during the specified period.","type":"integer","format":"int32"},"extractionTimeAvg":{"description":"Average time for template extraction.","type":"number","format":"double"},"extractionTimeMin":{"description":"Minimum time for template extraction.","type":"integer","format":"int32"},"extractionTimeMax":{"description":"Maximum time for template extraction.","type":"integer","format":"int32"},"extractionQualityAvg":{"description":"Average time for quality extraction.","type":"number","format":"double"},"extractionQualityMin":{"description":"Minimum time for quality extraction.","type":"integer","format":"int32"},"extractionQualityMax":{"description":"Maximum time for template extraction.","type":"integer","format":"int32"},"matchAvg":{"description":"Average time for biometric comparison.","type":"number","format":"double"},"matchMin":{"description":"Minimum time for biometric comparison.","type":"integer","format":"int32"},"matchMax":{"description":"Maximum time for biometric comparison.","type":"integer","format":"int32"},"totalAvg":{"description":"Average time to complete a transaction.","type":"number","format":"double"},"totalMin":{"description":"Minimum time to complete a transaction.","type":"integer","format":"int32"},"totalMax":{"description":"Maximum time to complete a transaction.","type":"integer","format":"int32"},"type":{"description":"Transaction type.","type":"string","enum":["VERIFY","IDENTIFY"]},"latent":{"description":"Whether the transactions are latent searches or not.","type":"boolean"},"ul":{"description":"Whether the transactions are UL searches or not.","type":"boolean"}}}}}}
```

## The ReportGroupedByAPIEnroll object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"ReportGroupedByAPIEnroll":{"type":"object","properties":{"count":{"description":"Sum of transactions of this type in during the specified period.","type":"integer","format":"int32"},"extractionTimeAvg":{"description":"Average time for template extraction.","type":"number","format":"double"},"extractionTimeMin":{"description":"Minimum time for template extraction.","type":"integer","format":"int32"},"extractionTimeMax":{"description":"Maximum time for template extraction.","type":"integer","format":"int32"},"extractionQualityAvg":{"description":"Average time for quality extraction.","type":"number","format":"double"},"extractionQualityMin":{"description":"Minimum time for quality extraction.","type":"integer","format":"int32"},"extractionQualityMax":{"description":"Maximum time for template extraction.","type":"integer","format":"int32"},"matchAvg":{"description":"Average time for biometric comparison.","type":"number","format":"double"},"matchMin":{"description":"Minimum time for biometric comparison.","type":"integer","format":"int32"},"matchMax":{"description":"Maximum time for biometric comparison.","type":"integer","format":"int32"},"totalAvg":{"description":"Average time to complete a transaction.","type":"number","format":"double"},"totalMin":{"description":"Minimum time to complete a transaction.","type":"integer","format":"int32"},"totalMax":{"description":"Maximum time to complete a transaction.","type":"integer","format":"int32"},"type":{"description":"Transaction type.","type":"string","enum":["ENROLL","UPDATE"]},"apiId":{"description":"API ID to group transactions.","type":"string"}}}}}}
```

## The ReportGroupedByAPISearch object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"ReportGroupedByAPISearch":{"type":"object","properties":{"count":{"description":"Sum of transactions of this type in during the specified period.","type":"integer","format":"int32"},"extractionTimeAvg":{"description":"Average time for template extraction.","type":"number","format":"double"},"extractionTimeMin":{"description":"Minimum time for template extraction.","type":"integer","format":"int32"},"extractionTimeMax":{"description":"Maximum time for template extraction.","type":"integer","format":"int32"},"extractionQualityAvg":{"description":"Average time for quality extraction.","type":"number","format":"double"},"extractionQualityMin":{"description":"Minimum time for quality extraction.","type":"integer","format":"int32"},"extractionQualityMax":{"description":"Maximum time for template extraction.","type":"integer","format":"int32"},"matchAvg":{"description":"Average time for biometric comparison.","type":"number","format":"double"},"matchMin":{"description":"Minimum time for biometric comparison.","type":"integer","format":"int32"},"matchMax":{"description":"Maximum time for biometric comparison.","type":"integer","format":"int32"},"totalAvg":{"description":"Average time to complete a transaction.","type":"number","format":"double"},"totalMin":{"description":"Minimum time to complete a transaction.","type":"integer","format":"int32"},"totalMax":{"description":"Maximum time to complete a transaction.","type":"integer","format":"int32"},"type":{"description":"Transaction type.","type":"string","enum":["VERIFY","IDENTIFY"]},"latent":{"description":"Whether the transactions are latent searches or not.","type":"boolean"},"ul":{"description":"Whether the transactions are UL searches or not.","type":"boolean"},"apiId":{"description":"API ID to group transactions.","type":"string"}}}}}}
```

## The ReportNotGroupedByAPIEnroll object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"ReportNotGroupedByAPIEnroll":{"type":"object","properties":{"count":{"description":"Sum of transactions of this type in during the specified period.","type":"integer","format":"int32"},"extractionTimeAvg":{"description":"Average time for template extraction.","type":"number","format":"double"},"extractionTimeMin":{"description":"Minimum time for template extraction.","type":"integer","format":"int32"},"extractionTimeMax":{"description":"Maximum time for template extraction.","type":"integer","format":"int32"},"extractionQualityAvg":{"description":"Average time for quality extraction.","type":"number","format":"double"},"extractionQualityMin":{"description":"Minimum time for quality extraction.","type":"integer","format":"int32"},"extractionQualityMax":{"description":"Maximum time for template extraction.","type":"integer","format":"int32"},"matchAvg":{"description":"Average time for biometric comparison.","type":"number","format":"double"},"matchMin":{"description":"Minimum time for biometric comparison.","type":"integer","format":"int32"},"matchMax":{"description":"Maximum time for biometric comparison.","type":"integer","format":"int32"},"totalAvg":{"description":"Average time to complete a transaction.","type":"number","format":"double"},"totalMin":{"description":"Minimum time to complete a transaction.","type":"integer","format":"int32"},"totalMax":{"description":"Maximum time to complete a transaction.","type":"integer","format":"int32"},"type":{"description":"Transaction type.","type":"string","enum":["ENROLL","UPDATE"]}}}}}}
```

## The ReportNotGroupedByAPISearch object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"ReportNotGroupedByAPISearch":{"type":"object","properties":{"count":{"description":"Sum of transactions of this type in during the specified period.","type":"integer","format":"int32"},"extractionTimeAvg":{"description":"Average time for template extraction.","type":"number","format":"double"},"extractionTimeMin":{"description":"Minimum time for template extraction.","type":"integer","format":"int32"},"extractionTimeMax":{"description":"Maximum time for template extraction.","type":"integer","format":"int32"},"extractionQualityAvg":{"description":"Average time for quality extraction.","type":"number","format":"double"},"extractionQualityMin":{"description":"Minimum time for quality extraction.","type":"integer","format":"int32"},"extractionQualityMax":{"description":"Maximum time for template extraction.","type":"integer","format":"int32"},"matchAvg":{"description":"Average time for biometric comparison.","type":"number","format":"double"},"matchMin":{"description":"Minimum time for biometric comparison.","type":"integer","format":"int32"},"matchMax":{"description":"Maximum time for biometric comparison.","type":"integer","format":"int32"},"totalAvg":{"description":"Average time to complete a transaction.","type":"number","format":"double"},"totalMin":{"description":"Minimum time to complete a transaction.","type":"integer","format":"int32"},"totalMax":{"description":"Maximum time to complete a transaction.","type":"integer","format":"int32"},"type":{"description":"Transaction type.","type":"string","enum":["VERIFY","IDENTIFY"]},"latent":{"description":"Whether the transactions are latent searches or not.","type":"boolean"},"ul":{"description":"Whether the transactions are UL searches or not.","type":"boolean"}}}}}}
```

## The TrustedAddKeysResponse object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"TrustedAddKeysResponse":{"type":"object","properties":{"data":{"type":"object","properties":{"pguid":{"description":"Global unique ID of the Person to whom the keys were added.","type":"string"},"lastEnrollTguid":{"description":"Global unique ID of the current Person transaction that was changed.","type":"string"},"keys":{"description":"List of all keys of the Person, after new keys were added.","type":"array","items":{"$ref":"#/components/schemas/Key"}}}}}},"Key":{"type":"object","properties":{"id":{"description":"Name of entity identifier.","type":"string"},"value":{"description":"Value of entity identifier.","type":"string"}}}}}}
```

## The BiographicBaseStatus object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"BiographicBaseStatus":{"description":"Status of the biographic base.\n- `UNAVAILABLE`: When all Biobase Servers are off.\n- `TIMEOUT`: When at least one Biobase Server is ON but the call timed out.\n- `UNAUTHORIZED`:\n  - If the **lookAllServers** conf is **ON**, it indicates that all running servers returned that the API authentication is unauthorized.\n  - If the **lookAllServers** conf is **OFF**, it indicates that the server that received the biographic request returned that the API authentication is unauthorized.\n- `INVALID_DATA`: The Biobase Server returned that the data request from the API is invalid. It is not supposed to happen if Biobase Server is implemented according to the Biographic Base API.\n- `NOT_FOUND`:\n  - If the **lookAllServers** conf is **ON**, it indicates that the person keys were not found on all Biobase Servers configured.\n  - If the **lookAllServers** conf is **OFF**, it indicates that person keys were not found on the server that received the biographic request.\n- `OK`: The Biobase Server returned biographics/face for the given person keys.\n","type":"string","enum":["UNAVAILABLE","TIMEOUT","UNAUTHORIZED","INVALID_DATA","NOT_FOUND","OK"]}}}}
```

## The LivenessCheckBiometric object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"LivenessCheckBiometric":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained. The value must be `ORIGINAL`.","type":"string","enum":["ORIGINAL"]},"type":{"description":"Type of the biometric data. The value must be `FACE`.","type":"string","enum":["FACE"]},"format":{"description":"Format of the biometric data. `REQUIRED`.","type":"string","enum":["JPEG","JPEG2000","PNG","TIFF","GIF","BMP"]},"content":{"description":"Base64 encoded biometric data. `REQUIRED`.","type":"string"}}}}}}
```

## The LivenessCheckRequest object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"LivenessCheckRequest":{"type":"object","properties":{"data":{"$ref":"#/components/schemas/LivenessCheckBiometric"}}},"LivenessCheckBiometric":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained. The value must be `ORIGINAL`.","type":"string","enum":["ORIGINAL"]},"type":{"description":"Type of the biometric data. The value must be `FACE`.","type":"string","enum":["FACE"]},"format":{"description":"Format of the biometric data. `REQUIRED`.","type":"string","enum":["JPEG","JPEG2000","PNG","TIFF","GIF","BMP"]},"content":{"description":"Base64 encoded biometric data. `REQUIRED`.","type":"string"}}}}}}
```

## The LivenessCheckResponse object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"LivenessCheckResponse":{"type":"object","properties":{"tguid":{"description":"Global unique ID of the transaction.","type":"string"},"bonafideScore":{"description":"Bonafide score of the liveness verification. Ranges from 0 to 100 (0=attack, 100=genuine).","type":"integer","format":"int32"}}}}}}
```

## The GetLivenessResultResponse object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"GetLivenessResultResponse":{"type":"object","properties":{"tguid":{"description":"Global unique ID of the transaction.","type":"string"},"biometric":{"description":"Biometric data used for the liveness verification.","$ref":"#/components/schemas/LivenessCheckBiometric"},"bonafideScore":{"description":"Bonafide score of the liveness verification. Ranges from 0 to 100 (0=attack, 100=genuine).","type":"integer","format":"int32"}}},"LivenessCheckBiometric":{"type":"object","properties":{"source":{"description":"How the biometric data was obtained. The value must be `ORIGINAL`.","type":"string","enum":["ORIGINAL"]},"type":{"description":"Type of the biometric data. The value must be `FACE`.","type":"string","enum":["FACE"]},"format":{"description":"Format of the biometric data. `REQUIRED`.","type":"string","enum":["JPEG","JPEG2000","PNG","TIFF","GIF","BMP"]},"content":{"description":"Base64 encoded biometric data. `REQUIRED`.","type":"string"}}}}}}
```

## The BiographicBaseFlags object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"BiographicBaseFlags":{"description":"Biographic database interaction configuration flags.","type":"object","properties":{"autoUpdate":{"description":"Update biographic base.\n\nIf absent, uses value of API config parameter `gbds.biographicBase.autoUpdate`.\n","type":"boolean"},"sendPguidAsKey":{"description":"Send PGUID as key on biographic base update.\n\nIf absent, uses value of API config parameter `gbds.biographicBase.sendPguidAsKey`.\n","type":"boolean"},"sendTguidAsKey":{"description":"Send TGUID as key on biographic base update.\n\nIf absent, uses value of API config parameter `gbds.biographicBase.sendTguidAsKey`.\n","type":"boolean"}}}}}}
```

## The UpdateBiographicsOnBiobaseRequest object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"UpdateBiographicsOnBiobaseRequest":{"type":"object","properties":{"data":{"type":"object","properties":{"keys":{"type":"array","items":{"$ref":"#/components/schemas/Key"}},"biographics":{"type":"array","items":{"$ref":"#/components/schemas/BioBaseBiographic"}}}}}},"Key":{"type":"object","properties":{"id":{"description":"Name of entity identifier.","type":"string"},"value":{"description":"Value of entity identifier.","type":"string"}}},"BioBaseBiographic":{"type":"object","properties":{"id":{"type":"string","description":"Biographic key."},"type":{"type":"string","description":"Biographic type. It can be TEXT or FACE.","enum":["TEXT","FACE"]},"value":{"type":"string","description":"Biographic value. Faces are encoded in Base64."}}}}}}
```

## The TrustedAddKeysRequest object

```json
{"openapi":"3.0.1","info":{"title":"GBDS API","version":"4.7.0"},"components":{"schemas":{"TrustedAddKeysRequest":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/Key"}}}},"Key":{"type":"object","properties":{"id":{"description":"Name of entity identifier.","type":"string"},"value":{"description":"Value of entity identifier.","type":"string"}}}}}}
```
