updateSpecifications

The updateSpecifications method allows you to create or update the validation specifications for one or more index/collection pairs.

When the validation specification is not formatted correctly, a detailed error message is returned to help you to debug.

Signature

Copied to clipboard!
public String updateSpecifications(String index, String collection, String specifications) throws io.kuzzle.sdk.BadRequestException, io.kuzzle.sdk.ForbiddenException, io.kuzzle.sdk.GatewayTimeoutException, io.kuzzle.sdk.InternalException, io.kuzzle.sdk.ServiceUnavailableException, io.kuzzle.sdk.NotFoundException;
public String updateSpecifications(String index, String collection, String specifications, io.kuzzle.sdk.QueryOptions options) throws io.kuzzle.sdk.BadRequestException, io.kuzzle.sdk.ForbiddenException, io.kuzzle.sdk.GatewayTimeoutException, io.kuzzle.sdk.InternalException, io.kuzzle.sdk.ServiceUnavailableException, io.kuzzle.sdk.NotFoundException;

Arguments

Arguments Type Description Required
index String Index name yes
collection String Collection name yes
specifications String Specifications in JSON format yes
options io.kuzzle.sdk.QueryOptions The query options no

specifications

A JSON representation of the specifications.

The JSON must follow the Specification Structure:

Copied to clipboard!
{
  "myindex": {
    "mycollection": {
      "strict": "<boolean>",
      "fields": {
        // ... specification for each field
      }
    }
  }
}

options

Additional query options

Property Type Description Default
queuable boolean Make this request queuable or not true

Return

Return a string containing a JSON representation of the specifications

Exceptions

Throws a io.kuzzle.sdk.KuzzleException if there is an error. See how to handle error.

Usage

Copied to clipboard!
try {
  String specifications = "{ \"strict\": false, \"fields\": { \"license\": { \"mandatory\": true, \"type\": \"string\" } } }";

  String response = kuzzle.getCollection().updateSpecifications("nyc-open-data", "yellow-taxi", specifications);

  System.out.println("Success");
} catch (KuzzleException e) {
  System.err.println(e.getMessage());
}