Se l'interrogazione all'endpoint /companies restituisce il messaggio riportato di seguito, vuol dire che la combinazione di parametri di ricerca utilizzata per quella specifica Nazione non è ammessa:



URIHTTP ACTION
/companies?countries={countryCode}&{criteriaSet}GET


{
  "correlationId": "4f250320-3399-11ea-8d73-065ffabb5914",
  "message": "Bad request",
  "details": "Specified criteria combination is not allowed"
}

Per comprendere quali sono le combinazioni di parametri ammesse, è possibile utilizzare il seguente endpoint, valorizzando il parametro "countries" con il l'ISO-CODE2 della Nazione all'interno della quale si ricerca l'azienda (es: IT, FR, GB ...):


URIHTTP ACTION
/companies/searchcriteria?countries={iso-code2}GET
{
  "countries": [
    "GB"
  ],
  "languages": [
    "EN"
  ],
  "criteriaSets": [
    {
      "id": {
        "required": true
      }
    },
    {
      "safeNo": {
        "minLength": 10,
        "maxLength": 10,
        "validationRegExp": "GB\\d{8}",
        "required": true
      }
    },
    {
      "regNo": {
        "minLength": 2,
        "maxLength": 8,
        "required": true
      }
    },
    {
      "name": {
        "required": false
      },
      "type": {
        "allowedValues": [
          "Ltd",
          "NonLtd"
        ],
        "required": false
      },
      "status": {
        "allowedValues": [
          "Active",
          "NonActive"
        ],
        "required": false
      },
      "address": {
        "simpleValue": {
          "minLength": 2,
          "required": false
        },
        "street": {
          "required": false
        },
        "city": {
          "required": false
        },
        "postCode": {
          "minLength": 2,
          "required": false
        }
      },
      "phoneNo": {
        "required": false
      }
    }
  ]
}

Ogni oggetto contenuto nell'array "criteriaSets" corrisponde ad una combinazione di parametri combinabili tra loro per una sola ricerca.
Leggendo la response riportata sopra a titolo esemplificativo apprendiamo che per la country = GB il campo regNo deve essere utilizzato univocamente per effettuare una ricerca; in altre parole ancora, se qualsiasi altro campo viene combinato a "regNo" in fase di ricerca, la chiamata andrà in errore.


Quando si implementa un processo di ricerca basato su "criteriaSets" ben definiti, si consiglia di adottare la seguente sequenza di chiamata per garantire che le ricerche delle aziende siano più efficaci:

 

1. /authenticate

2. /companies/searchcriteria?countries={countryCode}

3. /companies?countries={countryCode}&{criteriaSet}

 

Per maggiori informazioni su come ricercare le aziende tramite le API Connect, puoi consultare i seguenti link:

 

Ricerca Società

Criteri di Ricerca

 

Se i problemi persistono, apri un ticket