Description
Guide to setting up the configuration files required before deploying the Out-Of-The-Box (OOTB) Accelerator.
Carriers looking to implement the accelerator should review this document as one of the first steps to ensure the accelerator is set-up as expected.
1. Hi Marley Credentials - credentials.xml
2. Properties File - himarley.properties
3. Hi Marley Webapp Message Template
4. Enabling Flexible Schema Handling
- How can I check if the API Key is valid?
Configuration Files
1. Hi Marley Credentials - credentials.xml
Store Hi Marley API Key for your organization within the password xml element.
<password>APIKey</password>
Relative Path
/config/credentials.xml
Credentials File Example
<?xml version="1.0"?>
<tns:CredentialsArray xmlns:tns="http://guidewire.com/credentials">
<tns:CredentialsElem key="HiMarleyService">
<username>API-KEY</username>
<password>VALUE-f219fsa-2ej1fh-sw2s</password>
</tns:CredentialsElem>
</tns:CredentialsArray>
2. Properties File - himarley.properties
API Endpoints and flags to configure brand usage.
Endpoints
Most endpoint properties will not change unless they include the environment-specific integration base URL.
HiMarley.Endpoint.Url
Modify the HiMarley.Endpoint.Url value to match the environment that you are using with your claimcenter instance (UAT or Production).
UAT
HiMarley.Endpoint.Url = https://integration.uat.marley.ai/api/case/
Production
HiMarley.Endpoint.Url = https://integration.himarley.io/api/case/
Flags
SendBrand: Set to true if brands are enabled in Hi Marley organization.BrandingOverride: Set to true if you want to set all new cases to a specific brand.BrandToBeOverwritten: Name of brand to use for all cases.
Relative Path
/gsrc/acc/himarley/integration/himarley.properties
Annotated Example File
Download the attached himarley.properties file to see full annotations on all variables.
3. Hi Marley Webapp Message Template
The ClaimCenter 9 and 10 Accelerators require a message template to be added to Hi Marley with the below values. The accelerator will utilize this template to input the content of messages triggered from ClaimCenter.
Read more about Message Templates on Zendesk
Title: new_message
Message: $message
4. Enabling Flexible Schema Handling
Webhooks at Hi Marley will alway be backwards compatible with existing integrations since we don't modify the existing elements or objects. However, we will add new elements as the platform develops new functionality that can be ignored until you develop ClaimCenter to consume this data.
Enabling flexible schema is designed to allow ClaimCenter to accept webhook requests from Hi Marley when they have a new element/object with any errors so that the existing code can process the known elements.
ClaimCenter has a parameter that needs to be set in both the schema Swagger YAML file and the payload request header when the Hi Marley webhook is triggered.
UnknownPropertyHandling can be set to 3 different values, each of them gives different possibilities. We highly recommend setting this value to ignore so that ClaimCenter can still process the payload without any errors.
4a. Modify Swagger YAML File
The first step is to change the swagger schema files to add the “GW-UnknownPropertyHandling” header parameter to each API path as shown below.
Please note that the ClaimCenter v10 Accelerator marked as version 1.1 already includes this change. If you are unsure, please check the swagger files to confirm.
4B. Remove additionalProperties from schema files
If you are enabling the flexible schema from the certified 1.0 version of our accelerator (v9 and v10), then you will also need to remove the below object from every schema found in the directory - config/integrations/schemas/acc/himarley/caseupdate
"additionalProperties": {
"type": "string"
}
Here are the schemas updated to remove the above property: caseupdate_schemas.zip
4C. Subscribe the Hi Marley Webhooks with the GW-UnknownPropertyHandling header.
Reference the ClaimCenter OOTB Guide for the major version you are working with:
FAQ
How can I check if the API Key is valid?
Run cURL command in any terminal with the API Key in question. The expected result is a payload with the SFTP URI and username set to the name of the organization.
UAT cURL command
curl --location --request \GET 'https://integration.uat.marley.ai/admin/sftp/public-ssh-keys' \--header 'Accept: application/json' \--header 'x-api-key: <API Key>'
Production cURL command
curl --location --request \GET 'https://integration.himarley.io/admin/sftp/public-ssh-keys' \--header 'Accept: application/json' \--header 'x-api-key: <API Key>'