REST API:promoCode Resource
From AgileApps Support Wiki
Manage Promotion Codes using the REST API.
- Learn more: REST API Conventions and Considerations.
Permissions
- This configuration option is managed by a Service Provider platform admin.
Get All promoCode Records
- Method
- GET
- URI
Use this URI to get all promoCode records, with all fields for each record:
- https://{domain}/networking/rest/promoCode?fieldList=*
To restrict the records returned or the fields returned, see the section that explains how to do a Dynamic Search for promoCode Records
Get a promoCode Record
- Method
- GET
- URI
- https://{domain}/networking/rest/promoCode/{promotionCode}
- Response
- <syntaxhighlight lang="xml" enclose="div">
<platform>
<promoCode>
...
<name>...</name>
<start_date>...</start_date>
<expiration_date>...</expiration_date>
<trial_days>...</trial_days>
<no_of_users>...</no_of_users>
<integration_capabilities>
<connections>...</connections>
<on_premise_connection>...</on_premise_connection>
<stages>...</stages>
<production_execution_unit>...</production_execution_unit>
</integration_capabilities>
</promoCode>
<message>
0
<description>Success</description>
</message>
</platform> </syntaxhighlight>
- See also: REST API:Error Codes
Add a promoCode Record
- Method
- POST
- URI
- https://{domain}/networking/rest/promoCode
- Request
- <syntaxhighlight lang="xml" enclose="div">
<platform>
<promoCode>
...
<name>...</name>
<start_date>...</start_date>
<expiration_date>...</expiration_date>
<trial_days>...</trial_days>
<no_of_users>...</no_of_users>
<integration_capabilities>
<connections>...</connections>
<on_premise_connection>...</on_premise_connection>
<stages>...</stages>
<production_execution_unit>...</production_execution_unit>
</integration_capabilities>
</promoCode>
</platform> </syntaxhighlight>
- Response
- <syntaxhighlight lang="xml" enclose="div">
<platform>
<message>
0
<description>Success</description>
<id>...</id>
</message>
</platform> </syntaxhighlight>
- See also: REST API:Error Codes
Update a promoCode Record
- Method
- PUT
- URI
- https://{domain}/networking/rest/promoCode/{promotionCode}
- Request
- <syntaxhighlight lang="xml" enclose="div">
<platform>
<promoCode>
...
<name>...</name>
<start_date>...</start_date>
<expiration_date>...</expiration_date>
<trial_days>...</trial_days>
<no_of_users>...</no_of_users>
<integration_capabilities>
<connections>...</connections>
<on_premise_connection>...</on_premise_connection>
<stages>...</stages>
<production_execution_unit>...</production_execution_unit>
</integration_capabilities>
</promoCode>
</platform> </syntaxhighlight>
- Response
- <syntaxhighlight lang="xml" enclose="div">
<platform>
<message>
0
<description>Success</description>
</message>
</platform> </syntaxhighlight>
- See also: REST API:Error Codes
Delete a promoCode Record
- Method
- DELETE
- URI
- https://{domain}/networking/rest/promoCode/{promotionCode}
- Response
- <syntaxhighlight lang="xml" enclose="div">
<platform>
<message>
0
<description>Success</description>
</message>
</platform> </syntaxhighlight>
- See also: REST API:Error Codes
Dynamic Search for promoCode Records
- Method
- GET
- URI
- https://{domain}/networking/rest/promoCode?{query_parameters}
- Query Parameters
- fieldList - A comma-separated list of field names to retrieve
- The asterisk (*) wildcard specifies all fields
- {fieldname} specifies an individual field (e.g. name)
- (Use the REST API:field Resource to get a complete list of fields.)
- For a Composite Object, specify {alias}.{fieldname} to select a related-record field, where the alias is defined in the Object Relationships.
- For a Database View, specify {alias}.{fieldname}, where the object alias is defined in the Database View.
- alias.* specifies all fields in the aliased object.
- filter - Filtering criteria to filter the records
- For more examples, see Filter Expressions in REST APIs and the REST API Examples.)
- pageSize - Number of records to retrieve from the result set in order to make a "page".
- page - Number of the logical page in a database result set. The first page is page "zero" (0).
- Page zero is returned by default, so appending &pageSize=1 to your query returns a single record.
- getTotalRecordCount returns the number of total records.
Causes the following structure to be returned, where N is the total number of records:
- <syntaxhighlight lang="xml" enclose="div">
<platform>
<status>
<packageDeploy>
...
</packageDeploy>
</status>
<message>
0
<description>Success</description>
</message>
<totalRecordCount>N</totalRecordCount>
</platform> </syntaxhighlight>
- sortBy - Field name for primary sort
Ex: &sortBy=name - sortOrder - Sort order of the primary field, either asc or desc (ascending or descending)
Ex: &sortOrder=desc - sortBy2 - Field name for secondary sort
- sortOrder2 - Sort order of the second field, either asc or desc (ascending or descending)
- sortBy - Field name for primary sort
- For more information, see: Specifying Query Parameters in REST APIs
- Response
- <syntaxhighlight lang="xml" enclose="div">
<platform>
<promoCode>
</promoCode>
...
<message>
0
<!- The number of records returned -->
<description>Success</description>
</message>
</platform> </syntaxhighlight>
- See also: REST API:Error Codes
Fields
- Note: Unless otherwise indicated, the attribute for a field is "Editable on Add or Update".
Name Type Attribute Required on Add Description Additional Information code String Writable on Add only Code the user enters for the promotion name String Name of the promotion start_date String Date the promotion starts end_date String Date the promotion ends trial_days String Number of days in the trial period no_of_users String Number of users allowed in the tenant integration_capabilities struct structure (see below) id String Read Only Record ID date_modified Date Read Only UTC Format date_created Date Read Only UTC Format created_id Lookup Read Only User ID modified_id Lookup Read Only User ID
- integration_capabilities
Name Type Description connections String These elements do not apply to the AgileApps Cloud platform. They apply to Integration Live. For more information, consult the relevant documentation. on_premise_connection String stages String production_execution_unit String
Error Codes
Platform Code with Http Status Description -7000 BAD_REQUEST (400) Invalid ID
Learn more:
- See the REST API:Error Codes for common Http error codes
- See the javadoc constants for a complete list of PlatformException error-code constants.