blogs.mulesoft.com
Open in
urlscan Pro
23.208.237.253
Public Scan
URL:
https://blogs.mulesoft.com/dev-guides/how-to-tutorials/connect-to-remedy-action-request-rest-api/
Submission Tags: demotag1 demotag2 Search All
Submission: On September 27 via api from RU — Scanned from DE
Submission Tags: demotag1 demotag2 Search All
Submission: On September 27 via api from RU — Scanned from DE
Form analysis
3 forms found in the DOMGET https://blogs.mulesoft.com/search
<form action="https://blogs.mulesoft.com/search" id="search-form" method="get" class="search-form">
<div class="iconsearch search-btn" aria-hidden="true"></div><span class="input-wrapper"><input class="search-textbox" type="text" name="q" id="s" placeholder="Search"><input type="hidden" value="submit"><input type="hidden" value="submit">
<div class="closebtn cross-btn" aria-hidden="true"></div>
</span>
</form>
<form id="mktoForm_5791" novalidate="novalidate" class="mktoForm mktoHasWidth mktoLayoutLeft" style="font-family: Helvetica, Arial, sans-serif; font-size: 13px; color: rgb(51, 51, 51); width: 172px;">
<style type="text/css">
.mktoForm .mktoButtonWrap.mktoSimple .mktoButton {
color: #fff;
border: 1px solid #75ae4c;
padding: 0.4em 1em;
font-size: 1em;
background-color: #99c47c;
background-image: -webkit-gradient(linear, left top, left bottom, from(#99c47c), to(#75ae4c));
background-image: -webkit-linear-gradient(top, #99c47c, #75ae4c);
background-image: -moz-linear-gradient(top, #99c47c, #75ae4c);
background-image: linear-gradient(to bottom, #99c47c, #75ae4c);
}
.mktoForm .mktoButtonWrap.mktoSimple .mktoButton:hover {
border: 1px solid #447f19;
}
.mktoForm .mktoButtonWrap.mktoSimple .mktoButton:focus {
outline: none;
border: 1px solid #447f19;
}
.mktoForm .mktoButtonWrap.mktoSimple .mktoButton:active {
background-color: #75ae4c;
background-image: -webkit-gradient(linear, left top, left bottom, from(#75ae4c), to(#99c47c));
background-image: -webkit-linear-gradient(top, #75ae4c, #99c47c);
background-image: -moz-linear-gradient(top, #75ae4c, #99c47c);
background-image: linear-gradient(to bottom, #75ae4c, #99c47c);
}
</style>
<div class="mktoFormRow"><input type="hidden" name="Web_Campaign__c" class="mktoField mktoFieldDescriptor mktoFormCol" value="n/a" style="margin-bottom: 10px;">
<div class="mktoClear"></div>
</div>
<div class="mktoFormRow"><input type="hidden" name="Web_Source__c" class="mktoField mktoFieldDescriptor mktoFormCol" value="n/a" style="margin-bottom: 10px;">
<div class="mktoClear"></div>
</div>
<div class="mktoFormRow"><input type="hidden" name="Webmeduim__c" class="mktoField mktoFieldDescriptor mktoFormCol" value="n/a" style="margin-bottom: 10px;">
<div class="mktoClear"></div>
</div>
<div class="mktoFormRow"><input type="hidden" name="Web_Content__c" class="mktoField mktoFieldDescriptor mktoFormCol" value="n/a" style="margin-bottom: 10px;">
<div class="mktoClear"></div>
</div>
<div class="mktoFormRow"><input type="hidden" name="Web_Keyword__c" class="mktoField mktoFieldDescriptor mktoFormCol" value="n/a" style="margin-bottom: 10px;">
<div class="mktoClear"></div>
</div>
<div class="mktoFormRow"><input type="hidden" name="Web_Audience__c" class="mktoField mktoFieldDescriptor mktoFormCol" value="n/a" style="margin-bottom: 10px;">
<div class="mktoClear"></div>
</div>
<div class="mktoFormRow"><input type="hidden" name="GCLID__c" class="mktoField mktoFieldDescriptor mktoFormCol" value="" style="margin-bottom: 10px;">
<div class="mktoClear"></div>
</div>
<div class="mktoFormRow"><input type="hidden" name="languageDownloadedMostRecent" class="mktoField mktoFieldDescriptor mktoFormCol" value="EN" style="margin-bottom: 10px;">
<div class="mktoClear"></div>
</div>
<div class="mktoFormRow">
<div class="mktoFieldDescriptor mktoFormCol" style="margin-bottom: 10px;">
<div class="mktoOffset" style="width: 10px;"></div>
<div class="mktoFieldWrap mktoRequiredField"><label for="FirstName" id="LblFirstName" class="mktoLabel mktoHasWidth" style="width: 10px;">
<div class="mktoAsterix">*</div>
</label>
<div class="mktoGutter mktoHasWidth" style="width: 10px;"></div><input id="FirstName" name="FirstName" placeholder="First Name" maxlength="255" aria-labelledby="LblFirstName InstructFirstName" type="text"
class="mktoField mktoTextField mktoHasWidth mktoRequired" aria-required="true" style="width: 150px;"><span id="InstructFirstName" tabindex="-1" class="mktoInstruction"></span>
<div class="mktoClear"></div>
</div>
<div class="mktoClear"></div>
</div>
<div class="mktoClear"></div>
</div>
<div class="mktoFormRow">
<div class="mktoFieldDescriptor mktoFormCol" style="margin-bottom: 10px;">
<div class="mktoOffset" style="width: 10px;"></div>
<div class="mktoFieldWrap mktoRequiredField"><label for="LastName" id="LblLastName" class="mktoLabel mktoHasWidth" style="width: 10px;">
<div class="mktoAsterix">*</div>
</label>
<div class="mktoGutter mktoHasWidth" style="width: 10px;"></div><input id="LastName" name="LastName" placeholder="Last Name" maxlength="255" aria-labelledby="LblLastName InstructLastName" type="text"
class="mktoField mktoTextField mktoHasWidth mktoRequired" aria-required="true" style="width: 150px;"><span id="InstructLastName" tabindex="-1" class="mktoInstruction"></span>
<div class="mktoClear"></div>
</div>
<div class="mktoClear"></div>
</div>
<div class="mktoClear"></div>
</div>
<div class="mktoFormRow">
<div class="mktoFieldDescriptor mktoFormCol" style="margin-bottom: 10px;">
<div class="mktoOffset" style="width: 10px;"></div>
<div class="mktoFieldWrap mktoRequiredField"><label for="Email" id="LblEmail" class="mktoLabel mktoHasWidth" style="width: 10px;">
<div class="mktoAsterix">*</div>
</label>
<div class="mktoGutter mktoHasWidth" style="width: 10px;"></div><input id="Email" name="Email" placeholder="Email" maxlength="255" aria-labelledby="LblEmail InstructEmail" type="email"
class="mktoField mktoEmailField mktoHasWidth mktoRequired" aria-required="true" style="width: 150px;"><span id="InstructEmail" tabindex="-1" class="mktoInstruction"></span>
<div class="mktoClear"></div>
</div>
<div class="mktoClear"></div>
</div>
<div class="mktoClear"></div>
</div>
<div class="mktoFormRow">
<div class="mktoFieldDescriptor mktoFormCol" style="margin-bottom: 10px;">
<div class="mktoOffset" style="width: 10px;"></div>
<div class="mktoFieldWrap mktoRequiredField"><label for="Phone" id="LblPhone" class="mktoLabel mktoHasWidth" style="width: 10px;">
<div class="mktoAsterix">*</div>
</label>
<div class="mktoGutter mktoHasWidth" style="width: 10px;"></div><input id="Phone" name="Phone" placeholder="Phone" maxlength="255" aria-labelledby="LblPhone InstructPhone" type="tel" class="mktoField mktoTelField mktoHasWidth mktoRequired"
aria-required="true" style="width: 150px;"><span id="InstructPhone" tabindex="-1" class="mktoInstruction"></span>
<div class="mktoClear"></div>
</div>
<div class="mktoClear"></div>
</div>
<div class="mktoClear"></div>
</div>
<div class="mktoFormRow">
<div class="mktoFieldDescriptor mktoFormCol" style="margin-bottom: 10px;">
<div class="mktoOffset" style="width: 10px;"></div>
<div class="mktoFieldWrap mktoRequiredField"><label for="Company" id="LblCompany" class="mktoLabel mktoHasWidth" style="width: 10px;">
<div class="mktoAsterix">*</div>
</label>
<div class="mktoGutter mktoHasWidth" style="width: 10px;"></div><input id="Company" name="Company" placeholder="Company" maxlength="255" aria-labelledby="LblCompany InstructCompany" type="text"
class="mktoField mktoTextField mktoHasWidth mktoRequired" aria-required="true" style="width: 150px;"><span id="InstructCompany" tabindex="-1" class="mktoInstruction"></span>
<div class="mktoClear"></div>
</div>
<div class="mktoClear"></div>
</div>
<div class="mktoClear"></div>
</div>
<div class="mktoFormRow">
<div class="mktoFieldDescriptor mktoFormCol" style="margin-bottom: 10px;">
<div class="mktoOffset" style="width: 10px;"></div>
<div class="mktoFieldWrap mktoRequiredField"><label for="preferencesPrivacyPolicyAgreement" id="LblpreferencesPrivacyPolicyAgreement" class="mktoLabel mktoHasWidth" style="width: 100px;">
<div class="mktoAsterix">*</div>I agree to MuleSoft's <a href="https://www.mulesoft.com/privacy-policy" target="_blank" id="">Privacy Policy</a>.
</label>
<div class="mktoGutter mktoHasWidth" style="width: 10px;"></div>
<div class="mktoLogicalField mktoCheckboxList mktoHasWidth mktoRequired" style="width: 26px;"><input name="preferencesPrivacyPolicyAgreement" id="preferencesPrivacyPolicyAgreement" type="checkbox" value="yes" aria-required="true"
aria-labelledby="LblpreferencesPrivacyPolicyAgreement InstructpreferencesPrivacyPolicyAgreement" class="mktoField"><label for="preferencesPrivacyPolicyAgreement" id="LblpreferencesPrivacyPolicyAgreement"></label></div><span
id="InstructpreferencesPrivacyPolicyAgreement" tabindex="-1" class="mktoInstruction"></span>
<div class="mktoClear"></div>
</div>
<div class="mktoClear"></div>
</div>
<div class="mktoClear"></div>
</div>
<div class="mktoButtonRow"><span class="mktoButtonWrap mktoSimple" style="margin-left: 120px;"><button type="submit" class="mktoButton">Subscribe</button></span></div><input type="hidden" name="formid" class="mktoField mktoFieldDescriptor"
value="5791"><input type="hidden" name="munchkinId" class="mktoField mktoFieldDescriptor" value="564-SZS-136">
</form>
<form novalidate="novalidate" class="mktoForm mktoHasWidth mktoLayoutLeft" style="font-family: Helvetica, Arial, sans-serif; font-size: 13px; color: rgb(51, 51, 51); visibility: hidden; position: absolute; top: -500px; left: -1000px; width: 1600px;">
</form>
Text Content
Skip to content Replay Dreamforce * Products For IT TeamsAnypoint Platform World’s #1 integration and API platform Integration Studio Exchange Connectors DataGraph API management Flex Gateway New API Governance New Monitoring API Manager See all Try for free Sign up to Anypoint Platform Download Studio & Mule For Business Teams MuleSoft Composer Connect apps and data instantly MuleSoft RPA New Automate tasks with bots GARTNER NAMES MULESOFT A LEADER AND A VISIONARY Read reports * Solutions Featured Solutions API Management Manage and secure any API, built and deployed anywhere Integration Connect any system, data, or API to integrate at scale Automation Automate processes and tasks for every team Featured Integration Salesforce Power connected experiences with Salesforce integration SAP Unlock SAP and connect your IT landscape AWS Get the most out of AWS with integration and APIs By Industry Financial services Government Healthcare and life sciences Higher education Insurance Manufacturing Media and telecom Retail and consumer goods By Initiative Automation eCommerce Legacy system modernization Mobile Move to the cloud Omnichannel SaaS integrations Single view of customer See all solutions UNLEASH THE POWER OF SALESFORCE CUSTOMER 360 THROUGH INTEGRATION Integrate Salesforce Customer 360 to digitally transform your business Read more * Services Training Courses Certifications Learning paths Training credits Customer success MuleSoft Catalyst Business Value Services Support Help Center Community Forums Resources ANYPOINT PLATFORM FUNDAMENTALS Get hands-on experience using Anypoint Platform with a free online course Enroll for free * Resources Featured Resources Customer stories CIO webcast Developer podcast News Explore Webinars Demos Videos Analyst reports eBooks Whitepapers Infographics Articles Blog See all resources Events MuleSoft CONNECT MuleSoft TRANSFORM Community Meetups All events WATCH CONNECT ON-DEMAND Watch all your favorite on-demand sessions from CONNECT, including the keynote address Watch now * Developers Getting started Community Training Tutorials Documentation * Partners FOR CUSTOMERS Find a partner FOR PARTNERS Partner program Partner calendar Become a partner Partner login * CONTACT US Request a call Get support Global offices * Login Anypoint Platform Composer Training Help Center * Free trial * Products For IT TeamsAnypoint Platform World’s #1 integration and API platform Integration Studio Exchange Connectors DataGraph API management Flex Gateway New API Governance New Monitoring API Manager See all Try for free Sign up to Anypoint Platform Download Studio & Mule For Business Teams MuleSoft Composer Connect apps and data instantly MuleSoft RPA New Automate tasks with bots GARTNER NAMES MULESOFT A LEADER AND A VISIONARY Read reports * Solutions Featured Solutions API Management Manage and secure any API, built and deployed anywhere Integration Connect any system, data, or API to integrate at scale Automation Automate processes and tasks for every team Featured Integration Salesforce Power connected experiences with Salesforce integration SAP Unlock SAP and connect your IT landscape AWS Get the most out of AWS with integration and APIs By Industry Financial services Government Healthcare and life sciences Higher education Insurance Manufacturing Media and telecom Retail and consumer goods By Initiative Automation eCommerce Legacy system modernization Mobile Move to the cloud Omnichannel SaaS integrations Single view of customer See all solutions UNLEASH THE POWER OF SALESFORCE CUSTOMER 360 THROUGH INTEGRATION Integrate Salesforce Customer 360 to digitally transform your business Read more * Services Training Courses Certifications Learning paths Training credits Customer success MuleSoft Catalyst Business Value Services Support Help Center Community Forums Resources ANYPOINT PLATFORM FUNDAMENTALS Get hands-on experience using Anypoint Platform with a free online course Enroll for free * Resources Featured Resources Customer stories CIO webcast Developer podcast News Explore Webinars Demos Videos Analyst reports eBooks Whitepapers Infographics Articles Blog See all resources Events MuleSoft CONNECT MuleSoft TRANSFORM Community Meetups All events WATCH CONNECT ON-DEMAND Watch all your favorite on-demand sessions from CONNECT, including the keynote address Watch now * Developers Getting started Community Training Tutorials Documentation * Partners FOR CUSTOMERS Find a partner FOR PARTNERS Partner program Partner calendar Become a partner Partner login * Contact CONTACT US Request a call Get support Global offices * Login Anypoint Platform Composer Training Help Center Free trial Link to MuleSoft Twitter profile Link to MuleSoft Linkedin profile Link to MuleSoft Facebook page Link to MuleSoft Instagram profile Link to MuleSoft Videos platform © Copyright 2022 Salesforce, Inc. All rights reserved. MuleSoft Blog * * Learn APIs * Integration strategy * Dev guides * News * Series * Automation Home > Dev guides > How to tutorials > How to connect to Remedy Action Request using REST API How to tutorials HOW TO CONNECT TO REMEDY ACTION REQUEST USING REST API Srini Rangaswamy April 22, 2020 | 11 mins read SHARE POST * * * Reading Time: 11 minutes Enterprises use one or more service management applications to manage business-critical workflows and often synchronize workflow information, such as tickets or tasks, to adjacent applications like Salesforce, JIRA, etc. In some cases, enterprises choose to expose a subset of the information externally for partner consumption. BMC Remedy Action Request (AR) System is a popular service management application that MuleSoft offers an out-of-the-box connector for, using the Remedy AR Java API for accessing various modules and forms. Check out the documentation for Remedy AR connector prerequisites and configuration details. While the out-of-the-box connector uses Remedy Java API, there are situations where connecting via REST API is preferred. In this article, we will explore how to use Remedy REST APIs to perform CRUD operations on Incident, Task, and WorkInfo forms. You’ll learn how to build a System API for Remedy AR by defining endpoints in RAML API specification and implementing the API in a Mule application. latest report Learn why we are the Leaders in API management and iPaaS Read reports We’ll start with a brief overview of the Remedy Action Request System and then walk-through the API implementation to connect and access key Remedy records like Incident, Task, and WorkInfo. The article uses Remedy AR Version 19.x and Anypoint Studio 7.4.2. REMEDY ACTION REQUEST (AR) SYSTEM OVERVIEW BMC Remedy Action Request (AR) System is a business automation solution that enables the tracking of critical enterprise processes. The system allows non-programmers to build workflow applications using its Developer Studio. One of the common use cases is the automation of internal service desk (e.g. IT Service management) processes and workflows. Refer to BMC Remedy documentation for more information. Remedy AR system uses forms to capture and display information. The fields in the form represent a record which is stored in a database table. The system comes with a number of pre-built forms under different modules. Sample forms include HPD:IncidentInterface (Incident form under Help Desk), TMS:Task (Task under Task Management System). Below is a screenshot of the Remedy Dashboard listing Tasks and Incidents. Screenshot 1. Remedy Dashboard In a service management scenario, typically Incident is at the top level, representing an issue or a ticket (e.g. unable to login into Loan application) followed by Tasks (e.g. confirm access level) under the Incident, followed by WorkInfo to track work history (e.g. called customer for Org ID to confirm access) at the Task level. See screenshot below for Remedy Incident form and related Task and Work Information. Screenshot 2. Remedy Incident form SETTING UP REMEDY AR SYSTEM API STEP 1: DOWNLOAD THE REMEDY AR SYSTEM API Access remedy-ar-sapi project from Github and import into Anypoint Studio. Import the Postman collection for API testing. STEP 2: CONFIGURATION Update the Remedy host name, port, and login credentials in config.yaml. Screenshot 3. Remedy server configuration in Anypoint Studio STEP 3: GET REMEDY API AUTHENTICATION TOKEN Remedy REST API requires an authorization header with the API token in every request. The flow in the following screenshot calls Remedy with the login credentials to request an API token and stores in an ObjectStore to be used in subsequent calls. The scheduler is configured to run at the start of the application and refreshes the token every 59 minutes since it expires every hour (default value). Change the scheduler frequency appropriately. Screenshot 4. Mule flow to get Remedy API authentication token ACCESSING AND UPDATING REMEDY AR FORMS In this section, we will walk through the API implementation for three key Remedy forms: Incident, Task, and, WorkInfo. INCIDENT Remedy Incidents are identified by an alphanumeric Incident Number (e.g. INC000003424). The API implements two endpoints: Get and Create Incident. * Get Incident by ID: This flow implements GET Incident by ID API by first setting the API token in the header from ObjectStore and constructing the qualification string that is passed a query parameter. Screenshot 5. Mule variable qualString set to query Remedy by Incident Number Then the flow calls Remedy HPD:IncidentInterface form to query the incident by “Incident ID” using the above qualification string. Screenshot 6. Mule flow to get Incident by ID using HPD:IncidentInterface * Create Incident: The following flow takes new incident fields in JSON format, creates a new Incident using HPD:IncidentInterface_Create form (this returns an internal key), and uses the internal key to query and return the newly created Incident Number. Screenshot 7. Mule flow to create a new Incident and return the Incident Number TASK Remedy Tasks are identified by an alphanumeric Incident Number (e.g. TAS00000124). The API implements three endpoints: Get and Update Task. * Get Task by Task Name and Status: This flow implements GET Task by name and status by first constructing the qualification string that is passed a query parameter. Screenshot 8. Mule variable qualString set to query Task by TaskName and Status * Get Task by ID: Remedy Tasks are identified by an alphanumeric Incident Number (e.g. TAS00000124). This flow implements GET Task by ID API by invoking TMS:Task form with Task ID. * Update Task: This flow allows for task update by passing the task fields in JSON format to the TMS:Task form. For example, to update task status pass { “Status”: “Pending” }. WORKINFO Remedy WorkInfo tracks work history (e.g. notes or comment) and is often associated with a specific Task. The API implements two endpoints: Get and Create WorkInfo. * Get WorkInfo: This flow retrieves all WorkInfo records that are associated with a Task ID. The flow uses taskID on TMS:Task form to request the associated TMS:TAS:WorkInfo and returns an array of WorkInfo records. Screenshot 9. Mule flow calling TMS:Task to retrieve WorkInfo * Create WorkInfo: This flow takes new WorkFlow fields in JSON format and the associated Task ID to retrieve the Task instance ID (Remedy internal ID). Then the flow creates a new WorkInfo under the Task using TMS:WorkInfo form. Here is a sample payload to create a new task {“task_ID”: “TAS00000123”, “comment”: “Pending” } that are mapped to WorkInfo TaskorTaskGroupID and Notes respectively. Screenshot 10. Mule flow to create new WorkInfo under a Task SUMMARY Remedy Action Request (AR) System is a widely used service management solution to automate and track business processes. To keep business processes in sync with other applications within the enterprise it is necessary to access and update Remedy AR records. This article provided a working example of a MuleSoft System API to connect and access Remedy records like Incident, Task and WorkInfo using REST API. In the next article, we will discuss how to use this API to synchronize records with an external application. For more developer resources, check out our tutorials. -------------------------------------------------------------------------------- TAGS COVID-19RESTful API RELATED ARTICLES How to tutorials SETTING UP REAL-TIME SECURE FILE TRANSFER PROTOCOL (SFTP) DATA INTEGRATION WITH WEBHOOKS In this blog, I’ll cover everything you should know about integrating data from SFTP in real-time using webhooks. * Saggi Neumann * 11 mins read How to tutorials EVERYTHING YOU NEED TO KNOW TO MIGRATE FROM MULE 3 TO MULE 4 FROM AIR CANADA * Jay Kizhakkevalappil * 21 mins read How to tutorials HOW TO AUTOMATE THE JENKINS RELEASE PIPELINES Learn how to automate the process that standardizes the promotion of the Mule to higher testing environments. * Peter Dunworth * 9 mins read NEWSLETTER Get the latest news delivered to your inbox Subscribe Also of Interest * BMC Remedy AR System Connector - Mule 4 * Demo: How to Use the ServiceNow Connector with Anypoint Studio * BMC Helix ITSM - Incident and Work note updates to Microsoft Teams MAINFOOTER * Products * Anypoint Platform * MuleSoft Composer * MuleSoft RPA * Start a free trial * Download Studio * Solutions * API management * Integration * Automation * See all solutions * Services * Training * Certification * MuleSoft Catalyst * Business Value Services * Support * Help Center * Community * Tutorials * Documentation * Quick start guides * Ask an expert * Resources * Webinars * Demos * Videos * Analyst reports * eBooks * Whitepapers * Infographics * Articles * Blog * Explore more * Contact sales * Leadership * Partners * Customer stories * Events * News * Careers © Copyright 2022 Salesforce, Inc. All rights reserved. Privacy Privacy Shield Terms Cookie Consent Manager Link to MuleSoft Twitter profile Link to MuleSoft Linkedin profile Link to MuleSoft Facebook profile Link to MuleSoft Instagram profile Link to MuleSoft Videos platform * Deutsch * English Full site * French * Japanese * Portuguese * Spanish * Deutsch * French * Japanese * Portuguese * Spanish * English Full site × SUBSCRIBE AND GET NOTIFIED EACH TIME A NEW EPISODE IS PUBLISHED * * * * * * I agree to MuleSoft's Privacy Policy. Subscribe YOU HAVE BEEN REDIRECTED + You have been redirected to this page because Servicetrace has been acquired by MuleSoft. Click here to learn more. COOKIE CONSENT MANAGER * GENERAL INFORMATION * REQUIRED COOKIES * FUNCTIONAL COOKIES * ADVERTISING COOKIES GENERAL INFORMATION We use three kinds of cookies on our websites: required, functional, and advertising. You can choose whether functional and advertising cookies apply. Click on the different cookie categories to find out more about each category and to change the default settings. Privacy Statement REQUIRED COOKIES Always Active Required cookies are necessary for basic website functionality. Some examples include: session cookies needed to transmit the website, authentication cookies, and security cookies. Cookies Details FUNCTIONAL COOKIES Functional Cookies Functional cookies enhance functions, performance, and services on the website. Some examples include: cookies used to analyze site traffic, cookies used for market research, and cookies used to display advertising that is not directed to a particular individual. Cookies Details ADVERTISING COOKIES Advertising Cookies Advertising cookies track activity across websites in order to understand a viewer’s interests, and direct them specific marketing. Some examples include: cookies used for remarketing, or interest-based advertising. Cookies Details BACK BUTTON BACK Vendor Search Filter Button Consent Leg.Interest checkbox label label checkbox label label checkbox label label * View Third Party Cookies * Name cookie name Clear checkbox label label Apply Cancel Save Settings Accept All Cookies We use cookies to make your interactions with our website more meaningful. They help us better understand how our websites are used, so we can tailor content for you. For more information about the different cookies we are using, read the Privacy Statement. To change your cookie settings and preferences, click the Cookie Consent Manager button. Reject All Cookies Accept All Cookies Cookie Consent Manager