Package com.xebialabs.xlrelease.api.v1

# Interface ConfigurationApi

All Superinterfaces:
  `ApiService`

@Path("/api/v1/config") @Consumes("application/json") @Produces("application/json") public interface ConfigurationApi extends ApiService
Operations on global variables and other configuration.

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `static final String`
  `SERVICE_NAME`

  ### Fields inherited from interface com.xebialabs.xlrelease.api.ApiService

  `DEFAULT_RESULTS_PER_PAGE, DEFAULT_RESULTS_PER_PAGE_STRING, DEPTH, ORDER_BY, PAGE, PAGE_IS_OFFSET, RESULTS_PER_PAGE, ROLE_IDS_DATA`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `Configuration`
  `addConfiguration(Configuration configuration)`
  Creates a new configuration.
  `Variable`
  `addGlobalVariable(Variable variable)`
  Adds a global variable.
  `SharedConfigurationStatusResponse`
  `checkStatus(ConfigurationView configurationView)`
  `SharedConfigurationStatusResponse`
  `checkStatus(String configurationId)`
  `void`
  `deleteConfiguration(String configurationId)`
  Deletes the configuration.
  `void`
  `deleteGlobalVariable(String variableId)`
  Deletes a global variable.
  `Configuration`
  `duplicateConfiguration(String configurationId)`
  Duplicates the configuration with the given ID.
  `Configuration`
  `getConfiguration(String configurationId)`
  Returns the configuration with the given ID.
  `List<Configuration>`
  `getConfigurations(List<String> configurationIds)`
  Returns the list of configurations for the given list of IDs.
  `Variable`
  `getGlobalVariable(String variableId)`
  Returns the global variable for the given identifier.
  `Collection<Object>`
  `getGlobalVariablePossibleValues(String variableId)`
  Returns possible values for the variable with the given identifier.
  `List<Variable>`
  `getGlobalVariables()`
  Returns global variables list.
  `Map<String,String>`
  `getGlobalVariableValues()`
  Returns global variables list with replaced variable values.
  `SystemMessageSettings`
  `getSystemMessage()`
  `List<? extends ConfigurationItem>`
  `searchByTypeAndTitle(String configurationType, String title)`
  Searches configuration objects by type and title.
  `List<? extends ConfigurationItem>`
  `searchByTypeAndTitle(String configurationType, String title, String folderId)`
  Searches configuration objects by type and title.
  `List<Configuration>`
  `searchByTypeAndTitle(String configurationType, String title, String folderId, boolean folderOnly)`
  Searches configuration objects by type and title.
  `default String`
  `serviceName()`
  `Configuration`
  `updateConfiguration(Configuration configuration)`
  Updates the configuration.
  `Configuration`
  `updateConfiguration(String configurationId, Configuration configuration)`
  Updates the configuration.
  `Variable`
  `updateGlobalVariable(Variable variable)`
  Updates properties of a global variable by its ID.
  `Variable`
  `updateGlobalVariable(String variableId, Variable variable)`
  `SystemMessageSettings`
  `updateSystemMessage(SystemMessageSettings systemMessageSettings)`

- ## Field Details

  - ### SERVICE_NAME

    static final String SERVICE_NAME
    See Also:
      - Constant Field Values

