public ServiceCall<Workspace> updateWorkspace(UpdateWorkspaceOptions updateWorkspaceOptions) {
    Validator.notNull(updateWorkspaceOptions, "updateWorkspaceOptions cannot be null");
    String[] pathSegments = { "v1/workspaces" };
    String[] pathParameters = { updateWorkspaceOptions.workspaceId() };
    RequestBuilder builder = RequestBuilder.post(RequestBuilder.constructHttpUrl(getEndPoint(), pathSegments,
        pathParameters));
    builder.query("version", versionDate);
    Map<String, String> sdkHeaders = SdkCommon.getSdkHeaders("conversation", "v1", "updateWorkspace");
    for (Entry<String, String> header : sdkHeaders.entrySet()) {
      builder.header(header.getKey(), header.getValue());
    }
    builder.header("Accept", "application/json");
    if (updateWorkspaceOptions.append() != null) {
      builder.query("append", String.valueOf(updateWorkspaceOptions.append()));
    }
    final JsonObject contentJson = new JsonObject();
    if (updateWorkspaceOptions.name() != null) {
      contentJson.addProperty("name", updateWorkspaceOptions.name());
    }
    if (updateWorkspaceOptions.description() != null) {
      contentJson.addProperty("description", updateWorkspaceOptions.description());
    }
    if (updateWorkspaceOptions.language() != null) {
      contentJson.addProperty("language", updateWorkspaceOptions.language());
    }
    if (updateWorkspaceOptions.metadata() != null) {
      contentJson.add("metadata", GsonSingleton.getGson().toJsonTree(updateWorkspaceOptions.metadata()));
    }
    if (updateWorkspaceOptions.learningOptOut() != null) {
      contentJson.addProperty("learning_opt_out", updateWorkspaceOptions.learningOptOut());
    }
    if (updateWorkspaceOptions.systemSettings() != null) {
      contentJson.add("system_settings", GsonSingleton.getGson().toJsonTree(updateWorkspaceOptions.systemSettings()));
    }
    if (updateWorkspaceOptions.intents() != null) {
      contentJson.add("intents", GsonSingleton.getGson().toJsonTree(updateWorkspaceOptions.intents()));
    }
    if (updateWorkspaceOptions.entities() != null) {
      contentJson.add("entities", GsonSingleton.getGson().toJsonTree(updateWorkspaceOptions.entities()));
    }
    if (updateWorkspaceOptions.dialogNodes() != null) {
      contentJson.add("dialog_nodes", GsonSingleton.getGson().toJsonTree(updateWorkspaceOptions.dialogNodes()));
    }
    if (updateWorkspaceOptions.counterexamples() != null) {
      contentJson.add("counterexamples", GsonSingleton.getGson().toJsonTree(updateWorkspaceOptions.counterexamples()));
    }
    builder.bodyJson(contentJson);
    return createServiceCall(builder.build(), ResponseConverterUtils.getObject(Workspace.class));
  }
public ServiceCall < Workspace > updateWorkspace ( UpdateWorkspaceOptions updateWorkspaceOptions ) { Validator . notNull ( updateWorkspaceOptions , "updateWorkspaceOptions cannot be null" ) ; String [ ] pathSegments = { "v1/workspaces" } ; String [ ] pathParameters = { updateWorkspaceOptions . workspaceId ( ) } ; RequestBuilder builder = RequestBuilder . post ( RequestBuilder . constructHttpUrl ( getEndPoint ( ) , pathSegments , pathParameters ) ) ; builder . query ( "version" , versionDate ) ; Map < String , String > sdkHeaders = SdkCommon . getSdkHeaders ( "conversation" , "v1" , "updateWorkspace" ) ; for ( Entry < String , String > header : sdkHeaders . entrySet ( ) ) { builder . header ( header . getKey ( ) , header . getValue ( ) ) ; } builder . header ( "Accept" , "application/json" ) ; if ( updateWorkspaceOptions . append ( ) != null ) { builder . query ( "append" , String . valueOf ( updateWorkspaceOptions . append ( ) ) ) ; } final JsonObject contentJson = new JsonObject ( ) ; if ( updateWorkspaceOptions . name ( ) != null ) { contentJson . addProperty ( "name" , updateWorkspaceOptions . name ( ) ) ; } if ( updateWorkspaceOptions . description ( ) != null ) { contentJson . addProperty ( "description" , updateWorkspaceOptions . description ( ) ) ; } if ( updateWorkspaceOptions . language ( ) != null ) { contentJson . addProperty ( "language" , updateWorkspaceOptions . language ( ) ) ; } if ( updateWorkspaceOptions . metadata ( ) != null ) { contentJson . add ( "metadata" , GsonSingleton . getGson ( ) . toJsonTree ( updateWorkspaceOptions . metadata ( ) ) ) ; } if ( updateWorkspaceOptions . learningOptOut ( ) != null ) { contentJson . addProperty ( "learning_opt_out" , updateWorkspaceOptions . learningOptOut ( ) ) ; } if ( updateWorkspaceOptions . systemSettings ( ) != null ) { contentJson . add ( "system_settings" , GsonSingleton . getGson ( ) . toJsonTree ( updateWorkspaceOptions . systemSettings ( ) ) ) ; } if ( updateWorkspaceOptions . intents ( ) != null ) { contentJson . add ( "intents" , GsonSingleton . getGson ( ) . toJsonTree ( updateWorkspaceOptions . intents ( ) ) ) ; } if ( updateWorkspaceOptions . entities ( ) != null ) { contentJson . add ( "entities" , GsonSingleton . getGson ( ) . toJsonTree ( updateWorkspaceOptions . entities ( ) ) ) ; } if ( updateWorkspaceOptions . dialogNodes ( ) != null ) { contentJson . add ( "dialog_nodes" , GsonSingleton . getGson ( ) . toJsonTree ( updateWorkspaceOptions . dialogNodes ( ) ) ) ; } if ( updateWorkspaceOptions . counterexamples ( ) != null ) { contentJson . add ( "counterexamples" , GsonSingleton . getGson ( ) . toJsonTree ( updateWorkspaceOptions . counterexamples ( ) ) ) ; } builder . bodyJson ( contentJson ) ; return createServiceCall ( builder . build ( ) , ResponseConverterUtils . getObject ( Workspace . class ) ) ; }
Update workspace.

Update an existing workspace with new or modified data. You must provide component objects defining the content of
the updated workspace.

This operation is limited to 30 request per 30 minutes. For more information, see **Rate limiting**.

@param updateWorkspaceOptions the {@link UpdateWorkspaceOptions} containing the options for the call
@return a {@link ServiceCall} with a response type of {@link Workspace}