You are here: Entitlement Management > Entitlement Line Item > updateEntitlementItem

Update Entitlement Line Items

Description

This interface enables you to update line items of an entitlement. The entitlement should be in the Draft or Reconfigured stage.

Note the following points:

Default Protocol Method Type URI
HTTPS POST updateEntitlementItem.xml

Post Parameters

Parameter Description Valid Values Optional
lineItemId

Identifier of the line item to be updated.

This is not the product ID.

Integer (>0) No
concurrentLimit

Number of concurrent instances ( in case of concurrent license type).

The value should be between 1 - 32752.

Integer (>0) Yes
numberOfUsers Number of users who can use the product. Its value should be from 1 to 999999. This parameter is applicable for enterprise named entitlements. Integer (> 0 for named entitlements, -1 for unnamed entitlements) Yes
refId1 Information that uniquely identifies the entitlement in a different ERP system. String Yes
refId2 A second unique reference ID, similar to Ref ID 1. String Yes

Sample Code

import java.io.IOException;
//..............................
//..............................
//..............................
import org.apache.http.params.HttpParams;
public class EMSSample {
	private static DefaultHttpClient httpclient = new DefaultHttpClient();
	private static Principal principal = null;
	//..............................
	//..............................
	//..............................
	public static String updateEntitlementItem.xml()throws Exception {
		if(!verifyLogin()){
			return "login failed";
		}
		HttpContext context = new BasicHttpContext();
		context.setAttribute(ClientContext.USER_TOKEN, principal);
		HttpPost post =  new HttpPost("https://localhost:8443/ems/3.6/updateEntitlementItem.xml");
		List<NameValuePair> nvps = new ArrayList<NameValuePair>();
		nvps.add(new BasicNameValuePair("refId2", ""));
		nvps.add(new BasicNameValuePair("refId1", ""));
		nvps.add(new BasicNameValuePair("numberOfUsers", ""));
		nvps.add(new BasicNameValuePair("lineItemId", ""));
		nvps.add(new BasicNameValuePair("concurrentLimit", ""));
		post.setEntity(new UrlEncodedFormEntity(nvps, HTTP.UTF_8));
		HttpResponse response = httpclient.execute(post, context);
		HttpEntity entity = response.getEntity();
		byte[] b = null;
		if (entity != null) {
			long l = entity.getContentLength();
			b = new byte[(int) l];
			entity.getContent().read(b);
			entity.consumeContent();
		}
		return new String(b);
	}
}

Sample Response

<?xml version="1.0" encoding="UTF-8"?>
<emsResponse>
   <stat>ok</stat>
</emsResponse>
See Also:

Output Format for Failure

Error Codes

Error Code Description
100 Invalid request parameter.
101 You are not authorized to use this service.
118 {field} should be of data type integer. [Note: This error code is applicable for the fields - featureId, License modelId, entId, ftrId, customerId, lmId, templateType, lineItemId, CustomerId, stationCount, status, and granularity.]
122 {field} is a required field and should have a not null value. [Note: This error code is applicable for the fields - Eid, namespaceName, featureName, startDate, endDate, userIds, featureId, productName, productVersion, detailsLM, lmId, templateType, customAttribute, lineItemId, customerRefId, granularity, loginId, oldPassword, and newPassword.]
128 You should log on first.
132 The URL address does not exist.
618 Could not find the entitlement line item.
661 The entitlement item cannot be updated because the entitlement is in the complete stage.
1032 Invalid value for numberOfUsers. Valid values are -1(for unNamed contract), greater than 0 for Named contract.
1054 {“Number”} User(s) already added.
1075 Only days between 1 and 1825 are accepted.
1076 Invalid concurrent limit.Concurrent limit between 1 - 32752 is allowed.
1081 Invalid Web service version provided
1084 No Web service version provided
1088 The EMS system is running on HTTPS. Please provide the correct Web service URL.