- ## Method Details

  - ### serviceName

    default String serviceName()
    Specified by:
      `serviceName` in interface `ApiService`

  - ### getGlobalVariables

    @GET @Path("/Configuration/variables/global") List<Variable> getGlobalVariables()
    Returns global variables list.
    Returns:
      variables list.

  - ### getGlobalVariableValues

    @GET @Path("/Configuration/variableValues/global") Map<String,String> getGlobalVariableValues()
    Returns global variables list with replaced variable values.
    Returns:
      variables list.

  - ### getGlobalVariable

    @GET @Path("/{variableId:.*/Variable[^/]*}") Variable getGlobalVariable(@PathParam("variableId") String variableId)
    Returns the global variable for the given identifier.
    Parameters:
      `variableId` - the variable identifier.
    Returns:
      the variable.

  - ### addGlobalVariable

    @POST @Path("/Configuration/variables/global") Variable addGlobalVariable(Variable variable)
    Adds a global variable.
    Parameters:
      `variable` - the global variable to add.
    Returns:
      the added global variable.

  - ### updateGlobalVariable

    @PUT @Path("/{variableId:.*/Variable[^/]*}") Variable updateGlobalVariable(@PathParam("variableId") String variableId, Variable variable)

  - ### updateGlobalVariable

    Variable updateGlobalVariable(Variable variable)
    Updates properties of a global variable by its ID.
    Parameters:
      `variable` - the variable to update.
    Returns:
      the updated variable.

  - ### deleteGlobalVariable

    @DELETE @Path("/{variableId:.*/Variable[^/]*}") void deleteGlobalVariable(@PathParam("variableId") String variableId)
    Deletes a global variable.
    Parameters:
      `variableId` - the variable identifier.

  - ### getGlobalVariablePossibleValues

    @GET @Path("/{variableId:.*/Variable[^/]*}/possibleValues") Collection<Object> getGlobalVariablePossibleValues(@PathParam("variableId") String variableId)
    Returns possible values for the variable with the given identifier.
    Parameters:
      `variableId` - the variable identifier.
    Returns:
      possible values for the variable.

  - ### searchByTypeAndTitle

    List<? extends ConfigurationItem> searchByTypeAndTitle(String configurationType, String title)
    Searches configuration objects by type and title.
    Parameters:
      `configurationType` - the type of the Configuration object.
      `title` - the title of the Configuration object.(optional)
    Returns:
      returns the first 100 results loaded with depth 1. Password properties are not returned.

  - ### searchByTypeAndTitle

    List<? extends ConfigurationItem> searchByTypeAndTitle(String configurationType, String title, String folderId)
    Searches configuration objects by type and title.
    Parameters:
      `configurationType` - the type of the Configuration object.
      `title` - the title of the Configuration object.(optional)
      `folderId` - the path of a parent.(optional)
    Returns:
      returns the first 100 results loaded with depth 1. Password properties are not returned.

  - ### searchByTypeAndTitle

    @GET @Path("byTypeAndTitle") List<Configuration> searchByTypeAndTitle(@QueryParam("configurationType") String configurationType, @QueryParam("title") String title, @QueryParam("folderId") String folderId, @QueryParam("folderOnly") boolean folderOnly)
    Searches configuration objects by type and title.
    Parameters:
      `configurationType` - the type of the Configuration object.
      `title` - the title of the Configuration object.(optional)
      `folderId` - the path of a parent.(optional)
      `folderOnly` - filter if you only want to get information from your parentId. (optional)
    Returns:
      returns the first 100 results loaded with depth 1. Password properties are not returned.

  - ### getConfigurations

    @POST @Path("byIds") List<Configuration> getConfigurations(List<String> configurationIds)
    Returns the list of configurations for the given list of IDs.
    Parameters:
      `configurationIds` - the list of IDs for configuration items to fetch
    Returns:
      the list of configuration instances

  - ### getConfiguration

    @GET @Path("/{configurationId:.*/Configuration[^/]*}") Configuration getConfiguration(@PathParam("configurationId") String configurationId)
    Returns the configuration with the given ID.
    Parameters:
      `configurationId` - the identifier of the configuration
    Returns:
      the configuration instance

  - ### addConfiguration

    @POST Configuration addConfiguration(Configuration configuration)
    Creates a new configuration.
    Parameters:
      `configuration` - the configuration to add.
    Returns:
      the created configuration.

  - ### updateConfiguration

    @PUT @Path("{configurationId:.*/Configuration[^/]*}") Configuration updateConfiguration(@PathParam("configurationId") String configurationId, Configuration configuration)
    Updates the configuration.
    Parameters:
      `configurationId` - the identifier of the configuration.
      `configuration` - new contents of the configuration.
    Returns:
      the updated configuration.

  - ### updateConfiguration

    Configuration updateConfiguration(Configuration configuration)
    Updates the configuration.
    Parameters:
      `configuration` - new contents of the configuration.
    Returns:
      the updated configuration.

  - ### deleteConfiguration

    @DELETE @Path("{configurationId:.*/Configuration[^/]*}") void deleteConfiguration(@PathParam("configurationId") String configurationId)
    Deletes the configuration.
    Parameters:
      `configurationId` - the identifier of the configuration.

  - ### getSystemMessage

    @GET @Path("system-message") SystemMessageSettings getSystemMessage()

  - ### updateSystemMessage

    @PUT @Path("system-message") SystemMessageSettings updateSystemMessage(SystemMessageSettings systemMessageSettings)

  - ### checkStatus

    @POST @Path("status") SharedConfigurationStatusResponse checkStatus(ConfigurationView configurationView)

  - ### checkStatus

    @POST @Path("{configurationId:.*/Configuration[^/]*}/status") SharedConfigurationStatusResponse checkStatus(@PathParam("configurationId") String configurationId)

  - ### duplicateConfiguration

    @POST @Path("{configurationId:.*/Configuration[^/]*}/copy") Configuration duplicateConfiguration(@PathParam("configurationId") String configurationId)
    Duplicates the configuration with the given ID. Creates a new configuration with copied data, excluding credential fields. The new configuration title is appended with " copy".
    Parameters:
      `configurationId` - the identifier of the configuration to duplicate.
    Returns:
      the duplicated configuration.