Holidays Configuration
  • 10 Aug 2022
  • 3 Minutes To Read
  • Dark
    Light
  • PDF

Holidays Configuration

  • Dark
    Light
  • PDF

Early Access Feature
If you would like to request early access to this feature, please get in touch with your Mambu Customer Success Manager to discuss your requirements. For more information, see Mambu Release Cycle - Feature Release Status.

Holidays and non-working days define on which days there will be no loan account installments. Holidays fall on specific dates in the year. Non-working days are days of the week which are regularly not considered work days. For more information about this topic, see Holidays and Non-Working Days.

Whereas non-working days apply to your entire organisation, holidays can be defined as either organisation-wide or for specific branches. The configuration as code for holidays feature only manages the organization-wide holidays. To manage branch-specific holidays, you must use the configuration as code for branches feature. For more information, see Branches Configuration.

With Configuration as Code (CasC), you may batch configure your holiday configuration via the API using YAML. For general information on CasC, see Configuration as Code Overview.

API Operations

CasC for holidays supports two operations.

Action Endpoint Description
GET /configuration/holidays.yaml Get current holiday configuration.
PUT /configuration/holidays.yaml Write a new holiday configuration to Mambu.
Please Note

If you PUT a configuration to Mambu, any current configuration settings not included in the new YAML configuration will be deleted. PATCH requests are not currently supported.

Requests

For general information on CasC requests such as authentication and required headers, see Configuration as Code Overview.

The following section shows sample requests using curl and basic authentication. For all examples, replace TENANT_NAME with your actual tenant name.

GET configuration

curl -X GET 'https://TENANT_NAME.mambu.com/api/configuration/holidays.yaml' \
-H 'Accept: application/vnd.mambu.v2+yaml' \
-H 'Authorization: Basic {auth}' 

{auth} is the base-64-encoded value of username:password. For more information, see Authentication in our API reference.

PUT configuration

curl -X PUT 'https://TENANT_NAME.mambu.com/api/configuration/holidays.yaml' \
-H 'Accept: application/vnd.mambu.v2+yaml' \
-H 'Content-Type: application/yaml' \
-H 'Authorization: Basic {auth}'  \
--data-binary @holidays.yaml

{auth} is the base-64-encoded value of username:password. For more information, see Authentication in our API reference.

@holidays.yaml represents the absolute path of the file on your device.

(Use “--data-raw” if you want to specify the YAML body inline).

Configuration example

nonWorkingDays:
  - "TUESDAY"
  - "FRIDAY"
holidays:
  - id: 1
    name: " holiday 1"
    dayOfMonth: 11
    monthOfYear: 01
    year: 1995
    isAnnuallyRecurring: "true"
  - id: 2
    name: " holiday 2"
    dayOfMonth: 11
    monthOfYear: 01
    year: 1995
    isAnnuallyRecurring: "true"
  - id: 4
    name: " holiday 4"
    dayOfMonth: 9
    monthOfYear: 7
    year: 2029
    isAnnuallyRecurring: "true"
  - id: 5
    name: " holiday 5"
    dayOfMonth: 5
    monthOfYear: 4
    year: 2011
    isAnnuallyRecurring: "true"

Attributes

Name Type Description Required
nonWorkingDays List A list of the days of the week that are non-working days.
holidays List A list of holidays.
id Number The unique identifier of the holiday.
name String Name of the holiday.
dayOfMonth Number The day of the month of the holiday.
monthOfYear Number The month in the year of the holiday.
year Number The year of the holiday.
isAnnuallyRecurring Boolean Whether the holiday recurs every year.

Replies

If you do not receive a 200 OK response then fix any validation errors and make another PUT request until you receive a 200 OK response.

Please Note

If you PUT a valid YAML configuration to the API and you do not receive a 200 OK status code within 60 seconds, you may receive a 504 Gateway Timeout status code. We expect all responses to be below 60 seconds.

If you encounter this issue, please contact us through Mambu Support so we can investigate it.

Validations

With all use cases, a validation of the uploaded file will be done, ensuring the following:

  • Syntax is correct as per YAML standards and the template for holidays.
  • Minimum requirements indicates the line with the syntax error.
  • Content is correct.

Configuration settings may be specified in any order.

Name Input Requirements
nonWorkingDays Should not contain duplicate keys.
id Mandatory, unique, between 1 and 2,147,483,647.
name Mandatory, not blank and between 1 and 256 characters.
dayOfMonth Must be between 1 and 31.
monthOfYear Must be between 1 and 12.
date Must be between 1900 and 9999.
Combination of dayOfMonth, monthOfYear, and date Must represent a valid date.
isAnnuallyRecurring Must be true or false.

Was this article helpful?