Class PicklistRequest
java.lang.Object
com.veeva.vault.vapil.api.request.VaultRequest<PicklistRequest>
com.veeva.vault.vapil.api.request.PicklistRequest
Picklist requests, including retrieval of Picklist meta-data
- Vault API Coverage:
- https://developer.veevavault.com/api/25.1/#picklists
-
Field Summary
Fields inherited from class com.veeva.vault.vapil.api.request.VaultRequest
HTTP_HEADER_AUTHORIZATION, HTTP_HEADER_REFERENCE_ID, HTTP_HEADER_VAULT_CLIENT_ID, referenceId, requestClientId, vaultClient
-
Method Summary
Modifier and TypeMethodDescriptioncreatePicklistValues
(String picklistName, List<String> picklists) Create Picklist ValuesinactivatePicklistValue
(String picklistName, String picklistValueName) Inactivate Picklist Value
If you need to inactivate a picklist value, it is best practice to use Update Picklist Value.Retrieve All Picklists
Get a list of all metadata components and their properties.retrievePicklistValues
(String picklistName) Retrieve Picklist Values
Retrieve picklist values for a single picklist.updatePicklistValue
(String picklistName, String picklistValueName, boolean status) Update Picklist Value - Status
Change a picklist value status.updatePicklistValue
(String picklistName, String picklistValueName, String newName) Update Picklist Value - Name
Change a picklist value name.updatePicklistValueLabel
(String picklistName, Map<String, String> mapPicklists) Change a picklist value label (only)
Use caution when editing picklist labels or names.Methods inherited from class com.veeva.vault.vapil.api.request.VaultRequest
getBaseObjectMapper, send, send, sendReturnBinary, sendReturnBinary, sendToFile, sendToFile, setHeaderClientId, setHeaderReferenceId, setVaultClient
-
Method Details
-
retrieveAllPicklists
Retrieve All Picklists
Get a list of all metadata components and their properties. Note that the Vault API returns only the active picklist values. Reference "metadata" endpoint for inactive picklists.- Returns:
- PicklistResponse
- Vault API Endpoint:
GET /api/{version}/objects/picklists
- Vault API Help Link:
- https://developer.veevavault.com/api/25.1/#retrieve-all-picklists
- Example Request:
PicklistResponse resp = vaultClient.newRequest(PicklistRequest.class).retrieveAllPicklists();
- Example Response:
for (PicklistResponse.Picklist : resp.getPicklists()) { System.out.println("\n" + plist.getName()); System.out.println(plist.getLabel()); System.out.println(plist.getKind()); if (plist.getUsedIn() != null) { for (PicklistResponse.Picklist.UsedIn ui : plist.getUsedIn()) System.out.println("Used In " + ui.getObjectName() + " " + ui.getPropertyName()); } }
-
retrievePicklistValues
Retrieve Picklist Values
Retrieve picklist values for a single picklist. Note that the Vault API returns only the active picklist values. Reference "metadata" endpoint for inactive picklists.- Parameters:
picklistName
- The picklist name to retrieve- Returns:
- PicklistValueResponse
- Vault API Endpoint:
GET /api/{version}/objects/picklists/{picklist_name}
- Vault API Help Link:
- https://developer.veevavault.com/api/25.1/#retrieve-picklist-values
- Example Request:
PicklistValueResponse resp = vaultClient.newRequest(PicklistRequest.class).retrievePicklistValues(picklistName);
- Example Response:
for (PicklistValueResponse.PicklistValue value : resp.getPicklistValues()) System.out.println(value.getName() + " = " + value.getLabel()); }
-
createPicklistValues
Create Picklist Values- Parameters:
picklistName
- The picklist name field valuepicklists
- List of picklist values (list is used for ordering)- Returns:
- PicklistValueResponse
- Vault API Endpoint:
POST /api/{version}/objects/picklists/{picklist_name}
- Vault API Help Link:
- https://developer.veevavault.com/api/25.1/#create-picklist-values
- Example Request:
PicklistValueResponse resp = vaultClient.newRequest(PicklistRequest.class).createPicklistValues(picklistName, newPicklistValues);
- Example Response:
System.out.println(resp.getResponseStatus()); System.out.println(resp.getResponse());
-
updatePicklistValueLabel
public PicklistValueResponse updatePicklistValueLabel(String picklistName, Map<String, String> mapPicklists) Change a picklist value label (only)
Use caution when editing picklist labels or names. When these attributes are changed, they affect all existing document and object metadata that refer to the picklist. For users in the UI who are accustomed to seeing a particular selection, the changes may cause confusion. This may also break existing integrations that access picklist values via the API.- Parameters:
picklistName
- The picklist name field valuemapPicklists
- Map of new picklist values- Returns:
- PicklistValueResponse
- Vault API Endpoint:
PUT /api/{version}/objects/picklists/{picklist_name}
- Vault API Help Link:
- https://developer.veevavault.com/api/25.1/#update-picklist-value-label
- Example Request:
PicklistValueResponse resp = vaultClient.newRequest(PicklistRequest.class).updatePicklistValueLabel(picklistName, newPicklistValues);
- Example Response:
System.out.println(resp.getResponseStatus()); System.out.println(resp.getResponse());
-
updatePicklistValue
public VaultResponse updatePicklistValue(String picklistName, String picklistValueName, String newName) Update Picklist Value - Name
Change a picklist value name. Use caution when editing picklist value names. When you change a picklist value name, it may affect existing document and object metadata that refer to the picklist. This may also break existing integrations that access picklist values via the API.- Parameters:
picklistName
- The picklist name field value (license_type__v, product_family__c, region__c, etc.)picklistValueName
- The picklist value name field value (north_america__c, south_america__c, etc.)newName
- The new name for a picklist value. This does not affect the label. Vault adds __c after processing. Special characters and double underscores __ are not allowed.- Returns:
- VaultResponse for ResponseStatus SUCCESS/FAILURE
- Vault API Endpoint:
PUT /api/{version}/objects/picklists/{picklist_name}/{picklist_value_name}
- Vault API Help Link:
- https://developer.veevavault.com/api/25.1/#update-picklist-value
- Example Request:
VaultResponse resp = vaultClient.newRequest(PicklistRequest.class).updatePicklistValue(picklistName, picklistValueName, status);
- Example Response:
System.out.println(resp.getResponseStatus()); System.out.println(resp.getResponse());
-
updatePicklistValue
public VaultResponse updatePicklistValue(String picklistName, String picklistValueName, boolean status) Update Picklist Value - Status
Change a picklist value status. Use caution when editing picklist value names. When you change a picklist value name, it may affect existing document and object metadata that refer to the picklist. This may also break existing integrations that access picklist values via the API.- Parameters:
picklistName
- The picklist name field value (license_type__v, product_family__c, region__c, etc.)picklistValueName
- The picklist value name field value (north_america__c, south_america__c, etc.)status
- The new status for a picklist value. True for active, False for inactive.- Returns:
- VaultResponse for ResponseStatus SUCCESS/FAILURE
- Vault API Endpoint:
PUT /api/{version}/objects/picklists/{picklist_name}/{picklist_value_name}
- Vault API Help Link:
- https://developer.veevavault.com/api/25.1/#update-picklist-value
- Example Request:
VaultResponse resp = vaultClient.newRequest(PicklistRequest.class).updatePicklistValue(picklistName, picklistValueName, newName);
- Example Response:
System.out.println(resp.getResponseStatus()); System.out.println(resp.getResponse());
-
inactivatePicklistValue
Inactivate Picklist Value
If you need to inactivate a picklist value, it is best practice to use Update Picklist Value.- Parameters:
picklistName
- The picklist name field value (license_type__v, product_family__c, region__c, etc.)picklistValueName
- The picklist value name field value (north_america__c, south_america__c, etc.)- Returns:
- VaultResponse for ResponseStatus SUCCESS/FAILURE
- Vault API Endpoint:
DELETE /api/{version}/objects/picklists/{picklist_name}/{picklist_value_name}
- Vault API Help Link:
- https://developer.veevavault.com/api/25.1/#inactivate-picklist-value
- Example Request:
VaultResponse resp = vaultClient.newRequest(PicklistRequest.class).inactivatePicklistValue(picklistName, picklistValueName);
- Example Response:
System.out.println(resp.getResponseStatus()); System.out.println(resp.getResponse());
-