For my ZFS POST /screening/v3/cases request, I get the following response:
{"id":"424af957-2110-48de-81d2-84f1e679a15f","status":"400","errors":[{"code":"INVALID_MESSAGE_FIELD_FORMAT","message":"Message field '.providerTypes[0]' has an invalid value.","error":null}]}
The request includes:
"providerTypes":["watchlist"]
I have figured out, that it is supposed to be "providerTypes":["WATCHLIST"]
(all uppercase). This is however not clear from the API documentation. The relevant excerpt from the openapi spec:
ProviderType:
type: string
description: Provider type enumeration.
x-wc1-not-value: true
enum:
- watchlist
- passportCheck
- mediaCheck
- clientWatchlist
- uboCheck
x-enum-varnames:
- WATCHLIST
- PASSPORT_CHECK
- MEDIA_CHECK
- CLIENT_WATCHLIST
- UBO_CHECK
openapi-generator (for Java) generates the following enum:
public enum ProviderTypeDto {
WATCHLIST("watchlist"),
PASSPORT_CHECK("passportCheck"),
MEDIA_CHECK("mediaCheck"),
CLIENT_WATCHLIST("clientWatchlist"),
UBO_CHECK("uboCheck");
}
To me it seems the API-specification is incorrect here, as the listed values should all be uppercase. Unless the providerType differs between normal screening and ZFS screening, which could be the case based on the API description:
Array of strings (ProviderType) non-empty unique Items Enum: "watchlist" "passportCheck" "mediaCheck" "clientWatchlist" "uboCheck"
Provider types required to Screen this Case.For 'Zero Footprint Screening (ZFS)', only 'WATCHLIST' is supported.
If so, the OpenAPI-specification should list WATCHLIST
as one of the valid enum
values.