{
  "openapi": "3.0.4",
  "info": {
    "title": "Rate Card",
    "description": "Ratecard allows Clients to configure subsidy or commission to be applied to Settle, Refund and Chargeback transactions.",
    "contact": {
      "name": "Stratus Team 8"
    },
    "version": "3.0"
  },
  "servers": [
    {
      "url": "https://mtapi.dev-newdaytechnology.net/cl/rate-card-service",
      "description": "Dev"
    },
    {
      "url": "https://mtapi.stg-newdaytechnology.net/cl/rate-card-service",
      "description": "Staging"
    },
    {
      "url": "https://mtapi.newdaytechnology.net/cl/rate-card-service",
      "description": "Production"
    }
  ],
  "paths": {
    "/merchants/{merchantId}/rate-cards/{rateCardId}/association": {
      "post": {
        "tags": [
          "Merchants"
        ],
        "summary": "Create or update a rate card assocation between a merchant and a rate card.",
        "description": "Creates or updates a rate card assocation between a merchant and a rate card. \nIf the association already exists, it is updated. \nIf the association does not already exist, it is created.",
        "operationId": "RateCard Association",
        "parameters": [
          {
            "name": "merchantId",
            "in": "path",
            "description": "Identifier assigned to the Merchant.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "rateCardId",
            "in": "path",
            "description": "Identifier assigned to the Ratecard..",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "idempotency-key",
            "in": "header",
            "description": "Identifier for idempotency",
            "schema": {
              "type": "string"
            },
            "example": "EE735673-05F2-4C56-8A68-60170BDA4524"
          },
          {
            "name": "context-tenantId",
            "in": "header",
            "description": "Identifier assigned to the Tenant.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "description": "The information on the association to create or update.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/MerchantRateCardAssociationRequest"
              },
              "examples": {
                "Example MerchantRateCardAssociationRequest": {
                  "value": {
                    "startDate": "2024-12-24T09:30:00+00:00"
                  }
                }
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/MerchantRateCardAssociationRequest"
              },
              "examples": {
                "Example MerchantRateCardAssociationRequest": {
                  "value": {
                    "startDate": "2024-12-24T09:30:00+00:00"
                  }
                }
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/MerchantRateCardAssociationRequest"
              },
              "examples": {
                "Example MerchantRateCardAssociationRequest": {
                  "value": {
                    "startDate": "2024-12-24T09:30:00+00:00"
                  }
                }
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Association created or updated."
          },
          "400": {
            "description": "The request was invalid.",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ValidationProblemDetails"
                },
                "examples": {
                  "Example ValidationProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:validation",
                      "title": "One or more validation errors occurred.",
                      "errors": {
                        "propertyName": [
                          "Error Message"
                        ]
                      }
                    }
                  }
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ValidationProblemDetails"
                },
                "examples": {
                  "Example ValidationProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:validation",
                      "title": "One or more validation errors occurred.",
                      "errors": {
                        "propertyName": [
                          "Error Message"
                        ]
                      }
                    }
                  }
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ValidationProblemDetails"
                },
                "examples": {
                  "Example ValidationProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:validation",
                      "title": "One or more validation errors occurred.",
                      "errors": {
                        "propertyName": [
                          "Error Message"
                        ]
                      }
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorised."
          },
          "403": {
            "description": "Forbidden."
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundProblemDetails"
                },
                "examples": {
                  "Example NotFoundProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:missing",
                      "title": "RateCardNotFound",
                      "status": 404
                    }
                  }
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundProblemDetails"
                },
                "examples": {
                  "Example NotFoundProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:missing",
                      "title": "RateCardNotFound",
                      "status": 404
                    }
                  }
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundProblemDetails"
                },
                "examples": {
                  "Example NotFoundProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:missing",
                      "title": "RateCardNotFound",
                      "status": 404
                    }
                  }
                }
              }
            }
          },
          "429": {
            "description": "The number of requests exceeded the maximum allowed."
          },
          "500": {
            "description": "An internal server error occured."
          },
          "502": {
            "description": "Bad gateway."
          },
          "503": {
            "description": "Service unavailable."
          },
          "504": {
            "description": "Gateway timeout."
          }
        },
        "x-codeSamples": [
          {
            "lang": "Shell + Curl",
            "source": "curl --request POST \\\n  --url https://mtapi.dev-newdaytechnology.net/cl/rate-card-service/merchants/%7BmerchantId%7D/rate-cards/%7BrateCardId%7D/association \\\n  --header 'content-type: application/json' \\\n  --header 'context-tenantId: SOME_STRING_VALUE' \\\n  --header 'idempotency-key: EE735673-05F2-4C56-8A68-60170BDA4524' \\\n  --data '{\"startDate\":\"2019-08-24T14:15:22Z\"}'"
          },
          {
            "lang": "Csharp + Restsharp",
            "source": "var client = new RestClient(\"https://mtapi.dev-newdaytechnology.net/cl/rate-card-service/merchants/%7BmerchantId%7D/rate-cards/%7BrateCardId%7D/association\");\nvar request = new RestRequest(Method.POST);\nrequest.AddHeader(\"idempotency-key\", \"EE735673-05F2-4C56-8A68-60170BDA4524\");\nrequest.AddHeader(\"context-tenantId\", \"SOME_STRING_VALUE\");\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddParameter(\"application/json\", \"{\\\"startDate\\\":\\\"2019-08-24T14:15:22Z\\\"}\", ParameterType.RequestBody);\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "Javascript + Xhr",
            "source": "const data = JSON.stringify({\n  \"startDate\": \"2019-08-24T14:15:22Z\"\n});\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"POST\", \"https://mtapi.dev-newdaytechnology.net/cl/rate-card-service/merchants/%7BmerchantId%7D/rate-cards/%7BrateCardId%7D/association\");\nxhr.setRequestHeader(\"idempotency-key\", \"EE735673-05F2-4C56-8A68-60170BDA4524\");\nxhr.setRequestHeader(\"context-tenantId\", \"SOME_STRING_VALUE\");\nxhr.setRequestHeader(\"content-type\", \"application/json\");\n\nxhr.send(data);"
          },
          {
            "lang": "Node + Request",
            "source": "const request = require('request');\n\nconst options = {\n  method: 'POST',\n  url: 'https://mtapi.dev-newdaytechnology.net/cl/rate-card-service/merchants/%7BmerchantId%7D/rate-cards/%7BrateCardId%7D/association',\n  headers: {\n    'idempotency-key': 'EE735673-05F2-4C56-8A68-60170BDA4524',\n    'context-tenantId': 'SOME_STRING_VALUE',\n    'content-type': 'application/json'\n  },\n  body: {startDate: '2019-08-24T14:15:22Z'},\n  json: true\n};\n\nrequest(options, function (error, response, body) {\n  if (error) throw new Error(error);\n\n  console.log(body);\n});\n"
          }
        ]
      },
      "delete": {
        "tags": [
          "Merchants"
        ],
        "summary": "Remove a rate card assocation between a merchant and a rate card.",
        "description": "Remove a rate card assocation between a merchant and a rate card.",
        "operationId": "Remove RateCard Association",
        "parameters": [
          {
            "name": "merchantId",
            "in": "path",
            "description": "Identifier assigned to the Merchant.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "rateCardId",
            "in": "path",
            "description": "Identifier assigned to the Ratecard.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "idempotency-key",
            "in": "header",
            "description": "Identifier for idempotency",
            "schema": {
              "type": "string"
            },
            "example": "EE735673-05F2-4C56-8A68-60170BDA4524"
          },
          {
            "name": "context-tenantId",
            "in": "header",
            "description": "Identifier assigned to the Tenant.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Association deleted."
          },
          "400": {
            "description": "The request was invalid."
          },
          "401": {
            "description": "Unauthorised."
          },
          "403": {
            "description": "Forbidden."
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundProblemDetails"
                },
                "examples": {
                  "Example NotFoundProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:missing",
                      "title": "RateCardNotFound",
                      "status": 404
                    }
                  }
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundProblemDetails"
                },
                "examples": {
                  "Example NotFoundProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:missing",
                      "title": "RateCardNotFound",
                      "status": 404
                    }
                  }
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundProblemDetails"
                },
                "examples": {
                  "Example NotFoundProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:missing",
                      "title": "RateCardNotFound",
                      "status": 404
                    }
                  }
                }
              }
            }
          },
          "429": {
            "description": "The number of requests exceeded the maximum allowed."
          },
          "500": {
            "description": "An internal server error occured."
          },
          "502": {
            "description": "Bad gateway."
          },
          "503": {
            "description": "Service unavailable."
          },
          "504": {
            "description": "Gateway timeout."
          }
        },
        "x-codeSamples": [
          {
            "lang": "Shell + Curl",
            "source": "curl --request DELETE \\\n  --url https://mtapi.dev-newdaytechnology.net/cl/rate-card-service/merchants/%7BmerchantId%7D/rate-cards/%7BrateCardId%7D/association \\\n  --header 'context-tenantId: SOME_STRING_VALUE' \\\n  --header 'idempotency-key: EE735673-05F2-4C56-8A68-60170BDA4524'"
          },
          {
            "lang": "Csharp + Restsharp",
            "source": "var client = new RestClient(\"https://mtapi.dev-newdaytechnology.net/cl/rate-card-service/merchants/%7BmerchantId%7D/rate-cards/%7BrateCardId%7D/association\");\nvar request = new RestRequest(Method.DELETE);\nrequest.AddHeader(\"idempotency-key\", \"EE735673-05F2-4C56-8A68-60170BDA4524\");\nrequest.AddHeader(\"context-tenantId\", \"SOME_STRING_VALUE\");\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "Javascript + Xhr",
            "source": "const data = null;\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"DELETE\", \"https://mtapi.dev-newdaytechnology.net/cl/rate-card-service/merchants/%7BmerchantId%7D/rate-cards/%7BrateCardId%7D/association\");\nxhr.setRequestHeader(\"idempotency-key\", \"EE735673-05F2-4C56-8A68-60170BDA4524\");\nxhr.setRequestHeader(\"context-tenantId\", \"SOME_STRING_VALUE\");\n\nxhr.send(data);"
          },
          {
            "lang": "Node + Request",
            "source": "const request = require('request');\n\nconst options = {\n  method: 'DELETE',\n  url: 'https://mtapi.dev-newdaytechnology.net/cl/rate-card-service/merchants/%7BmerchantId%7D/rate-cards/%7BrateCardId%7D/association',\n  headers: {\n    'idempotency-key': 'EE735673-05F2-4C56-8A68-60170BDA4524',\n    'context-tenantId': 'SOME_STRING_VALUE'\n  }\n};\n\nrequest(options, function (error, response, body) {\n  if (error) throw new Error(error);\n\n  console.log(body);\n});\n"
          }
        ]
      }
    },
    "/merchants/{merchantId}/rate-cards/associations": {
      "get": {
        "tags": [
          "Merchants"
        ],
        "summary": "Retrieve all the rate card assocations for a merchant.",
        "description": "Retrieve all the rate card assocations for a merchant.",
        "operationId": "Retrieve all RateCard Associations",
        "parameters": [
          {
            "name": "merchantId",
            "in": "path",
            "description": "Identifier assigned to the Merchant.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "context-tenantId",
            "in": "header",
            "description": "Identifier assigned to the Tenant.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Returned merchant rate card associations",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/GetAllRateCardAssociationsResponse"
                },
                "examples": {
                  "Example GetAllRateCardAssociationsResponse": {
                    "value": {
                      "merchantId": "71b17112-4762-407b-aefb-374dd4fcdb64",
                      "associations": [
                        {
                          "rateCardId": "71b17112-4762-407b-aefb-374dd4fcdb64",
                          "startDate": "2024-12-24T09:30:00+00:00"
                        }
                      ]
                    }
                  }
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetAllRateCardAssociationsResponse"
                },
                "examples": {
                  "Example GetAllRateCardAssociationsResponse": {
                    "value": {
                      "merchantId": "71b17112-4762-407b-aefb-374dd4fcdb64",
                      "associations": [
                        {
                          "rateCardId": "71b17112-4762-407b-aefb-374dd4fcdb64",
                          "startDate": "2024-12-24T09:30:00+00:00"
                        }
                      ]
                    }
                  }
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetAllRateCardAssociationsResponse"
                },
                "examples": {
                  "Example GetAllRateCardAssociationsResponse": {
                    "value": {
                      "merchantId": "71b17112-4762-407b-aefb-374dd4fcdb64",
                      "associations": [
                        {
                          "rateCardId": "71b17112-4762-407b-aefb-374dd4fcdb64",
                          "startDate": "2024-12-24T09:30:00+00:00"
                        }
                      ]
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "The request was invalid."
          },
          "401": {
            "description": "Unauthorised."
          },
          "403": {
            "description": "Forbidden."
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundProblemDetails"
                },
                "examples": {
                  "Example NotFoundProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:missing",
                      "title": "RateCardNotFound",
                      "status": 404
                    }
                  }
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundProblemDetails"
                },
                "examples": {
                  "Example NotFoundProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:missing",
                      "title": "RateCardNotFound",
                      "status": 404
                    }
                  }
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundProblemDetails"
                },
                "examples": {
                  "Example NotFoundProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:missing",
                      "title": "RateCardNotFound",
                      "status": 404
                    }
                  }
                }
              }
            }
          },
          "429": {
            "description": "The number of requests exceeded the maximum allowed."
          },
          "500": {
            "description": "An internal server error occured."
          },
          "502": {
            "description": "Bad gateway."
          },
          "503": {
            "description": "Service unavailable."
          },
          "504": {
            "description": "Gateway timeout."
          }
        },
        "x-codeSamples": [
          {
            "lang": "Shell + Curl",
            "source": "curl --request GET \\\n  --url https://mtapi.dev-newdaytechnology.net/cl/rate-card-service/merchants/%7BmerchantId%7D/rate-cards/associations \\\n  --header 'context-tenantId: SOME_STRING_VALUE'"
          },
          {
            "lang": "Csharp + Restsharp",
            "source": "var client = new RestClient(\"https://mtapi.dev-newdaytechnology.net/cl/rate-card-service/merchants/%7BmerchantId%7D/rate-cards/associations\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"context-tenantId\", \"SOME_STRING_VALUE\");\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "Javascript + Xhr",
            "source": "const data = null;\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"GET\", \"https://mtapi.dev-newdaytechnology.net/cl/rate-card-service/merchants/%7BmerchantId%7D/rate-cards/associations\");\nxhr.setRequestHeader(\"context-tenantId\", \"SOME_STRING_VALUE\");\n\nxhr.send(data);"
          },
          {
            "lang": "Node + Request",
            "source": "const request = require('request');\n\nconst options = {\n  method: 'GET',\n  url: 'https://mtapi.dev-newdaytechnology.net/cl/rate-card-service/merchants/%7BmerchantId%7D/rate-cards/associations',\n  headers: {'context-tenantId': 'SOME_STRING_VALUE'}\n};\n\nrequest(options, function (error, response, body) {\n  if (error) throw new Error(error);\n\n  console.log(body);\n});\n"
          }
        ]
      }
    },
    "/merchants/{merchantId}/rate-card": {
      "get": {
        "tags": [
          "Merchants"
        ],
        "summary": "Get the current rate card associated with a merchant.",
        "description": "Get the current rate card associated with a merchant.",
        "operationId": "Retrieve Current RateCard Association",
        "parameters": [
          {
            "name": "merchantId",
            "in": "path",
            "description": "Identifier assigned to the Merchant.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "context-tenantId",
            "in": "header",
            "description": "Identifier assigned to the Tenant.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The current rate card.",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/GetRateCardResponse"
                },
                "examples": {
                  "Active Rate Card": {
                    "summary": "A rate card which has been activated",
                    "value": {
                      "rateCardId": "71b17112-4762-407b-aefb-374dd4fcdb64",
                      "description": "Some active rate card",
                      "status": "Active",
                      "processingComplete": true,
                      "items": [
                        {
                          "spendType": "Instalment",
                          "interestRatePercentage": null,
                          "termMonths": null,
                          "lowerLimitInclusive": 0.01,
                          "upperLimitExclusive": 0.99,
                          "riskBands": [
                            "A",
                            "B",
                            "C"
                          ],
                          "settlementPercentage": null,
                          "refundPercentage": null,
                          "chargebackPercentage": null
                        }
                      ]
                    }
                  }
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetRateCardResponse"
                },
                "examples": {
                  "Active Rate Card": {
                    "summary": "A rate card which has been activated",
                    "value": {
                      "rateCardId": "71b17112-4762-407b-aefb-374dd4fcdb64",
                      "description": "Some active rate card",
                      "status": "Active",
                      "processingComplete": true,
                      "items": [
                        {
                          "spendType": "Instalment",
                          "interestRatePercentage": null,
                          "termMonths": null,
                          "lowerLimitInclusive": 0.01,
                          "upperLimitExclusive": 0.99,
                          "riskBands": [
                            "A",
                            "B",
                            "C"
                          ],
                          "settlementPercentage": null,
                          "refundPercentage": null,
                          "chargebackPercentage": null
                        }
                      ]
                    }
                  }
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetRateCardResponse"
                },
                "examples": {
                  "Active Rate Card": {
                    "summary": "A rate card which has been activated",
                    "value": {
                      "rateCardId": "71b17112-4762-407b-aefb-374dd4fcdb64",
                      "description": "Some active rate card",
                      "status": "Active",
                      "processingComplete": true,
                      "items": [
                        {
                          "spendType": "Instalment",
                          "interestRatePercentage": null,
                          "termMonths": null,
                          "lowerLimitInclusive": 0.01,
                          "upperLimitExclusive": 0.99,
                          "riskBands": [
                            "A",
                            "B",
                            "C"
                          ],
                          "settlementPercentage": null,
                          "refundPercentage": null,
                          "chargebackPercentage": null
                        }
                      ]
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "The request was invalid."
          },
          "401": {
            "description": "Unauthorised."
          },
          "403": {
            "description": "Forbidden."
          },
          "404": {
            "description": "Not Found",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundProblemDetails"
                },
                "examples": {
                  "Example NotFoundProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:missing",
                      "title": "RateCardNotFound",
                      "status": 404
                    }
                  }
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundProblemDetails"
                },
                "examples": {
                  "Example NotFoundProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:missing",
                      "title": "RateCardNotFound",
                      "status": 404
                    }
                  }
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundProblemDetails"
                },
                "examples": {
                  "Example NotFoundProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:missing",
                      "title": "RateCardNotFound",
                      "status": 404
                    }
                  }
                }
              }
            }
          },
          "429": {
            "description": "The number of requests exceeded the maximum allowed."
          },
          "500": {
            "description": "An internal server error occured."
          },
          "502": {
            "description": "Bad gateway."
          },
          "503": {
            "description": "Service unavailable."
          },
          "504": {
            "description": "Gateway timeout."
          }
        },
        "x-codeSamples": [
          {
            "lang": "Shell + Curl",
            "source": "curl --request GET \\\n  --url https://mtapi.dev-newdaytechnology.net/cl/rate-card-service/merchants/%7BmerchantId%7D/rate-card \\\n  --header 'context-tenantId: SOME_STRING_VALUE'"
          },
          {
            "lang": "Csharp + Restsharp",
            "source": "var client = new RestClient(\"https://mtapi.dev-newdaytechnology.net/cl/rate-card-service/merchants/%7BmerchantId%7D/rate-card\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"context-tenantId\", \"SOME_STRING_VALUE\");\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "Javascript + Xhr",
            "source": "const data = null;\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"GET\", \"https://mtapi.dev-newdaytechnology.net/cl/rate-card-service/merchants/%7BmerchantId%7D/rate-card\");\nxhr.setRequestHeader(\"context-tenantId\", \"SOME_STRING_VALUE\");\n\nxhr.send(data);"
          },
          {
            "lang": "Node + Request",
            "source": "const request = require('request');\n\nconst options = {\n  method: 'GET',\n  url: 'https://mtapi.dev-newdaytechnology.net/cl/rate-card-service/merchants/%7BmerchantId%7D/rate-card',\n  headers: {'context-tenantId': 'SOME_STRING_VALUE'}\n};\n\nrequest(options, function (error, response, body) {\n  if (error) throw new Error(error);\n\n  console.log(body);\n});\n"
          }
        ]
      }
    },
    "/rate-cards/grid": {
      "post": {
        "tags": [
          "RateCards"
        ],
        "summary": "Creates a complete rate card, using the grid specification.",
        "description": "Creates a complete rate card, using the grid specification.",
        "operationId": "CreateRateCardFromGrid",
        "parameters": [
          {
            "name": "idempotency-key",
            "in": "header",
            "description": "Identifier for idempotency",
            "schema": {
              "type": "string"
            },
            "example": "EE735673-05F2-4C56-8A68-60170BDA4524"
          },
          {
            "name": "context-tenantId",
            "in": "header",
            "description": "Identifier assigned to the Tenant.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "description": "Details of the rate card to complete.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateRateCardFromGridRequest"
              },
              "examples": {
                "Example CreateRateCardFromGridRequest": {
                  "value": {
                    "description": "Grid rate card",
                    "gridSpec": {
                      "rows": [
                        {
                          "spendType": "Purchase",
                          "interestRatePercentage": null,
                          "termMonths": null
                        }
                      ],
                      "columns": [
                        {
                          "lowerLimitInclusive": 100,
                          "upperLimitExclusive": 1000,
                          "riskBands": [
                            "A",
                            "B",
                            "C"
                          ]
                        }
                      ]
                    },
                    "grid": []
                  }
                }
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateRateCardFromGridRequest"
              },
              "examples": {
                "Example CreateRateCardFromGridRequest": {
                  "value": {
                    "description": "Grid rate card",
                    "gridSpec": {
                      "rows": [
                        {
                          "spendType": "Purchase",
                          "interestRatePercentage": null,
                          "termMonths": null
                        }
                      ],
                      "columns": [
                        {
                          "lowerLimitInclusive": 100,
                          "upperLimitExclusive": 1000,
                          "riskBands": [
                            "A",
                            "B",
                            "C"
                          ]
                        }
                      ]
                    },
                    "grid": []
                  }
                }
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateRateCardFromGridRequest"
              },
              "examples": {
                "Example CreateRateCardFromGridRequest": {
                  "value": {
                    "description": "Grid rate card",
                    "gridSpec": {
                      "rows": [
                        {
                          "spendType": "Purchase",
                          "interestRatePercentage": null,
                          "termMonths": null
                        }
                      ],
                      "columns": [
                        {
                          "lowerLimitInclusive": 100,
                          "upperLimitExclusive": 1000,
                          "riskBands": [
                            "A",
                            "B",
                            "C"
                          ]
                        }
                      ]
                    },
                    "grid": []
                  }
                }
              }
            }
          }
        },
        "responses": {
          "202": {
            "description": "The rate card creation has been accepted.",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/CreateRateCardResponse"
                },
                "examples": {
                  "Example CreateRateCardResponse": {
                    "value": {
                      "rateCardId": "71b17112-4762-407b-aefb-374dd4fcdb64"
                    }
                  }
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateRateCardResponse"
                },
                "examples": {
                  "Example CreateRateCardResponse": {
                    "value": {
                      "rateCardId": "71b17112-4762-407b-aefb-374dd4fcdb64"
                    }
                  }
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateRateCardResponse"
                },
                "examples": {
                  "Example CreateRateCardResponse": {
                    "value": {
                      "rateCardId": "71b17112-4762-407b-aefb-374dd4fcdb64"
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "The request was invalid.",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ValidationProblemDetails"
                },
                "examples": {
                  "Example ValidationProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:validation",
                      "title": "One or more validation errors occurred.",
                      "errors": {
                        "propertyName": [
                          "Error Message"
                        ]
                      }
                    }
                  }
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ValidationProblemDetails"
                },
                "examples": {
                  "Example ValidationProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:validation",
                      "title": "One or more validation errors occurred.",
                      "errors": {
                        "propertyName": [
                          "Error Message"
                        ]
                      }
                    }
                  }
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ValidationProblemDetails"
                },
                "examples": {
                  "Example ValidationProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:validation",
                      "title": "One or more validation errors occurred.",
                      "errors": {
                        "propertyName": [
                          "Error Message"
                        ]
                      }
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorised."
          },
          "403": {
            "description": "Forbidden."
          },
          "404": {
            "description": "Details of what was not found.",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundProblemDetails"
                },
                "examples": {
                  "Example NotFoundProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:missing",
                      "title": "RateCardNotFound",
                      "status": 404
                    }
                  }
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundProblemDetails"
                },
                "examples": {
                  "Example NotFoundProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:missing",
                      "title": "RateCardNotFound",
                      "status": 404
                    }
                  }
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundProblemDetails"
                },
                "examples": {
                  "Example NotFoundProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:missing",
                      "title": "RateCardNotFound",
                      "status": 404
                    }
                  }
                }
              }
            }
          },
          "429": {
            "description": "The number of requests exceeded the maximum allowed."
          },
          "500": {
            "description": "An internal server error occured."
          },
          "502": {
            "description": "Bad gateway."
          },
          "503": {
            "description": "Service unavailable."
          },
          "504": {
            "description": "Gateway timeout."
          }
        },
        "x-codeSamples": [
          {
            "lang": "Shell + Curl",
            "source": "curl --request POST \\\n  --url https://mtapi.dev-newdaytechnology.net/cl/rate-card-service/rate-cards/grid \\\n  --header 'content-type: application/json' \\\n  --header 'context-tenantId: SOME_STRING_VALUE' \\\n  --header 'idempotency-key: EE735673-05F2-4C56-8A68-60170BDA4524' \\\n  --data '{\"description\":\"string\",\"gridSpec\":{\"rows\":[{\"spendType\":\"Purchase\",\"interestRatePercentage\":0.1,\"termMonths\":0}],\"columns\":[{\"lowerLimitInclusive\":0.1,\"upperLimitExclusive\":0.1,\"riskBands\":[\"string\"]}]},\"grid\":[[{\"settlementPercentage\":0.1,\"refundPercentage\":0.1,\"chargebackPercentage\":0.1}]]}'"
          },
          {
            "lang": "Csharp + Restsharp",
            "source": "var client = new RestClient(\"https://mtapi.dev-newdaytechnology.net/cl/rate-card-service/rate-cards/grid\");\nvar request = new RestRequest(Method.POST);\nrequest.AddHeader(\"idempotency-key\", \"EE735673-05F2-4C56-8A68-60170BDA4524\");\nrequest.AddHeader(\"context-tenantId\", \"SOME_STRING_VALUE\");\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddParameter(\"application/json\", \"{\\\"description\\\":\\\"string\\\",\\\"gridSpec\\\":{\\\"rows\\\":[{\\\"spendType\\\":\\\"Purchase\\\",\\\"interestRatePercentage\\\":0.1,\\\"termMonths\\\":0}],\\\"columns\\\":[{\\\"lowerLimitInclusive\\\":0.1,\\\"upperLimitExclusive\\\":0.1,\\\"riskBands\\\":[\\\"string\\\"]}]},\\\"grid\\\":[[{\\\"settlementPercentage\\\":0.1,\\\"refundPercentage\\\":0.1,\\\"chargebackPercentage\\\":0.1}]]}\", ParameterType.RequestBody);\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "Javascript + Xhr",
            "source": "const data = JSON.stringify({\n  \"description\": \"string\",\n  \"gridSpec\": {\n    \"rows\": [\n      {\n        \"spendType\": \"Purchase\",\n        \"interestRatePercentage\": 0.1,\n        \"termMonths\": 0\n      }\n    ],\n    \"columns\": [\n      {\n        \"lowerLimitInclusive\": 0.1,\n        \"upperLimitExclusive\": 0.1,\n        \"riskBands\": [\n          \"string\"\n        ]\n      }\n    ]\n  },\n  \"grid\": [\n    [\n      {\n        \"settlementPercentage\": 0.1,\n        \"refundPercentage\": 0.1,\n        \"chargebackPercentage\": 0.1\n      }\n    ]\n  ]\n});\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"POST\", \"https://mtapi.dev-newdaytechnology.net/cl/rate-card-service/rate-cards/grid\");\nxhr.setRequestHeader(\"idempotency-key\", \"EE735673-05F2-4C56-8A68-60170BDA4524\");\nxhr.setRequestHeader(\"context-tenantId\", \"SOME_STRING_VALUE\");\nxhr.setRequestHeader(\"content-type\", \"application/json\");\n\nxhr.send(data);"
          },
          {
            "lang": "Node + Request",
            "source": "const request = require('request');\n\nconst options = {\n  method: 'POST',\n  url: 'https://mtapi.dev-newdaytechnology.net/cl/rate-card-service/rate-cards/grid',\n  headers: {\n    'idempotency-key': 'EE735673-05F2-4C56-8A68-60170BDA4524',\n    'context-tenantId': 'SOME_STRING_VALUE',\n    'content-type': 'application/json'\n  },\n  body: {\n    description: 'string',\n    gridSpec: {\n      rows: [{spendType: 'Purchase', interestRatePercentage: 0.1, termMonths: 0}],\n      columns: [{lowerLimitInclusive: 0.1, upperLimitExclusive: 0.1, riskBands: ['string']}]\n    },\n    grid: [\n      [{settlementPercentage: 0.1, refundPercentage: 0.1, chargebackPercentage: 0.1}]\n    ]\n  },\n  json: true\n};\n\nrequest(options, function (error, response, body) {\n  if (error) throw new Error(error);\n\n  console.log(body);\n});\n"
          }
        ]
      }
    },
    "/rate-cards/{rateCardId}/grid": {
      "put": {
        "tags": [
          "RateCards"
        ],
        "summary": "Updates rate card details, using the grid specification.",
        "description": "Updates rate card details, using the grid specification.",
        "operationId": "UpdateRateCardFromGrid",
        "parameters": [
          {
            "name": "rateCardId",
            "in": "path",
            "description": "Identifier assigned to the Ratecard.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "context-tenantId",
            "in": "header",
            "description": "Identifier assigned to the Tenant.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "description": "Details to update on the rate card.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateRateCardFromGridRequest"
              },
              "examples": {
                "Example CreateRateCardFromGridRequest": {
                  "value": {
                    "description": "Grid rate card",
                    "gridSpec": {
                      "rows": [
                        {
                          "spendType": "Purchase",
                          "interestRatePercentage": null,
                          "termMonths": null
                        }
                      ],
                      "columns": [
                        {
                          "lowerLimitInclusive": 100,
                          "upperLimitExclusive": 1000,
                          "riskBands": [
                            "A",
                            "B",
                            "C"
                          ]
                        }
                      ]
                    },
                    "grid": []
                  }
                }
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateRateCardFromGridRequest"
              },
              "examples": {
                "Example CreateRateCardFromGridRequest": {
                  "value": {
                    "description": "Grid rate card",
                    "gridSpec": {
                      "rows": [
                        {
                          "spendType": "Purchase",
                          "interestRatePercentage": null,
                          "termMonths": null
                        }
                      ],
                      "columns": [
                        {
                          "lowerLimitInclusive": 100,
                          "upperLimitExclusive": 1000,
                          "riskBands": [
                            "A",
                            "B",
                            "C"
                          ]
                        }
                      ]
                    },
                    "grid": []
                  }
                }
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateRateCardFromGridRequest"
              },
              "examples": {
                "Example CreateRateCardFromGridRequest": {
                  "value": {
                    "description": "Grid rate card",
                    "gridSpec": {
                      "rows": [
                        {
                          "spendType": "Purchase",
                          "interestRatePercentage": null,
                          "termMonths": null
                        }
                      ],
                      "columns": [
                        {
                          "lowerLimitInclusive": 100,
                          "upperLimitExclusive": 1000,
                          "riskBands": [
                            "A",
                            "B",
                            "C"
                          ]
                        }
                      ]
                    },
                    "grid": []
                  }
                }
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Updated the rate card."
          },
          "400": {
            "description": "The request was invalid.",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ValidationProblemDetails"
                },
                "examples": {
                  "Example ValidationProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:validation",
                      "title": "One or more validation errors occurred.",
                      "errors": {
                        "propertyName": [
                          "Error Message"
                        ]
                      }
                    }
                  }
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ValidationProblemDetails"
                },
                "examples": {
                  "Example ValidationProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:validation",
                      "title": "One or more validation errors occurred.",
                      "errors": {
                        "propertyName": [
                          "Error Message"
                        ]
                      }
                    }
                  }
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ValidationProblemDetails"
                },
                "examples": {
                  "Example ValidationProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:validation",
                      "title": "One or more validation errors occurred.",
                      "errors": {
                        "propertyName": [
                          "Error Message"
                        ]
                      }
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorised."
          },
          "403": {
            "description": "Forbidden."
          },
          "404": {
            "description": "Details of what was not found.",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundProblemDetails"
                },
                "examples": {
                  "Example NotFoundProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:missing",
                      "title": "RateCardNotFound",
                      "status": 404
                    }
                  }
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundProblemDetails"
                },
                "examples": {
                  "Example NotFoundProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:missing",
                      "title": "RateCardNotFound",
                      "status": 404
                    }
                  }
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundProblemDetails"
                },
                "examples": {
                  "Example NotFoundProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:missing",
                      "title": "RateCardNotFound",
                      "status": 404
                    }
                  }
                }
              }
            }
          },
          "429": {
            "description": "The number of requests exceeded the maximum allowed."
          },
          "500": {
            "description": "An internal server error occured."
          },
          "502": {
            "description": "Bad gateway."
          },
          "503": {
            "description": "Service unavailable."
          },
          "504": {
            "description": "Gateway timeout."
          }
        },
        "x-codeSamples": [
          {
            "lang": "Shell + Curl",
            "source": "curl --request PUT \\\n  --url https://mtapi.dev-newdaytechnology.net/cl/rate-card-service/rate-cards/%7BrateCardId%7D/grid \\\n  --header 'content-type: application/json' \\\n  --header 'context-tenantId: SOME_STRING_VALUE' \\\n  --data '{\"description\":\"string\",\"gridSpec\":{\"rows\":[{\"spendType\":\"Purchase\",\"interestRatePercentage\":0.1,\"termMonths\":0}],\"columns\":[{\"lowerLimitInclusive\":0.1,\"upperLimitExclusive\":0.1,\"riskBands\":[\"string\"]}]},\"grid\":[[{\"settlementPercentage\":0.1,\"refundPercentage\":0.1,\"chargebackPercentage\":0.1}]]}'"
          },
          {
            "lang": "Csharp + Restsharp",
            "source": "var client = new RestClient(\"https://mtapi.dev-newdaytechnology.net/cl/rate-card-service/rate-cards/%7BrateCardId%7D/grid\");\nvar request = new RestRequest(Method.PUT);\nrequest.AddHeader(\"context-tenantId\", \"SOME_STRING_VALUE\");\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddParameter(\"application/json\", \"{\\\"description\\\":\\\"string\\\",\\\"gridSpec\\\":{\\\"rows\\\":[{\\\"spendType\\\":\\\"Purchase\\\",\\\"interestRatePercentage\\\":0.1,\\\"termMonths\\\":0}],\\\"columns\\\":[{\\\"lowerLimitInclusive\\\":0.1,\\\"upperLimitExclusive\\\":0.1,\\\"riskBands\\\":[\\\"string\\\"]}]},\\\"grid\\\":[[{\\\"settlementPercentage\\\":0.1,\\\"refundPercentage\\\":0.1,\\\"chargebackPercentage\\\":0.1}]]}\", ParameterType.RequestBody);\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "Javascript + Xhr",
            "source": "const data = JSON.stringify({\n  \"description\": \"string\",\n  \"gridSpec\": {\n    \"rows\": [\n      {\n        \"spendType\": \"Purchase\",\n        \"interestRatePercentage\": 0.1,\n        \"termMonths\": 0\n      }\n    ],\n    \"columns\": [\n      {\n        \"lowerLimitInclusive\": 0.1,\n        \"upperLimitExclusive\": 0.1,\n        \"riskBands\": [\n          \"string\"\n        ]\n      }\n    ]\n  },\n  \"grid\": [\n    [\n      {\n        \"settlementPercentage\": 0.1,\n        \"refundPercentage\": 0.1,\n        \"chargebackPercentage\": 0.1\n      }\n    ]\n  ]\n});\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"PUT\", \"https://mtapi.dev-newdaytechnology.net/cl/rate-card-service/rate-cards/%7BrateCardId%7D/grid\");\nxhr.setRequestHeader(\"context-tenantId\", \"SOME_STRING_VALUE\");\nxhr.setRequestHeader(\"content-type\", \"application/json\");\n\nxhr.send(data);"
          },
          {
            "lang": "Node + Request",
            "source": "const request = require('request');\n\nconst options = {\n  method: 'PUT',\n  url: 'https://mtapi.dev-newdaytechnology.net/cl/rate-card-service/rate-cards/%7BrateCardId%7D/grid',\n  headers: {'context-tenantId': 'SOME_STRING_VALUE', 'content-type': 'application/json'},\n  body: {\n    description: 'string',\n    gridSpec: {\n      rows: [{spendType: 'Purchase', interestRatePercentage: 0.1, termMonths: 0}],\n      columns: [{lowerLimitInclusive: 0.1, upperLimitExclusive: 0.1, riskBands: ['string']}]\n    },\n    grid: [\n      [{settlementPercentage: 0.1, refundPercentage: 0.1, chargebackPercentage: 0.1}]\n    ]\n  },\n  json: true\n};\n\nrequest(options, function (error, response, body) {\n  if (error) throw new Error(error);\n\n  console.log(body);\n});\n"
          }
        ]
      },
      "get": {
        "tags": [
          "RateCards"
        ],
        "summary": "Gets the details of the rate card, in a grid format.",
        "description": "Gets the details of the rate card, in a grid format.",
        "operationId": "RetrieveRateCardGrid",
        "parameters": [
          {
            "name": "rateCardId",
            "in": "path",
            "description": "Identifier assigned to the Ratecard.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "context-tenantId",
            "in": "header",
            "description": "Identifier assigned to the Tenant.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "The rate card grid details.",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/GetRateCardGridResponse"
                },
                "examples": {
                  "Example GetRateCardGridResponse": {
                    "value": {
                      "description": "Grid rate card",
                      "gridSpec": {
                        "rows": [
                          {
                            "spendType": "Purchase",
                            "interestRatePercentage": null,
                            "termMonths": null
                          }
                        ],
                        "columns": [
                          {
                            "lowerLimitInclusive": 100,
                            "upperLimitExclusive": 1000,
                            "riskBands": [
                              "A",
                              "B",
                              "C"
                            ]
                          }
                        ]
                      },
                      "grid": []
                    }
                  }
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetRateCardGridResponse"
                },
                "examples": {
                  "Example GetRateCardGridResponse": {
                    "value": {
                      "description": "Grid rate card",
                      "gridSpec": {
                        "rows": [
                          {
                            "spendType": "Purchase",
                            "interestRatePercentage": null,
                            "termMonths": null
                          }
                        ],
                        "columns": [
                          {
                            "lowerLimitInclusive": 100,
                            "upperLimitExclusive": 1000,
                            "riskBands": [
                              "A",
                              "B",
                              "C"
                            ]
                          }
                        ]
                      },
                      "grid": []
                    }
                  }
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetRateCardGridResponse"
                },
                "examples": {
                  "Example GetRateCardGridResponse": {
                    "value": {
                      "description": "Grid rate card",
                      "gridSpec": {
                        "rows": [
                          {
                            "spendType": "Purchase",
                            "interestRatePercentage": null,
                            "termMonths": null
                          }
                        ],
                        "columns": [
                          {
                            "lowerLimitInclusive": 100,
                            "upperLimitExclusive": 1000,
                            "riskBands": [
                              "A",
                              "B",
                              "C"
                            ]
                          }
                        ]
                      },
                      "grid": []
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorised."
          },
          "403": {
            "description": "Forbidden."
          },
          "404": {
            "description": "Details of what was not found.",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundProblemDetails"
                },
                "examples": {
                  "Example NotFoundProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:missing",
                      "title": "RateCardNotFound",
                      "status": 404
                    }
                  }
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundProblemDetails"
                },
                "examples": {
                  "Example NotFoundProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:missing",
                      "title": "RateCardNotFound",
                      "status": 404
                    }
                  }
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundProblemDetails"
                },
                "examples": {
                  "Example NotFoundProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:missing",
                      "title": "RateCardNotFound",
                      "status": 404
                    }
                  }
                }
              }
            }
          },
          "429": {
            "description": "The number of requests exceeded the maximum allowed."
          },
          "500": {
            "description": "An internal server error occured."
          },
          "502": {
            "description": "Bad gateway."
          },
          "503": {
            "description": "Service unavailable."
          },
          "504": {
            "description": "Gateway timeout."
          }
        },
        "x-codeSamples": [
          {
            "lang": "Shell + Curl",
            "source": "curl --request GET \\\n  --url https://mtapi.dev-newdaytechnology.net/cl/rate-card-service/rate-cards/%7BrateCardId%7D/grid \\\n  --header 'context-tenantId: SOME_STRING_VALUE'"
          },
          {
            "lang": "Csharp + Restsharp",
            "source": "var client = new RestClient(\"https://mtapi.dev-newdaytechnology.net/cl/rate-card-service/rate-cards/%7BrateCardId%7D/grid\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"context-tenantId\", \"SOME_STRING_VALUE\");\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "Javascript + Xhr",
            "source": "const data = null;\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"GET\", \"https://mtapi.dev-newdaytechnology.net/cl/rate-card-service/rate-cards/%7BrateCardId%7D/grid\");\nxhr.setRequestHeader(\"context-tenantId\", \"SOME_STRING_VALUE\");\n\nxhr.send(data);"
          },
          {
            "lang": "Node + Request",
            "source": "const request = require('request');\n\nconst options = {\n  method: 'GET',\n  url: 'https://mtapi.dev-newdaytechnology.net/cl/rate-card-service/rate-cards/%7BrateCardId%7D/grid',\n  headers: {'context-tenantId': 'SOME_STRING_VALUE'}\n};\n\nrequest(options, function (error, response, body) {\n  if (error) throw new Error(error);\n\n  console.log(body);\n});\n"
          }
        ]
      }
    },
    "/rate-cards/records": {
      "post": {
        "tags": [
          "RateCards"
        ],
        "summary": "Creates a complete rate card, from a list of rate card records.",
        "description": "Creates a complete rate card, from a list of rate card records.",
        "operationId": "CreateRateCardFromRecords",
        "parameters": [
          {
            "name": "idempotency-key",
            "in": "header",
            "description": "Identifier for idempotency",
            "schema": {
              "type": "string"
            },
            "example": "EE735673-05F2-4C56-8A68-60170BDA4524"
          },
          {
            "name": "context-tenantId",
            "in": "header",
            "description": "Identifier assigned to the Tenant.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "description": "Details of the rate card to complete.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateRateCardFromRecordsRequest"
              },
              "examples": {
                "Example CreateRateCardFromRecordsRequest": {
                  "value": {
                    "description": "A rate card description",
                    "records": [
                      {
                        "spendType": "Instalment",
                        "interestRatePercentage": 0,
                        "termMonths": 6,
                        "lowerLimitInclusive": 0,
                        "upperLimitExclusive": 500,
                        "riskBands": [
                          "A",
                          "B",
                          "C"
                        ],
                        "settlementPercentage": 0.1,
                        "refundPercentage": null,
                        "chargebackPercentage": null
                      }
                    ]
                  }
                },
                "RateCard without risk bands": {
                  "value": {
                    "description": "A rate card without risk bands",
                    "records": [
                      {
                        "spendType": "Instalment",
                        "interestRatePercentage": 0,
                        "termMonths": 6,
                        "lowerLimitInclusive": 0,
                        "upperLimitExclusive": 500,
                        "riskBands": null,
                        "settlementPercentage": 0.1,
                        "refundPercentage": null,
                        "chargebackPercentage": null
                      },
                      {
                        "spendType": "Instalment",
                        "interestRatePercentage": 0,
                        "termMonths": 6,
                        "lowerLimitInclusive": 600,
                        "upperLimitExclusive": 1000,
                        "riskBands": null,
                        "settlementPercentage": 0.1,
                        "refundPercentage": null,
                        "chargebackPercentage": null
                      }
                    ]
                  }
                }
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateRateCardFromRecordsRequest"
              },
              "examples": {
                "Example CreateRateCardFromRecordsRequest": {
                  "value": {
                    "description": "A rate card description",
                    "records": [
                      {
                        "spendType": "Instalment",
                        "interestRatePercentage": 0,
                        "termMonths": 6,
                        "lowerLimitInclusive": 0,
                        "upperLimitExclusive": 500,
                        "riskBands": [
                          "A",
                          "B",
                          "C"
                        ],
                        "settlementPercentage": 0.1,
                        "refundPercentage": null,
                        "chargebackPercentage": null
                      }
                    ]
                  }
                },
                "RateCard without risk bands": {
                  "value": {
                    "description": "A rate card without risk bands",
                    "records": [
                      {
                        "spendType": "Instalment",
                        "interestRatePercentage": 0,
                        "termMonths": 6,
                        "lowerLimitInclusive": 0,
                        "upperLimitExclusive": 500,
                        "riskBands": null,
                        "settlementPercentage": 0.1,
                        "refundPercentage": null,
                        "chargebackPercentage": null
                      },
                      {
                        "spendType": "Instalment",
                        "interestRatePercentage": 0,
                        "termMonths": 6,
                        "lowerLimitInclusive": 600,
                        "upperLimitExclusive": 1000,
                        "riskBands": null,
                        "settlementPercentage": 0.1,
                        "refundPercentage": null,
                        "chargebackPercentage": null
                      }
                    ]
                  }
                }
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateRateCardFromRecordsRequest"
              },
              "examples": {
                "Example CreateRateCardFromRecordsRequest": {
                  "value": {
                    "description": "A rate card description",
                    "records": [
                      {
                        "spendType": "Instalment",
                        "interestRatePercentage": 0,
                        "termMonths": 6,
                        "lowerLimitInclusive": 0,
                        "upperLimitExclusive": 500,
                        "riskBands": [
                          "A",
                          "B",
                          "C"
                        ],
                        "settlementPercentage": 0.1,
                        "refundPercentage": null,
                        "chargebackPercentage": null
                      }
                    ]
                  }
                },
                "RateCard without risk bands": {
                  "value": {
                    "description": "A rate card without risk bands",
                    "records": [
                      {
                        "spendType": "Instalment",
                        "interestRatePercentage": 0,
                        "termMonths": 6,
                        "lowerLimitInclusive": 0,
                        "upperLimitExclusive": 500,
                        "riskBands": null,
                        "settlementPercentage": 0.1,
                        "refundPercentage": null,
                        "chargebackPercentage": null
                      },
                      {
                        "spendType": "Instalment",
                        "interestRatePercentage": 0,
                        "termMonths": 6,
                        "lowerLimitInclusive": 600,
                        "upperLimitExclusive": 1000,
                        "riskBands": null,
                        "settlementPercentage": 0.1,
                        "refundPercentage": null,
                        "chargebackPercentage": null
                      }
                    ]
                  }
                }
              }
            }
          }
        },
        "responses": {
          "202": {
            "description": "The rate card creation has been accepted.",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/CreateRateCardResponse"
                },
                "examples": {
                  "Example CreateRateCardResponse": {
                    "value": {
                      "rateCardId": "71b17112-4762-407b-aefb-374dd4fcdb64"
                    }
                  }
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateRateCardResponse"
                },
                "examples": {
                  "Example CreateRateCardResponse": {
                    "value": {
                      "rateCardId": "71b17112-4762-407b-aefb-374dd4fcdb64"
                    }
                  }
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateRateCardResponse"
                },
                "examples": {
                  "Example CreateRateCardResponse": {
                    "value": {
                      "rateCardId": "71b17112-4762-407b-aefb-374dd4fcdb64"
                    }
                  }
                }
              }
            }
          },
          "400": {
            "description": "The request was invalid.",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ValidationProblemDetails"
                },
                "examples": {
                  "Example ValidationProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:validation",
                      "title": "One or more validation errors occurred.",
                      "errors": {
                        "propertyName": [
                          "Error Message"
                        ]
                      }
                    }
                  }
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ValidationProblemDetails"
                },
                "examples": {
                  "Example ValidationProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:validation",
                      "title": "One or more validation errors occurred.",
                      "errors": {
                        "propertyName": [
                          "Error Message"
                        ]
                      }
                    }
                  }
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ValidationProblemDetails"
                },
                "examples": {
                  "Example ValidationProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:validation",
                      "title": "One or more validation errors occurred.",
                      "errors": {
                        "propertyName": [
                          "Error Message"
                        ]
                      }
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorised."
          },
          "403": {
            "description": "Forbidden."
          },
          "404": {
            "description": "Details of what was not found.",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundProblemDetails"
                },
                "examples": {
                  "Example NotFoundProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:missing",
                      "title": "RateCardNotFound",
                      "status": 404
                    }
                  }
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundProblemDetails"
                },
                "examples": {
                  "Example NotFoundProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:missing",
                      "title": "RateCardNotFound",
                      "status": 404
                    }
                  }
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundProblemDetails"
                },
                "examples": {
                  "Example NotFoundProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:missing",
                      "title": "RateCardNotFound",
                      "status": 404
                    }
                  }
                }
              }
            }
          },
          "429": {
            "description": "The number of requests exceeded the maximum allowed."
          },
          "500": {
            "description": "An internal server error occured."
          },
          "502": {
            "description": "Bad gateway."
          },
          "503": {
            "description": "Service unavailable."
          },
          "504": {
            "description": "Gateway timeout."
          }
        },
        "x-codeSamples": [
          {
            "lang": "Shell + Curl",
            "source": "curl --request POST \\\n  --url https://mtapi.dev-newdaytechnology.net/cl/rate-card-service/rate-cards/records \\\n  --header 'content-type: application/json' \\\n  --header 'context-tenantId: SOME_STRING_VALUE' \\\n  --header 'idempotency-key: EE735673-05F2-4C56-8A68-60170BDA4524' \\\n  --data '{\"description\":\"string\",\"records\":[{\"spendType\":\"Purchase\",\"interestRatePercentage\":0.1,\"termMonths\":0,\"lowerLimitInclusive\":0.1,\"upperLimitExclusive\":0.1,\"riskBands\":[\"string\"],\"settlementPercentage\":0.1,\"refundPercentage\":0.1,\"chargebackPercentage\":0.1}]}'"
          },
          {
            "lang": "Csharp + Restsharp",
            "source": "var client = new RestClient(\"https://mtapi.dev-newdaytechnology.net/cl/rate-card-service/rate-cards/records\");\nvar request = new RestRequest(Method.POST);\nrequest.AddHeader(\"idempotency-key\", \"EE735673-05F2-4C56-8A68-60170BDA4524\");\nrequest.AddHeader(\"context-tenantId\", \"SOME_STRING_VALUE\");\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddParameter(\"application/json\", \"{\\\"description\\\":\\\"string\\\",\\\"records\\\":[{\\\"spendType\\\":\\\"Purchase\\\",\\\"interestRatePercentage\\\":0.1,\\\"termMonths\\\":0,\\\"lowerLimitInclusive\\\":0.1,\\\"upperLimitExclusive\\\":0.1,\\\"riskBands\\\":[\\\"string\\\"],\\\"settlementPercentage\\\":0.1,\\\"refundPercentage\\\":0.1,\\\"chargebackPercentage\\\":0.1}]}\", ParameterType.RequestBody);\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "Javascript + Xhr",
            "source": "const data = JSON.stringify({\n  \"description\": \"string\",\n  \"records\": [\n    {\n      \"spendType\": \"Purchase\",\n      \"interestRatePercentage\": 0.1,\n      \"termMonths\": 0,\n      \"lowerLimitInclusive\": 0.1,\n      \"upperLimitExclusive\": 0.1,\n      \"riskBands\": [\n        \"string\"\n      ],\n      \"settlementPercentage\": 0.1,\n      \"refundPercentage\": 0.1,\n      \"chargebackPercentage\": 0.1\n    }\n  ]\n});\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"POST\", \"https://mtapi.dev-newdaytechnology.net/cl/rate-card-service/rate-cards/records\");\nxhr.setRequestHeader(\"idempotency-key\", \"EE735673-05F2-4C56-8A68-60170BDA4524\");\nxhr.setRequestHeader(\"context-tenantId\", \"SOME_STRING_VALUE\");\nxhr.setRequestHeader(\"content-type\", \"application/json\");\n\nxhr.send(data);"
          },
          {
            "lang": "Node + Request",
            "source": "const request = require('request');\n\nconst options = {\n  method: 'POST',\n  url: 'https://mtapi.dev-newdaytechnology.net/cl/rate-card-service/rate-cards/records',\n  headers: {\n    'idempotency-key': 'EE735673-05F2-4C56-8A68-60170BDA4524',\n    'context-tenantId': 'SOME_STRING_VALUE',\n    'content-type': 'application/json'\n  },\n  body: {\n    description: 'string',\n    records: [\n      {\n        spendType: 'Purchase',\n        interestRatePercentage: 0.1,\n        termMonths: 0,\n        lowerLimitInclusive: 0.1,\n        upperLimitExclusive: 0.1,\n        riskBands: ['string'],\n        settlementPercentage: 0.1,\n        refundPercentage: 0.1,\n        chargebackPercentage: 0.1\n      }\n    ]\n  },\n  json: true\n};\n\nrequest(options, function (error, response, body) {\n  if (error) throw new Error(error);\n\n  console.log(body);\n});\n"
          }
        ]
      }
    },
    "/rate-cards/{rateCardId}/records": {
      "put": {
        "tags": [
          "RateCards"
        ],
        "summary": "Updates rate card details, from a list of rate card records.",
        "description": "Updates rate card details, from a list of rate card records.",
        "operationId": "UpdateRateCardFromRecords",
        "parameters": [
          {
            "name": "rateCardId",
            "in": "path",
            "description": "Identifier assigned to the Ratecard.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "context-tenantId",
            "in": "header",
            "description": "Identifier assigned to the Tenant.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "description": "Details to update on the rate card.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateRateCardFromRecordsRequest"
              },
              "examples": {
                "Example CreateRateCardFromRecordsRequest": {
                  "value": {
                    "description": "A rate card description",
                    "records": [
                      {
                        "spendType": "Instalment",
                        "interestRatePercentage": 0,
                        "termMonths": 6,
                        "lowerLimitInclusive": 0,
                        "upperLimitExclusive": 500,
                        "riskBands": [
                          "A",
                          "B",
                          "C"
                        ],
                        "settlementPercentage": 0.1,
                        "refundPercentage": null,
                        "chargebackPercentage": null
                      }
                    ]
                  }
                },
                "RateCard without risk bands": {
                  "value": {
                    "description": "A rate card without risk bands",
                    "records": [
                      {
                        "spendType": "Instalment",
                        "interestRatePercentage": 0,
                        "termMonths": 6,
                        "lowerLimitInclusive": 0,
                        "upperLimitExclusive": 500,
                        "riskBands": null,
                        "settlementPercentage": 0.1,
                        "refundPercentage": null,
                        "chargebackPercentage": null
                      },
                      {
                        "spendType": "Instalment",
                        "interestRatePercentage": 0,
                        "termMonths": 6,
                        "lowerLimitInclusive": 600,
                        "upperLimitExclusive": 1000,
                        "riskBands": null,
                        "settlementPercentage": 0.1,
                        "refundPercentage": null,
                        "chargebackPercentage": null
                      }
                    ]
                  }
                }
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/CreateRateCardFromRecordsRequest"
              },
              "examples": {
                "Example CreateRateCardFromRecordsRequest": {
                  "value": {
                    "description": "A rate card description",
                    "records": [
                      {
                        "spendType": "Instalment",
                        "interestRatePercentage": 0,
                        "termMonths": 6,
                        "lowerLimitInclusive": 0,
                        "upperLimitExclusive": 500,
                        "riskBands": [
                          "A",
                          "B",
                          "C"
                        ],
                        "settlementPercentage": 0.1,
                        "refundPercentage": null,
                        "chargebackPercentage": null
                      }
                    ]
                  }
                },
                "RateCard without risk bands": {
                  "value": {
                    "description": "A rate card without risk bands",
                    "records": [
                      {
                        "spendType": "Instalment",
                        "interestRatePercentage": 0,
                        "termMonths": 6,
                        "lowerLimitInclusive": 0,
                        "upperLimitExclusive": 500,
                        "riskBands": null,
                        "settlementPercentage": 0.1,
                        "refundPercentage": null,
                        "chargebackPercentage": null
                      },
                      {
                        "spendType": "Instalment",
                        "interestRatePercentage": 0,
                        "termMonths": 6,
                        "lowerLimitInclusive": 600,
                        "upperLimitExclusive": 1000,
                        "riskBands": null,
                        "settlementPercentage": 0.1,
                        "refundPercentage": null,
                        "chargebackPercentage": null
                      }
                    ]
                  }
                }
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/CreateRateCardFromRecordsRequest"
              },
              "examples": {
                "Example CreateRateCardFromRecordsRequest": {
                  "value": {
                    "description": "A rate card description",
                    "records": [
                      {
                        "spendType": "Instalment",
                        "interestRatePercentage": 0,
                        "termMonths": 6,
                        "lowerLimitInclusive": 0,
                        "upperLimitExclusive": 500,
                        "riskBands": [
                          "A",
                          "B",
                          "C"
                        ],
                        "settlementPercentage": 0.1,
                        "refundPercentage": null,
                        "chargebackPercentage": null
                      }
                    ]
                  }
                },
                "RateCard without risk bands": {
                  "value": {
                    "description": "A rate card without risk bands",
                    "records": [
                      {
                        "spendType": "Instalment",
                        "interestRatePercentage": 0,
                        "termMonths": 6,
                        "lowerLimitInclusive": 0,
                        "upperLimitExclusive": 500,
                        "riskBands": null,
                        "settlementPercentage": 0.1,
                        "refundPercentage": null,
                        "chargebackPercentage": null
                      },
                      {
                        "spendType": "Instalment",
                        "interestRatePercentage": 0,
                        "termMonths": 6,
                        "lowerLimitInclusive": 600,
                        "upperLimitExclusive": 1000,
                        "riskBands": null,
                        "settlementPercentage": 0.1,
                        "refundPercentage": null,
                        "chargebackPercentage": null
                      }
                    ]
                  }
                }
              }
            }
          }
        },
        "responses": {
          "204": {
            "description": "Updated the rate card."
          },
          "400": {
            "description": "The request was invalid.",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ValidationProblemDetails"
                },
                "examples": {
                  "Example ValidationProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:validation",
                      "title": "One or more validation errors occurred.",
                      "errors": {
                        "propertyName": [
                          "Error Message"
                        ]
                      }
                    }
                  }
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ValidationProblemDetails"
                },
                "examples": {
                  "Example ValidationProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:validation",
                      "title": "One or more validation errors occurred.",
                      "errors": {
                        "propertyName": [
                          "Error Message"
                        ]
                      }
                    }
                  }
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ValidationProblemDetails"
                },
                "examples": {
                  "Example ValidationProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:validation",
                      "title": "One or more validation errors occurred.",
                      "errors": {
                        "propertyName": [
                          "Error Message"
                        ]
                      }
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorised."
          },
          "403": {
            "description": "Forbidden."
          },
          "404": {
            "description": "Details of what was not found.",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundProblemDetails"
                },
                "examples": {
                  "Example NotFoundProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:missing",
                      "title": "RateCardNotFound",
                      "status": 404
                    }
                  }
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundProblemDetails"
                },
                "examples": {
                  "Example NotFoundProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:missing",
                      "title": "RateCardNotFound",
                      "status": 404
                    }
                  }
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundProblemDetails"
                },
                "examples": {
                  "Example NotFoundProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:missing",
                      "title": "RateCardNotFound",
                      "status": 404
                    }
                  }
                }
              }
            }
          },
          "429": {
            "description": "The number of requests exceeded the maximum allowed."
          },
          "500": {
            "description": "An internal server error occured."
          },
          "502": {
            "description": "Bad gateway."
          },
          "503": {
            "description": "Service unavailable."
          },
          "504": {
            "description": "Gateway timeout."
          }
        },
        "x-codeSamples": [
          {
            "lang": "Shell + Curl",
            "source": "curl --request PUT \\\n  --url https://mtapi.dev-newdaytechnology.net/cl/rate-card-service/rate-cards/%7BrateCardId%7D/records \\\n  --header 'content-type: application/json' \\\n  --header 'context-tenantId: SOME_STRING_VALUE' \\\n  --data '{\"description\":\"string\",\"records\":[{\"spendType\":\"Purchase\",\"interestRatePercentage\":0.1,\"termMonths\":0,\"lowerLimitInclusive\":0.1,\"upperLimitExclusive\":0.1,\"riskBands\":[\"string\"],\"settlementPercentage\":0.1,\"refundPercentage\":0.1,\"chargebackPercentage\":0.1}]}'"
          },
          {
            "lang": "Csharp + Restsharp",
            "source": "var client = new RestClient(\"https://mtapi.dev-newdaytechnology.net/cl/rate-card-service/rate-cards/%7BrateCardId%7D/records\");\nvar request = new RestRequest(Method.PUT);\nrequest.AddHeader(\"context-tenantId\", \"SOME_STRING_VALUE\");\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddParameter(\"application/json\", \"{\\\"description\\\":\\\"string\\\",\\\"records\\\":[{\\\"spendType\\\":\\\"Purchase\\\",\\\"interestRatePercentage\\\":0.1,\\\"termMonths\\\":0,\\\"lowerLimitInclusive\\\":0.1,\\\"upperLimitExclusive\\\":0.1,\\\"riskBands\\\":[\\\"string\\\"],\\\"settlementPercentage\\\":0.1,\\\"refundPercentage\\\":0.1,\\\"chargebackPercentage\\\":0.1}]}\", ParameterType.RequestBody);\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "Javascript + Xhr",
            "source": "const data = JSON.stringify({\n  \"description\": \"string\",\n  \"records\": [\n    {\n      \"spendType\": \"Purchase\",\n      \"interestRatePercentage\": 0.1,\n      \"termMonths\": 0,\n      \"lowerLimitInclusive\": 0.1,\n      \"upperLimitExclusive\": 0.1,\n      \"riskBands\": [\n        \"string\"\n      ],\n      \"settlementPercentage\": 0.1,\n      \"refundPercentage\": 0.1,\n      \"chargebackPercentage\": 0.1\n    }\n  ]\n});\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"PUT\", \"https://mtapi.dev-newdaytechnology.net/cl/rate-card-service/rate-cards/%7BrateCardId%7D/records\");\nxhr.setRequestHeader(\"context-tenantId\", \"SOME_STRING_VALUE\");\nxhr.setRequestHeader(\"content-type\", \"application/json\");\n\nxhr.send(data);"
          },
          {
            "lang": "Node + Request",
            "source": "const request = require('request');\n\nconst options = {\n  method: 'PUT',\n  url: 'https://mtapi.dev-newdaytechnology.net/cl/rate-card-service/rate-cards/%7BrateCardId%7D/records',\n  headers: {'context-tenantId': 'SOME_STRING_VALUE', 'content-type': 'application/json'},\n  body: {\n    description: 'string',\n    records: [\n      {\n        spendType: 'Purchase',\n        interestRatePercentage: 0.1,\n        termMonths: 0,\n        lowerLimitInclusive: 0.1,\n        upperLimitExclusive: 0.1,\n        riskBands: ['string'],\n        settlementPercentage: 0.1,\n        refundPercentage: 0.1,\n        chargebackPercentage: 0.1\n      }\n    ]\n  },\n  json: true\n};\n\nrequest(options, function (error, response, body) {\n  if (error) throw new Error(error);\n\n  console.log(body);\n});\n"
          }
        ]
      }
    },
    "/rate-cards/{rateCardId}/activate": {
      "put": {
        "tags": [
          "RateCards"
        ],
        "summary": "Activates a rate card.",
        "description": "Activates a rate card.",
        "operationId": "ActivateRateCard",
        "parameters": [
          {
            "name": "rateCardId",
            "in": "path",
            "description": "Identifier assigned to the Ratecard.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "context-tenantId",
            "in": "header",
            "description": "Identifier assigned to the Tenant.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Rate card has been activated."
          },
          "401": {
            "description": "Unauthorised."
          },
          "403": {
            "description": "Forbidden."
          },
          "404": {
            "description": "Details of what was not found.",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundProblemDetails"
                },
                "examples": {
                  "Example NotFoundProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:missing",
                      "title": "RateCardNotFound",
                      "status": 404
                    }
                  }
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundProblemDetails"
                },
                "examples": {
                  "Example NotFoundProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:missing",
                      "title": "RateCardNotFound",
                      "status": 404
                    }
                  }
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundProblemDetails"
                },
                "examples": {
                  "Example NotFoundProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:missing",
                      "title": "RateCardNotFound",
                      "status": 404
                    }
                  }
                }
              }
            }
          },
          "429": {
            "description": "The number of requests exceeded the maximum allowed."
          },
          "500": {
            "description": "An internal server error occured."
          },
          "502": {
            "description": "Bad gateway."
          },
          "503": {
            "description": "Service unavailable."
          },
          "504": {
            "description": "Gateway timeout."
          }
        },
        "x-codeSamples": [
          {
            "lang": "Shell + Curl",
            "source": "curl --request PUT \\\n  --url https://mtapi.dev-newdaytechnology.net/cl/rate-card-service/rate-cards/%7BrateCardId%7D/activate \\\n  --header 'context-tenantId: SOME_STRING_VALUE'"
          },
          {
            "lang": "Csharp + Restsharp",
            "source": "var client = new RestClient(\"https://mtapi.dev-newdaytechnology.net/cl/rate-card-service/rate-cards/%7BrateCardId%7D/activate\");\nvar request = new RestRequest(Method.PUT);\nrequest.AddHeader(\"context-tenantId\", \"SOME_STRING_VALUE\");\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "Javascript + Xhr",
            "source": "const data = null;\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"PUT\", \"https://mtapi.dev-newdaytechnology.net/cl/rate-card-service/rate-cards/%7BrateCardId%7D/activate\");\nxhr.setRequestHeader(\"context-tenantId\", \"SOME_STRING_VALUE\");\n\nxhr.send(data);"
          },
          {
            "lang": "Node + Request",
            "source": "const request = require('request');\n\nconst options = {\n  method: 'PUT',\n  url: 'https://mtapi.dev-newdaytechnology.net/cl/rate-card-service/rate-cards/%7BrateCardId%7D/activate',\n  headers: {'context-tenantId': 'SOME_STRING_VALUE'}\n};\n\nrequest(options, function (error, response, body) {\n  if (error) throw new Error(error);\n\n  console.log(body);\n});\n"
          }
        ]
      }
    },
    "/rate-cards/{rateCardId}/expire": {
      "put": {
        "tags": [
          "RateCards"
        ],
        "summary": "Expires a rate card.",
        "description": "Expires a rate card.",
        "operationId": "ExpireRateCard",
        "parameters": [
          {
            "name": "rateCardId",
            "in": "path",
            "description": "Identifier assigned to the Ratecard.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "idempotency-key",
            "in": "header",
            "description": "Identifier for idempotency",
            "schema": {
              "type": "string"
            },
            "example": "EE735673-05F2-4C56-8A68-60170BDA4524"
          },
          {
            "name": "context-tenantId",
            "in": "header",
            "description": "Identifier assigned to the Tenant.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Rate card has been expired."
          },
          "400": {
            "description": "Bad Request",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ValidationProblemDetails"
                },
                "examples": {
                  "Example ValidationProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:validation",
                      "title": "One or more validation errors occurred.",
                      "errors": {
                        "propertyName": [
                          "Error Message"
                        ]
                      }
                    }
                  }
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ValidationProblemDetails"
                },
                "examples": {
                  "Example ValidationProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:validation",
                      "title": "One or more validation errors occurred.",
                      "errors": {
                        "propertyName": [
                          "Error Message"
                        ]
                      }
                    }
                  }
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ValidationProblemDetails"
                },
                "examples": {
                  "Example ValidationProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:validation",
                      "title": "One or more validation errors occurred.",
                      "errors": {
                        "propertyName": [
                          "Error Message"
                        ]
                      }
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorised."
          },
          "403": {
            "description": "Forbidden."
          },
          "404": {
            "description": "Details of what was not found.",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundProblemDetails"
                },
                "examples": {
                  "Example NotFoundProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:missing",
                      "title": "RateCardNotFound",
                      "status": 404
                    }
                  }
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundProblemDetails"
                },
                "examples": {
                  "Example NotFoundProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:missing",
                      "title": "RateCardNotFound",
                      "status": 404
                    }
                  }
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundProblemDetails"
                },
                "examples": {
                  "Example NotFoundProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:missing",
                      "title": "RateCardNotFound",
                      "status": 404
                    }
                  }
                }
              }
            }
          },
          "429": {
            "description": "The number of requests exceeded the maximum allowed."
          },
          "500": {
            "description": "An internal server error occured."
          },
          "502": {
            "description": "Bad gateway."
          },
          "503": {
            "description": "Service unavailable."
          },
          "504": {
            "description": "Gateway timeout."
          }
        },
        "x-codeSamples": [
          {
            "lang": "Shell + Curl",
            "source": "curl --request PUT \\\n  --url https://mtapi.dev-newdaytechnology.net/cl/rate-card-service/rate-cards/%7BrateCardId%7D/expire \\\n  --header 'context-tenantId: SOME_STRING_VALUE' \\\n  --header 'idempotency-key: EE735673-05F2-4C56-8A68-60170BDA4524'"
          },
          {
            "lang": "Csharp + Restsharp",
            "source": "var client = new RestClient(\"https://mtapi.dev-newdaytechnology.net/cl/rate-card-service/rate-cards/%7BrateCardId%7D/expire\");\nvar request = new RestRequest(Method.PUT);\nrequest.AddHeader(\"idempotency-key\", \"EE735673-05F2-4C56-8A68-60170BDA4524\");\nrequest.AddHeader(\"context-tenantId\", \"SOME_STRING_VALUE\");\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "Javascript + Xhr",
            "source": "const data = null;\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"PUT\", \"https://mtapi.dev-newdaytechnology.net/cl/rate-card-service/rate-cards/%7BrateCardId%7D/expire\");\nxhr.setRequestHeader(\"idempotency-key\", \"EE735673-05F2-4C56-8A68-60170BDA4524\");\nxhr.setRequestHeader(\"context-tenantId\", \"SOME_STRING_VALUE\");\n\nxhr.send(data);"
          },
          {
            "lang": "Node + Request",
            "source": "const request = require('request');\n\nconst options = {\n  method: 'PUT',\n  url: 'https://mtapi.dev-newdaytechnology.net/cl/rate-card-service/rate-cards/%7BrateCardId%7D/expire',\n  headers: {\n    'idempotency-key': 'EE735673-05F2-4C56-8A68-60170BDA4524',\n    'context-tenantId': 'SOME_STRING_VALUE'\n  }\n};\n\nrequest(options, function (error, response, body) {\n  if (error) throw new Error(error);\n\n  console.log(body);\n});\n"
          }
        ]
      }
    },
    "/rate-cards/{rateCardId}": {
      "get": {
        "tags": [
          "RateCards"
        ],
        "summary": "Retrieves a rate card.",
        "description": "Retrieves a rate card.",
        "operationId": "RetrieveRateCard",
        "parameters": [
          {
            "name": "rateCardId",
            "in": "path",
            "description": "Identifier assigned to the Ratecard.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "context-tenantId",
            "in": "header",
            "description": "Identifier assigned to the Tenant.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Details of the rate card found.",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/GetRateCardResponse"
                },
                "examples": {
                  "Active Rate Card": {
                    "summary": "A rate card which has been activated",
                    "value": {
                      "rateCardId": "71b17112-4762-407b-aefb-374dd4fcdb64",
                      "description": "Some active rate card",
                      "status": "Active",
                      "processingComplete": true,
                      "items": [
                        {
                          "spendType": "Instalment",
                          "interestRatePercentage": null,
                          "termMonths": null,
                          "lowerLimitInclusive": 0.01,
                          "upperLimitExclusive": 0.99,
                          "riskBands": [
                            "A",
                            "B",
                            "C"
                          ],
                          "settlementPercentage": null,
                          "refundPercentage": null,
                          "chargebackPercentage": null
                        }
                      ]
                    }
                  }
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetRateCardResponse"
                },
                "examples": {
                  "Active Rate Card": {
                    "summary": "A rate card which has been activated",
                    "value": {
                      "rateCardId": "71b17112-4762-407b-aefb-374dd4fcdb64",
                      "description": "Some active rate card",
                      "status": "Active",
                      "processingComplete": true,
                      "items": [
                        {
                          "spendType": "Instalment",
                          "interestRatePercentage": null,
                          "termMonths": null,
                          "lowerLimitInclusive": 0.01,
                          "upperLimitExclusive": 0.99,
                          "riskBands": [
                            "A",
                            "B",
                            "C"
                          ],
                          "settlementPercentage": null,
                          "refundPercentage": null,
                          "chargebackPercentage": null
                        }
                      ]
                    }
                  }
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetRateCardResponse"
                },
                "examples": {
                  "Active Rate Card": {
                    "summary": "A rate card which has been activated",
                    "value": {
                      "rateCardId": "71b17112-4762-407b-aefb-374dd4fcdb64",
                      "description": "Some active rate card",
                      "status": "Active",
                      "processingComplete": true,
                      "items": [
                        {
                          "spendType": "Instalment",
                          "interestRatePercentage": null,
                          "termMonths": null,
                          "lowerLimitInclusive": 0.01,
                          "upperLimitExclusive": 0.99,
                          "riskBands": [
                            "A",
                            "B",
                            "C"
                          ],
                          "settlementPercentage": null,
                          "refundPercentage": null,
                          "chargebackPercentage": null
                        }
                      ]
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorised."
          },
          "403": {
            "description": "Forbidden."
          },
          "404": {
            "description": "Details of what was not found.",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundProblemDetails"
                },
                "examples": {
                  "Example NotFoundProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:missing",
                      "title": "RateCardNotFound",
                      "status": 404
                    }
                  }
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundProblemDetails"
                },
                "examples": {
                  "Example NotFoundProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:missing",
                      "title": "RateCardNotFound",
                      "status": 404
                    }
                  }
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundProblemDetails"
                },
                "examples": {
                  "Example NotFoundProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:missing",
                      "title": "RateCardNotFound",
                      "status": 404
                    }
                  }
                }
              }
            }
          },
          "429": {
            "description": "The number of requests exceeded the maximum allowed."
          },
          "500": {
            "description": "An internal server error occured."
          },
          "502": {
            "description": "Bad gateway."
          },
          "503": {
            "description": "Service unavailable."
          },
          "504": {
            "description": "Gateway timeout."
          }
        },
        "x-codeSamples": [
          {
            "lang": "Shell + Curl",
            "source": "curl --request GET \\\n  --url https://mtapi.dev-newdaytechnology.net/cl/rate-card-service/rate-cards/%7BrateCardId%7D \\\n  --header 'context-tenantId: SOME_STRING_VALUE'"
          },
          {
            "lang": "Csharp + Restsharp",
            "source": "var client = new RestClient(\"https://mtapi.dev-newdaytechnology.net/cl/rate-card-service/rate-cards/%7BrateCardId%7D\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"context-tenantId\", \"SOME_STRING_VALUE\");\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "Javascript + Xhr",
            "source": "const data = null;\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"GET\", \"https://mtapi.dev-newdaytechnology.net/cl/rate-card-service/rate-cards/%7BrateCardId%7D\");\nxhr.setRequestHeader(\"context-tenantId\", \"SOME_STRING_VALUE\");\n\nxhr.send(data);"
          },
          {
            "lang": "Node + Request",
            "source": "const request = require('request');\n\nconst options = {\n  method: 'GET',\n  url: 'https://mtapi.dev-newdaytechnology.net/cl/rate-card-service/rate-cards/%7BrateCardId%7D',\n  headers: {'context-tenantId': 'SOME_STRING_VALUE'}\n};\n\nrequest(options, function (error, response, body) {\n  if (error) throw new Error(error);\n\n  console.log(body);\n});\n"
          }
        ]
      }
    },
    "/rate-cards": {
      "get": {
        "tags": [
          "RateCards"
        ],
        "summary": "Retrieves all rate cards.",
        "description": "Retrieves all rate cards.",
        "operationId": "RetrieveAllRateCards",
        "parameters": [
          {
            "name": "context-tenantId",
            "in": "header",
            "description": "Identifier assigned to the Tenant.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "A list of all rate cards.",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/GetRateCardsResponse"
                },
                "examples": {
                  "Example GetRateCardsResponse": {
                    "value": {
                      "rateCards": [
                        {
                          "rateCardId": "71b17112-4762-407b-aefb-374dd4fcdb64",
                          "description": "Rate Card Description",
                          "status": "Active"
                        }
                      ]
                    }
                  }
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetRateCardsResponse"
                },
                "examples": {
                  "Example GetRateCardsResponse": {
                    "value": {
                      "rateCards": [
                        {
                          "rateCardId": "71b17112-4762-407b-aefb-374dd4fcdb64",
                          "description": "Rate Card Description",
                          "status": "Active"
                        }
                      ]
                    }
                  }
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetRateCardsResponse"
                },
                "examples": {
                  "Example GetRateCardsResponse": {
                    "value": {
                      "rateCards": [
                        {
                          "rateCardId": "71b17112-4762-407b-aefb-374dd4fcdb64",
                          "description": "Rate Card Description",
                          "status": "Active"
                        }
                      ]
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorised."
          },
          "403": {
            "description": "Forbidden."
          },
          "429": {
            "description": "The number of requests exceeded the maximum allowed."
          },
          "500": {
            "description": "An internal server error occured."
          },
          "502": {
            "description": "Bad gateway."
          },
          "503": {
            "description": "Service unavailable."
          },
          "504": {
            "description": "Gateway timeout."
          }
        },
        "x-codeSamples": [
          {
            "lang": "Shell + Curl",
            "source": "curl --request GET \\\n  --url https://mtapi.dev-newdaytechnology.net/cl/rate-card-service/rate-cards \\\n  --header 'context-tenantId: SOME_STRING_VALUE'"
          },
          {
            "lang": "Csharp + Restsharp",
            "source": "var client = new RestClient(\"https://mtapi.dev-newdaytechnology.net/cl/rate-card-service/rate-cards\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"context-tenantId\", \"SOME_STRING_VALUE\");\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "Javascript + Xhr",
            "source": "const data = null;\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"GET\", \"https://mtapi.dev-newdaytechnology.net/cl/rate-card-service/rate-cards\");\nxhr.setRequestHeader(\"context-tenantId\", \"SOME_STRING_VALUE\");\n\nxhr.send(data);"
          },
          {
            "lang": "Node + Request",
            "source": "const request = require('request');\n\nconst options = {\n  method: 'GET',\n  url: 'https://mtapi.dev-newdaytechnology.net/cl/rate-card-service/rate-cards',\n  headers: {'context-tenantId': 'SOME_STRING_VALUE'}\n};\n\nrequest(options, function (error, response, body) {\n  if (error) throw new Error(error);\n\n  console.log(body);\n});\n"
          }
        ]
      }
    },
    "/rate-cards/{rateCardId}/transaction-details": {
      "post": {
        "tags": [
          "TransactionDetails"
        ],
        "summary": "Creates transaction details on a rate card.",
        "operationId": "CreateRateCardTransactionDetails",
        "parameters": [
          {
            "name": "rateCardId",
            "in": "path",
            "description": "Identifier assigned to the Ratecard.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "idempotency-key",
            "in": "header",
            "description": "Identifier for idempotency",
            "schema": {
              "type": "string"
            },
            "example": "EE735673-05F2-4C56-8A68-60170BDA4524"
          },
          {
            "name": "context-tenantId",
            "in": "header",
            "description": "Identifier assigned to the Tenant.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "description": "Transaction details to create for the rate card.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/TransactionDetailsRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/TransactionDetailsRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/TransactionDetailsRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Details of the transaction created.",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/CreateTransactionDetailsResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateTransactionDetailsResponse"
                },
                "example": {
                  "transactionDetailsId": "599028ab-71f6-4fc4-9e8d-be0805bbed09"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateTransactionDetailsResponse"
                }
              }
            }
          },
          "400": {
            "description": "The request was invalid.",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ValidationProblemDetails"
                },
                "examples": {
                  "Example ValidationProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:validation",
                      "title": "One or more validation errors occurred.",
                      "errors": {
                        "propertyName": [
                          "Error Message"
                        ]
                      }
                    }
                  }
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ValidationProblemDetails"
                },
                "examples": {
                  "Example ValidationProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:validation",
                      "title": "One or more validation errors occurred.",
                      "errors": {
                        "propertyName": [
                          "Error Message"
                        ]
                      }
                    }
                  }
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ValidationProblemDetails"
                },
                "examples": {
                  "Example ValidationProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:validation",
                      "title": "One or more validation errors occurred.",
                      "errors": {
                        "propertyName": [
                          "Error Message"
                        ]
                      }
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorised."
          },
          "403": {
            "description": "Forbidden."
          },
          "404": {
            "description": "Details of what was not found.",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundProblemDetails"
                },
                "examples": {
                  "Example NotFoundProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:missing",
                      "title": "RateCardNotFound",
                      "status": 404
                    }
                  }
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundProblemDetails"
                },
                "examples": {
                  "Example NotFoundProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:missing",
                      "title": "RateCardNotFound",
                      "status": 404
                    }
                  }
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundProblemDetails"
                },
                "examples": {
                  "Example NotFoundProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:missing",
                      "title": "RateCardNotFound",
                      "status": 404
                    }
                  }
                }
              }
            }
          },
          "422": {
            "description": "Details of what caused an unprocessable entity.",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/UnprocessableEntityProblemDetails"
                },
                "examples": {
                  "Example UnprocessableEntityProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:unprocessable",
                      "title": "Unprocessable Entity",
                      "status": 422
                    }
                  }
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UnprocessableEntityProblemDetails"
                },
                "examples": {
                  "Example UnprocessableEntityProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:unprocessable",
                      "title": "Unprocessable Entity",
                      "status": 422
                    }
                  }
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/UnprocessableEntityProblemDetails"
                },
                "examples": {
                  "Example UnprocessableEntityProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:unprocessable",
                      "title": "Unprocessable Entity",
                      "status": 422
                    }
                  }
                }
              }
            }
          },
          "429": {
            "description": "The number of requests exceeded the maximum allowed."
          },
          "500": {
            "description": "An internal server error occured."
          },
          "502": {
            "description": "Bad gateway."
          },
          "503": {
            "description": "Service unavailable."
          },
          "504": {
            "description": "Gateway timeout."
          }
        },
        "x-codeSamples": [
          {
            "lang": "Shell + Curl",
            "source": "curl --request POST \\\n  --url https://mtapi.dev-newdaytechnology.net/cl/rate-card-service/rate-cards/%7BrateCardId%7D/transaction-details \\\n  --header 'content-type: application/json' \\\n  --header 'context-tenantId: SOME_STRING_VALUE' \\\n  --header 'idempotency-key: EE735673-05F2-4C56-8A68-60170BDA4524' \\\n  --data '{\"lowerLimitInclusive\":0.1,\"upperLimitExclusive\":0.1,\"riskBands\":[\"string\"]}'"
          },
          {
            "lang": "Csharp + Restsharp",
            "source": "var client = new RestClient(\"https://mtapi.dev-newdaytechnology.net/cl/rate-card-service/rate-cards/%7BrateCardId%7D/transaction-details\");\nvar request = new RestRequest(Method.POST);\nrequest.AddHeader(\"idempotency-key\", \"EE735673-05F2-4C56-8A68-60170BDA4524\");\nrequest.AddHeader(\"context-tenantId\", \"SOME_STRING_VALUE\");\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddParameter(\"application/json\", \"{\\\"lowerLimitInclusive\\\":0.1,\\\"upperLimitExclusive\\\":0.1,\\\"riskBands\\\":[\\\"string\\\"]}\", ParameterType.RequestBody);\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "Javascript + Xhr",
            "source": "const data = JSON.stringify({\n  \"lowerLimitInclusive\": 0.1,\n  \"upperLimitExclusive\": 0.1,\n  \"riskBands\": [\n    \"string\"\n  ]\n});\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"POST\", \"https://mtapi.dev-newdaytechnology.net/cl/rate-card-service/rate-cards/%7BrateCardId%7D/transaction-details\");\nxhr.setRequestHeader(\"idempotency-key\", \"EE735673-05F2-4C56-8A68-60170BDA4524\");\nxhr.setRequestHeader(\"context-tenantId\", \"SOME_STRING_VALUE\");\nxhr.setRequestHeader(\"content-type\", \"application/json\");\n\nxhr.send(data);"
          },
          {
            "lang": "Node + Request",
            "source": "const request = require('request');\n\nconst options = {\n  method: 'POST',\n  url: 'https://mtapi.dev-newdaytechnology.net/cl/rate-card-service/rate-cards/%7BrateCardId%7D/transaction-details',\n  headers: {\n    'idempotency-key': 'EE735673-05F2-4C56-8A68-60170BDA4524',\n    'context-tenantId': 'SOME_STRING_VALUE',\n    'content-type': 'application/json'\n  },\n  body: {lowerLimitInclusive: 0.1, upperLimitExclusive: 0.1, riskBands: ['string']},\n  json: true\n};\n\nrequest(options, function (error, response, body) {\n  if (error) throw new Error(error);\n\n  console.log(body);\n});\n"
          }
        ]
      },
      "get": {
        "tags": [
          "TransactionDetails"
        ],
        "summary": "Gets all transaction details for a rate card.",
        "operationId": "GetRateCardAllTransactionDetails",
        "parameters": [
          {
            "name": "rateCardId",
            "in": "path",
            "description": "Identifier assigned to the Ratecard.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "context-tenantId",
            "in": "header",
            "description": "Identifier assigned to the Tenant.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "A list of transaction details for the rate card.",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/GetTransactionDetailsListResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetTransactionDetailsListResponse"
                },
                "example": {
                  "items": [
                    {
                      "transactionDetailsId": "599028ab-71f6-4fc4-9e8d-be0805bbed09",
                      "lowerLimitInclusive": 0.1,
                      "upperLimitExclusive": 0.1,
                      "riskBands": [
                        "string"
                      ]
                    }
                  ]
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetTransactionDetailsListResponse"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorised."
          },
          "403": {
            "description": "Forbidden."
          },
          "404": {
            "description": "Details of what was not found.",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundProblemDetails"
                },
                "examples": {
                  "Example NotFoundProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:missing",
                      "title": "RateCardNotFound",
                      "status": 404
                    }
                  }
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundProblemDetails"
                },
                "examples": {
                  "Example NotFoundProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:missing",
                      "title": "RateCardNotFound",
                      "status": 404
                    }
                  }
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundProblemDetails"
                },
                "examples": {
                  "Example NotFoundProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:missing",
                      "title": "RateCardNotFound",
                      "status": 404
                    }
                  }
                }
              }
            }
          },
          "429": {
            "description": "The number of requests exceeded the maximum allowed."
          },
          "500": {
            "description": "An internal server error occured."
          },
          "502": {
            "description": "Bad gateway."
          },
          "503": {
            "description": "Service unavailable."
          },
          "504": {
            "description": "Gateway timeout."
          }
        },
        "x-codeSamples": [
          {
            "lang": "Shell + Curl",
            "source": "curl --request GET \\\n  --url https://mtapi.dev-newdaytechnology.net/cl/rate-card-service/rate-cards/%7BrateCardId%7D/transaction-details \\\n  --header 'context-tenantId: SOME_STRING_VALUE'"
          },
          {
            "lang": "Csharp + Restsharp",
            "source": "var client = new RestClient(\"https://mtapi.dev-newdaytechnology.net/cl/rate-card-service/rate-cards/%7BrateCardId%7D/transaction-details\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"context-tenantId\", \"SOME_STRING_VALUE\");\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "Javascript + Xhr",
            "source": "const data = null;\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"GET\", \"https://mtapi.dev-newdaytechnology.net/cl/rate-card-service/rate-cards/%7BrateCardId%7D/transaction-details\");\nxhr.setRequestHeader(\"context-tenantId\", \"SOME_STRING_VALUE\");\n\nxhr.send(data);"
          },
          {
            "lang": "Node + Request",
            "source": "const request = require('request');\n\nconst options = {\n  method: 'GET',\n  url: 'https://mtapi.dev-newdaytechnology.net/cl/rate-card-service/rate-cards/%7BrateCardId%7D/transaction-details',\n  headers: {'context-tenantId': 'SOME_STRING_VALUE'}\n};\n\nrequest(options, function (error, response, body) {\n  if (error) throw new Error(error);\n\n  console.log(body);\n});\n"
          }
        ]
      }
    },
    "/rate-cards/{rateCardId}/transaction-details/{transactionDetailsId}": {
      "put": {
        "tags": [
          "TransactionDetails"
        ],
        "summary": "Updates transaction details on a rate card.",
        "operationId": "UpdateRateCardTransactionDetails",
        "parameters": [
          {
            "name": "rateCardId",
            "in": "path",
            "description": "Identifier assigned to the Ratecard.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "transactionDetailsId",
            "in": "path",
            "description": "Identifier assigned to the transaciton details.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "context-tenantId",
            "in": "header",
            "description": "Identifier assigned to the Tenant.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "requestBody": {
          "description": "Transaction details to update on the rate card.",
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/TransactionDetailsRequest"
              }
            },
            "text/json": {
              "schema": {
                "$ref": "#/components/schemas/TransactionDetailsRequest"
              }
            },
            "application/*+json": {
              "schema": {
                "$ref": "#/components/schemas/TransactionDetailsRequest"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Transaction details created.",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/CreateTransactionDetailsResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateTransactionDetailsResponse"
                },
                "example": {
                  "transactionDetailsId": "599028ab-71f6-4fc4-9e8d-be0805bbed09"
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/CreateTransactionDetailsResponse"
                }
              }
            }
          },
          "400": {
            "description": "The request was invalid.",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/ValidationProblemDetails"
                },
                "examples": {
                  "Example ValidationProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:validation",
                      "title": "One or more validation errors occurred.",
                      "errors": {
                        "propertyName": [
                          "Error Message"
                        ]
                      }
                    }
                  }
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/ValidationProblemDetails"
                },
                "examples": {
                  "Example ValidationProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:validation",
                      "title": "One or more validation errors occurred.",
                      "errors": {
                        "propertyName": [
                          "Error Message"
                        ]
                      }
                    }
                  }
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/ValidationProblemDetails"
                },
                "examples": {
                  "Example ValidationProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:validation",
                      "title": "One or more validation errors occurred.",
                      "errors": {
                        "propertyName": [
                          "Error Message"
                        ]
                      }
                    }
                  }
                }
              }
            }
          },
          "401": {
            "description": "Unauthorised."
          },
          "403": {
            "description": "Forbidden."
          },
          "404": {
            "description": "Details of what was not found.",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundProblemDetails"
                },
                "examples": {
                  "Example NotFoundProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:missing",
                      "title": "RateCardNotFound",
                      "status": 404
                    }
                  }
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundProblemDetails"
                },
                "examples": {
                  "Example NotFoundProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:missing",
                      "title": "RateCardNotFound",
                      "status": 404
                    }
                  }
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundProblemDetails"
                },
                "examples": {
                  "Example NotFoundProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:missing",
                      "title": "RateCardNotFound",
                      "status": 404
                    }
                  }
                }
              }
            }
          },
          "422": {
            "description": "Details of what caused an unprocessable entity.",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/UnprocessableEntityProblemDetails"
                },
                "examples": {
                  "Example UnprocessableEntityProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:unprocessable",
                      "title": "Unprocessable Entity",
                      "status": 422
                    }
                  }
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/UnprocessableEntityProblemDetails"
                },
                "examples": {
                  "Example UnprocessableEntityProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:unprocessable",
                      "title": "Unprocessable Entity",
                      "status": 422
                    }
                  }
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/UnprocessableEntityProblemDetails"
                },
                "examples": {
                  "Example UnprocessableEntityProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:unprocessable",
                      "title": "Unprocessable Entity",
                      "status": 422
                    }
                  }
                }
              }
            }
          },
          "429": {
            "description": "The number of requests exceeded the maximum allowed."
          },
          "500": {
            "description": "An internal server error occured."
          },
          "502": {
            "description": "Bad gateway."
          },
          "503": {
            "description": "Service unavailable."
          },
          "504": {
            "description": "Gateway timeout."
          }
        },
        "x-codeSamples": [
          {
            "lang": "Shell + Curl",
            "source": "curl --request PUT \\\n  --url https://mtapi.dev-newdaytechnology.net/cl/rate-card-service/rate-cards/%7BrateCardId%7D/transaction-details/%7BtransactionDetailsId%7D \\\n  --header 'content-type: application/json' \\\n  --header 'context-tenantId: SOME_STRING_VALUE' \\\n  --data '{\"lowerLimitInclusive\":0.1,\"upperLimitExclusive\":0.1,\"riskBands\":[\"string\"]}'"
          },
          {
            "lang": "Csharp + Restsharp",
            "source": "var client = new RestClient(\"https://mtapi.dev-newdaytechnology.net/cl/rate-card-service/rate-cards/%7BrateCardId%7D/transaction-details/%7BtransactionDetailsId%7D\");\nvar request = new RestRequest(Method.PUT);\nrequest.AddHeader(\"context-tenantId\", \"SOME_STRING_VALUE\");\nrequest.AddHeader(\"content-type\", \"application/json\");\nrequest.AddParameter(\"application/json\", \"{\\\"lowerLimitInclusive\\\":0.1,\\\"upperLimitExclusive\\\":0.1,\\\"riskBands\\\":[\\\"string\\\"]}\", ParameterType.RequestBody);\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "Javascript + Xhr",
            "source": "const data = JSON.stringify({\n  \"lowerLimitInclusive\": 0.1,\n  \"upperLimitExclusive\": 0.1,\n  \"riskBands\": [\n    \"string\"\n  ]\n});\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"PUT\", \"https://mtapi.dev-newdaytechnology.net/cl/rate-card-service/rate-cards/%7BrateCardId%7D/transaction-details/%7BtransactionDetailsId%7D\");\nxhr.setRequestHeader(\"context-tenantId\", \"SOME_STRING_VALUE\");\nxhr.setRequestHeader(\"content-type\", \"application/json\");\n\nxhr.send(data);"
          },
          {
            "lang": "Node + Request",
            "source": "const request = require('request');\n\nconst options = {\n  method: 'PUT',\n  url: 'https://mtapi.dev-newdaytechnology.net/cl/rate-card-service/rate-cards/%7BrateCardId%7D/transaction-details/%7BtransactionDetailsId%7D',\n  headers: {'context-tenantId': 'SOME_STRING_VALUE', 'content-type': 'application/json'},\n  body: {lowerLimitInclusive: 0.1, upperLimitExclusive: 0.1, riskBands: ['string']},\n  json: true\n};\n\nrequest(options, function (error, response, body) {\n  if (error) throw new Error(error);\n\n  console.log(body);\n});\n"
          }
        ]
      },
      "delete": {
        "tags": [
          "TransactionDetails"
        ],
        "summary": "Deletes transaction details from a rate card.",
        "operationId": "DeleteRateCardTransactionDetail",
        "parameters": [
          {
            "name": "rateCardId",
            "in": "path",
            "description": "Identifier assigned to the Ratecard.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "transactionDetailsId",
            "in": "path",
            "description": "Identifier assigned to the transaciton details.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "idempotency-key",
            "in": "header",
            "description": "Identifier for idempotency",
            "schema": {
              "type": "string"
            },
            "example": "EE735673-05F2-4C56-8A68-60170BDA4524"
          },
          {
            "name": "context-tenantId",
            "in": "header",
            "description": "Identifier assigned to the Tenant.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "204": {
            "description": "Transaciton details were removed from the rate card."
          },
          "401": {
            "description": "Unauthorised."
          },
          "403": {
            "description": "Forbidden."
          },
          "404": {
            "description": "Details of what was not found.",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundProblemDetails"
                },
                "examples": {
                  "Example NotFoundProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:missing",
                      "title": "RateCardNotFound",
                      "status": 404
                    }
                  }
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundProblemDetails"
                },
                "examples": {
                  "Example NotFoundProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:missing",
                      "title": "RateCardNotFound",
                      "status": 404
                    }
                  }
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundProblemDetails"
                },
                "examples": {
                  "Example NotFoundProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:missing",
                      "title": "RateCardNotFound",
                      "status": 404
                    }
                  }
                }
              }
            }
          },
          "429": {
            "description": "The number of requests exceeded the maximum allowed."
          },
          "500": {
            "description": "An internal server error occured."
          },
          "502": {
            "description": "Bad gateway."
          },
          "503": {
            "description": "Service unavailable."
          },
          "504": {
            "description": "Gateway timeout."
          }
        },
        "x-codeSamples": [
          {
            "lang": "Shell + Curl",
            "source": "curl --request DELETE \\\n  --url https://mtapi.dev-newdaytechnology.net/cl/rate-card-service/rate-cards/%7BrateCardId%7D/transaction-details/%7BtransactionDetailsId%7D \\\n  --header 'context-tenantId: SOME_STRING_VALUE' \\\n  --header 'idempotency-key: EE735673-05F2-4C56-8A68-60170BDA4524'"
          },
          {
            "lang": "Csharp + Restsharp",
            "source": "var client = new RestClient(\"https://mtapi.dev-newdaytechnology.net/cl/rate-card-service/rate-cards/%7BrateCardId%7D/transaction-details/%7BtransactionDetailsId%7D\");\nvar request = new RestRequest(Method.DELETE);\nrequest.AddHeader(\"idempotency-key\", \"EE735673-05F2-4C56-8A68-60170BDA4524\");\nrequest.AddHeader(\"context-tenantId\", \"SOME_STRING_VALUE\");\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "Javascript + Xhr",
            "source": "const data = null;\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"DELETE\", \"https://mtapi.dev-newdaytechnology.net/cl/rate-card-service/rate-cards/%7BrateCardId%7D/transaction-details/%7BtransactionDetailsId%7D\");\nxhr.setRequestHeader(\"idempotency-key\", \"EE735673-05F2-4C56-8A68-60170BDA4524\");\nxhr.setRequestHeader(\"context-tenantId\", \"SOME_STRING_VALUE\");\n\nxhr.send(data);"
          },
          {
            "lang": "Node + Request",
            "source": "const request = require('request');\n\nconst options = {\n  method: 'DELETE',\n  url: 'https://mtapi.dev-newdaytechnology.net/cl/rate-card-service/rate-cards/%7BrateCardId%7D/transaction-details/%7BtransactionDetailsId%7D',\n  headers: {\n    'idempotency-key': 'EE735673-05F2-4C56-8A68-60170BDA4524',\n    'context-tenantId': 'SOME_STRING_VALUE'\n  }\n};\n\nrequest(options, function (error, response, body) {\n  if (error) throw new Error(error);\n\n  console.log(body);\n});\n"
          }
        ]
      },
      "get": {
        "tags": [
          "TransactionDetails"
        ],
        "summary": "Gets the transaction details for a rate card and transaction id.",
        "operationId": "GetRateCardTransactionDetail",
        "parameters": [
          {
            "name": "rateCardId",
            "in": "path",
            "description": "Identifier assigned to the Ratecard..",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "transactionDetailsId",
            "in": "path",
            "description": "Identifier assigned to the transaciton details.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          },
          {
            "name": "context-tenantId",
            "in": "header",
            "description": "Identifier assigned to the Tenant.",
            "required": true,
            "schema": {
              "type": "string",
              "format": "uuid"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Details of the transaction requested.",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/GetTransactionDetailsResponse"
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetTransactionDetailsResponse"
                },
                "example": {
                  "lowerLimitInclusive": 0.1,
                  "upperLimitExclusive": 0.1,
                  "riskBands": [
                    "string"
                  ]
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/GetTransactionDetailsResponse"
                }
              }
            }
          },
          "401": {
            "description": "Unauthorised."
          },
          "403": {
            "description": "Forbidden."
          },
          "404": {
            "description": "Details of what was not found.",
            "content": {
              "text/plain": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundProblemDetails"
                },
                "examples": {
                  "Example NotFoundProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:missing",
                      "title": "RateCardNotFound",
                      "status": 404
                    }
                  }
                }
              },
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundProblemDetails"
                },
                "examples": {
                  "Example NotFoundProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:missing",
                      "title": "RateCardNotFound",
                      "status": 404
                    }
                  }
                }
              },
              "text/json": {
                "schema": {
                  "$ref": "#/components/schemas/NotFoundProblemDetails"
                },
                "examples": {
                  "Example NotFoundProblemDetails": {
                    "value": {
                      "type": "newday:ratecard:error:missing",
                      "title": "RateCardNotFound",
                      "status": 404
                    }
                  }
                }
              }
            }
          },
          "429": {
            "description": "The number of requests exceeded the maximum allowed."
          },
          "500": {
            "description": "An internal server error occured."
          },
          "502": {
            "description": "Bad gateway."
          },
          "503": {
            "description": "Service unavailable."
          },
          "504": {
            "description": "Gateway timeout."
          }
        },
        "x-codeSamples": [
          {
            "lang": "Shell + Curl",
            "source": "curl --request GET \\\n  --url https://mtapi.dev-newdaytechnology.net/cl/rate-card-service/rate-cards/%7BrateCardId%7D/transaction-details/%7BtransactionDetailsId%7D \\\n  --header 'context-tenantId: SOME_STRING_VALUE'"
          },
          {
            "lang": "Csharp + Restsharp",
            "source": "var client = new RestClient(\"https://mtapi.dev-newdaytechnology.net/cl/rate-card-service/rate-cards/%7BrateCardId%7D/transaction-details/%7BtransactionDetailsId%7D\");\nvar request = new RestRequest(Method.GET);\nrequest.AddHeader(\"context-tenantId\", \"SOME_STRING_VALUE\");\nIRestResponse response = client.Execute(request);"
          },
          {
            "lang": "Javascript + Xhr",
            "source": "const data = null;\n\nconst xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(\"readystatechange\", function () {\n  if (this.readyState === this.DONE) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(\"GET\", \"https://mtapi.dev-newdaytechnology.net/cl/rate-card-service/rate-cards/%7BrateCardId%7D/transaction-details/%7BtransactionDetailsId%7D\");\nxhr.setRequestHeader(\"context-tenantId\", \"SOME_STRING_VALUE\");\n\nxhr.send(data);"
          },
          {
            "lang": "Node + Request",
            "source": "const request = require('request');\n\nconst options = {\n  method: 'GET',\n  url: 'https://mtapi.dev-newdaytechnology.net/cl/rate-card-service/rate-cards/%7BrateCardId%7D/transaction-details/%7BtransactionDetailsId%7D',\n  headers: {'context-tenantId': 'SOME_STRING_VALUE'}\n};\n\nrequest(options, function (error, response, body) {\n  if (error) throw new Error(error);\n\n  console.log(body);\n});\n"
          }
        ]
      }
    }
  },
  "components": {
    "schemas": {
      "CompleteRateCardGridSpecRequest": {
        "required": [
          "columns",
          "rows"
        ],
        "type": "object",
        "properties": {
          "rows": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/SpendDetailsRequest"
            },
            "description": "Spend details for the rate card grid specification."
          },
          "columns": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/TransactionDetailsRequest"
            },
            "description": "Transaction details for the rate card grid specification."
          }
        },
        "additionalProperties": false,
        "description": "Request to complete a rate card grid specification."
      },
      "CreateRateCardFromGridRequest": {
        "required": [
          "description",
          "grid",
          "gridSpec"
        ],
        "type": "object",
        "properties": {
          "description": {
            "type": "string",
            "description": "Description to use when completing a rate card."
          },
          "gridSpec": {
            "$ref": "#/components/schemas/CompleteRateCardGridSpecRequest"
          },
          "grid": {
            "type": "array",
            "items": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/SubsidyCommissionValueRequest"
              }
            },
            "description": "Grid specifying the subsidy commissions that match the spend and transaction details grid."
          }
        },
        "additionalProperties": false,
        "description": "Request to complete a rate card"
      },
      "CreateRateCardFromRecordsRequest": {
        "required": [
          "description",
          "records"
        ],
        "type": "object",
        "properties": {
          "description": {
            "type": "string",
            "description": "Description to use when creating a rate card."
          },
          "records": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/RateCardRecord"
            },
            "description": "List of rate card records to amend to the ratecard"
          }
        },
        "additionalProperties": false,
        "description": "Request to create a rate card from records"
      },
      "CreateRateCardResponse": {
        "type": "object",
        "properties": {
          "rateCardId": {
            "type": "string",
            "description": "Identifier assigned to the Ratecard.",
            "format": "uuid"
          }
        },
        "additionalProperties": false,
        "description": "Response sent when a rate card is created."
      },
      "CreateTransactionDetailsResponse": {
        "type": "object",
        "properties": {
          "transactionDetailsId": {
            "type": "string",
            "description": "Identifier assigned to the transaction details.",
            "format": "uuid"
          }
        },
        "additionalProperties": false,
        "description": "The response sent when the transaction details have been created."
      },
      "GetAllRateCardAssociationsAssociation": {
        "type": "object",
        "properties": {
          "rateCardId": {
            "type": "string",
            "format": "uuid"
          },
          "startDate": {
            "type": "string",
            "format": "date-time"
          }
        },
        "additionalProperties": false
      },
      "GetAllRateCardAssociationsResponse": {
        "type": "object",
        "properties": {
          "merchantId": {
            "type": "string",
            "format": "uuid"
          },
          "associations": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/GetAllRateCardAssociationsAssociation"
            }
          }
        },
        "additionalProperties": false
      },
      "GetRateCardGridResponse": {
        "type": "object",
        "properties": {
          "description": {
            "type": "string",
            "description": "Description of the rate card."
          },
          "gridSpec": {
            "$ref": "#/components/schemas/GetRateCardGridSpecResponse"
          },
          "grid": {
            "type": "array",
            "items": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/GetSubsidyCommissionValueResponse"
              }
            },
            "description": "Grid specifying the subsidy commissions that match the spend and transaction details grid."
          }
        },
        "additionalProperties": false,
        "description": "Response sent when a rate card grid is retrieved."
      },
      "GetRateCardGridSpecResponse": {
        "type": "object",
        "properties": {
          "rows": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/GetSpendDetailsResponse"
            },
            "description": "Spend details for the rate card."
          },
          "columns": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/GetTransactionDetailsResponse"
            },
            "description": "Transaction details for the rate card."
          }
        },
        "additionalProperties": false,
        "description": "Rate card grid specification."
      },
      "GetRateCardResponse": {
        "type": "object",
        "properties": {
          "rateCardId": {
            "type": "string",
            "description": "Identifier assigned to the Ratecard.",
            "format": "uuid"
          },
          "description": {
            "type": "string",
            "description": "Description of the rate card."
          },
          "status": {
            "$ref": "#/components/schemas/RateCardStatus"
          },
          "processingComplete": {
            "type": "boolean",
            "description": "Display if Processing of items was completed",
            "nullable": true
          },
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/GetRateCardResponseItem"
            },
            "description": "A list of spend details for the rate card."
          }
        },
        "additionalProperties": false,
        "description": "Response when a rate card is requested."
      },
      "GetRateCardResponseItem": {
        "type": "object",
        "properties": {
          "spendType": {
            "$ref": "#/components/schemas/SpendType"
          },
          "interestRatePercentage": {
            "type": "number",
            "description": "Interest rate percentage (shown as a fraction of 1 e.g. 0.1 for 10%).",
            "format": "double",
            "nullable": true
          },
          "termMonths": {
            "type": "integer",
            "description": "The term of the spend details in months.",
            "format": "int32",
            "nullable": true
          },
          "lowerLimitInclusive": {
            "type": "number",
            "description": "Lower limit of the transaction (inclusive) e.g. 1000.0 (greater than or equal 1000.0).",
            "format": "double"
          },
          "upperLimitExclusive": {
            "type": "number",
            "description": "Upper limit of the transaction (exclusive) e.g. 2000.0 (less than 2000.0).",
            "format": "double"
          },
          "riskBands": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "A list of the risk bands that are associated with the transaction.",
            "nullable": true
          },
          "settlementPercentage": {
            "type": "number",
            "description": "Settlement percentage (shown as a fraction of 1 e.g. 0.1 for 10%).",
            "format": "double",
            "nullable": true
          },
          "refundPercentage": {
            "type": "number",
            "description": "Refund percentage (shown as a fraction of 1 e.g. 0.1 for 10%).",
            "format": "double",
            "nullable": true
          },
          "chargebackPercentage": {
            "type": "number",
            "description": "Chargeback percentage (shown as a fraction of 1 e.g. 0.1 for 10%).",
            "format": "double",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Spend details for an item on the rate card."
      },
      "GetRateCardsResponse": {
        "type": "object",
        "properties": {
          "rateCards": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/GetRateCardsResponseItem"
            },
            "description": "A list of rate card details."
          }
        },
        "additionalProperties": false,
        "description": "The response sent when a list of rate card details has been requested."
      },
      "GetRateCardsResponseItem": {
        "type": "object",
        "properties": {
          "rateCardId": {
            "type": "string",
            "description": "Identifier assigned to the Ratecard.",
            "format": "uuid"
          },
          "description": {
            "type": "string",
            "description": "Description of the rate card."
          },
          "status": {
            "$ref": "#/components/schemas/RateCardStatus"
          }
        },
        "additionalProperties": false,
        "description": "Rate card details."
      },
      "GetSpendDetailsResponse": {
        "type": "object",
        "properties": {
          "spendType": {
            "$ref": "#/components/schemas/SpendType"
          },
          "interestRatePercentage": {
            "type": "number",
            "description": "Interest rate percentage (shown as a fraction of 1 e.g. 0.1 for 10%) (if applicable).",
            "format": "double",
            "nullable": true
          },
          "termMonths": {
            "type": "integer",
            "description": "The term of the spend details in months (if applicable).",
            "format": "int32",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Response sent when the spend details are requested."
      },
      "GetSubsidyCommissionValueResponse": {
        "type": "object",
        "properties": {
          "settlementPercentage": {
            "type": "number",
            "description": "Settlement percentage (shown as a fraction of 1 e.g. 0.1 for 10%).",
            "format": "double"
          },
          "refundPercentage": {
            "type": "number",
            "description": "Refund percentage (shown as a fraction of 1 e.g. 0.1 for 10%) (if applicable).",
            "format": "double",
            "nullable": true
          },
          "chargebackPercentage": {
            "type": "number",
            "description": "Chargeback percentage (shown as a fraction of 1 e.g. 0.1 for 10%) (if applicable).",
            "format": "double",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Subsidy Commission Value."
      },
      "GetTransactionDetailsListItem": {
        "type": "object",
        "properties": {
          "transactionDetailsId": {
            "type": "string",
            "description": "Identifier assigned to the transaction.",
            "format": "uuid"
          },
          "lowerLimitInclusive": {
            "type": "number",
            "description": "Lower limit of the transaction (inclusive) e.g. 1000.0 (greater than or equal 1000.0).",
            "format": "double"
          },
          "upperLimitExclusive": {
            "type": "number",
            "description": "Upper limit of the transaction (exclusive) e.g. 2000.0 (less than 2000.0).",
            "format": "double"
          },
          "riskBands": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "A list of the risk bands that are associated with the transaction."
          }
        },
        "additionalProperties": false,
        "description": "A single transaction details item."
      },
      "GetTransactionDetailsListResponse": {
        "type": "object",
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "$ref": "#/components/schemas/GetTransactionDetailsListItem"
            },
            "description": "List of transaction details."
          }
        },
        "additionalProperties": false,
        "description": "Response sent when a list of transaction details is requested."
      },
      "GetTransactionDetailsResponse": {
        "type": "object",
        "properties": {
          "lowerLimitInclusive": {
            "type": "number",
            "description": "Lower limit of the transaction (inclusive) e.g. 1000.0 (greater than or equal 1000.0).",
            "format": "double"
          },
          "upperLimitExclusive": {
            "type": "number",
            "description": "Upper limit of the transaction (exclusive) e.g. 2000.0 (less than 2000.0).",
            "format": "double"
          },
          "riskBands": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "A list of the risk bands that are associated with the transaction.",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Transaction details."
      },
      "MerchantRateCardAssociationRequest": {
        "required": [
          "startDate"
        ],
        "type": "object",
        "properties": {
          "startDate": {
            "type": "string",
            "description": "The date on which the Rate Card is associated from.",
            "format": "date-time"
          }
        },
        "additionalProperties": false,
        "description": "Used when associating a rate card with a merchant."
      },
      "NotFoundProblemDetails": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "nullable": true
          },
          "title": {
            "type": "string",
            "nullable": true
          },
          "status": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "detail": {
            "type": "string",
            "nullable": true
          },
          "instance": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": {}
      },
      "RateCardRecord": {
        "required": [
          "lowerLimitInclusive",
          "spendType",
          "upperLimitExclusive"
        ],
        "type": "object",
        "properties": {
          "spendType": {
            "$ref": "#/components/schemas/SpendType"
          },
          "interestRatePercentage": {
            "type": "number",
            "description": "Interest rate percentage (shown as a fraction of 1 e.g. 0.1 for 10%).",
            "format": "double",
            "nullable": true
          },
          "termMonths": {
            "type": "integer",
            "description": "The term of the spend details in months.",
            "format": "int32",
            "nullable": true
          },
          "lowerLimitInclusive": {
            "type": "number",
            "description": "Lower limit of the transaction (inclusive) e.g. 1000.0 (greater than or equal 1000.0).",
            "format": "double"
          },
          "upperLimitExclusive": {
            "type": "number",
            "description": "Upper limit of the transaction (exclusive) e.g. 2000.0 (less than 2000.0).",
            "format": "double"
          },
          "riskBands": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "An array of risk bands that are applicable for this rate card.",
            "nullable": true
          },
          "settlementPercentage": {
            "type": "number",
            "description": "Percentage for settlements, (shown as a fraction of 1 e.g. 0.1 for 10%).",
            "format": "double",
            "nullable": true
          },
          "refundPercentage": {
            "type": "number",
            "description": "Percentage for refunds, (shown as a fraction of 1 e.g. 0.1 for 10%).",
            "format": "double",
            "nullable": true
          },
          "chargebackPercentage": {
            "type": "number",
            "description": "Percentage for chargeback, (shown as a fraction of 1 e.g. 0.1 for 10%).",
            "format": "double",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Request to create a rate card record specification."
      },
      "RateCardStatus": {
        "enum": [
          "Draft",
          "Active",
          "Expired",
          "Activating"
        ],
        "type": "string",
        "description": "Rate card status."
      },
      "SpendDetailsRequest": {
        "required": [
          "spendType"
        ],
        "type": "object",
        "properties": {
          "spendType": {
            "$ref": "#/components/schemas/SpendType"
          },
          "interestRatePercentage": {
            "type": "number",
            "description": "Interest rate percentage (shown as a fraction of 1 e.g. 0.1 for 10%).",
            "format": "double",
            "nullable": true
          },
          "termMonths": {
            "type": "integer",
            "description": "The term of the spend details in months.",
            "format": "int32",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "The spend details for a rate card."
      },
      "SpendType": {
        "enum": [
          "Purchase",
          "Instalment",
          "BNPL"
        ],
        "type": "string",
        "description": "Spend Type"
      },
      "SubsidyCommissionValueRequest": {
        "type": "object",
        "properties": {
          "settlementPercentage": {
            "type": "number",
            "description": "Percentage for settlements, (shown as a fraction of 1 e.g. 0.1 for 10%).",
            "format": "double",
            "nullable": true
          },
          "refundPercentage": {
            "type": "number",
            "description": "Percentage for refunds, (shown as a fraction of 1 e.g. 0.1 for 10%).",
            "format": "double",
            "nullable": true
          },
          "chargebackPercentage": {
            "type": "number",
            "description": "Percentage for chargeback, (shown as a fraction of 1 e.g. 0.1 for 10%).",
            "format": "double",
            "nullable": true
          }
        },
        "additionalProperties": false,
        "description": "Subsidy commission associated with the rate card."
      },
      "TransactionDetailsRequest": {
        "required": [
          "lowerLimitInclusive",
          "riskBands",
          "upperLimitExclusive"
        ],
        "type": "object",
        "properties": {
          "lowerLimitInclusive": {
            "type": "number",
            "description": "Lower limit of the transaction (inclusive) e.g. 1000.0 (greater than or equal 1000.0).",
            "format": "double"
          },
          "upperLimitExclusive": {
            "type": "number",
            "description": "Upper limit of the transaction (exclusive) e.g. 2000.0 (less than 2000.0).",
            "format": "double"
          },
          "riskBands": {
            "type": "array",
            "items": {
              "type": "string"
            },
            "description": "A list of the risk bands that are associated with the transaction."
          }
        },
        "additionalProperties": false,
        "description": "Details of the transaction that can be applied to the rate card."
      },
      "UnprocessableEntityProblemDetails": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "nullable": true
          },
          "title": {
            "type": "string",
            "nullable": true
          },
          "status": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "detail": {
            "type": "string",
            "nullable": true
          },
          "instance": {
            "type": "string",
            "nullable": true
          }
        },
        "additionalProperties": {}
      },
      "ValidationProblemDetails": {
        "type": "object",
        "properties": {
          "type": {
            "type": "string",
            "nullable": true
          },
          "title": {
            "type": "string",
            "nullable": true
          },
          "status": {
            "type": "integer",
            "format": "int32",
            "nullable": true
          },
          "detail": {
            "type": "string",
            "nullable": true
          },
          "instance": {
            "type": "string",
            "nullable": true
          },
          "errors": {
            "type": "object",
            "additionalProperties": {
              "type": "array",
              "items": {
                "type": "string"
              }
            }
          }
        },
        "additionalProperties": {}
      }
    }
  },
  "x-pub-settings": {
    "pub-ready": true,
    "team": "",
    "tags": [
      "Merchant Configuration",
      "NewPay",
      "Retailers"
    ],
    "commitDate": 1744878272000
  }
}