"swagger: \"2.0\"\ninfo:\n # description: \"API documentation for Fire Takaful\"\n description: Protects your property against loss or damage by fire or lightning\n version: \"1.0.0\"\n title: \"Fire Takaful\"\n termsOfService: \"http://sandbox.takaful-ikhlas.com.my\"\n contact:\n email: \"digital@mnrb.com.my\"\n logoUrl: assets/images/catalog-icon/vectorHomeSolution.svg\nhost: \"sandbox.takaful-ikhlas.com.my:8443\"\nbasePath: \"/api/v1\"\ntags:\n - name: \"Plans\"\n description: \"PA Perdana Plans\"\n - name: \"Quotations\"\n description: \"Quotations API\"\n - name: \"Customers\"\n description: \"Customers API\"\n - name: \"Beneficiaries\"\n description: \"Beneficiaries API\"\n - name: \"Nominees\"\n description: \"Nominees API\"\n - name: \"References\"\n description: \"General API\"\nschemes:\n - \"https\"\npaths:\n /refs/pa/plans:\n get:\n tags:\n - \"Plans\"\n summary: \"Get All Personal Accident Plans\"\n description: \"\"\n consumes:\n - \"application/json\"\n produces:\n - \"application/json\"\n parameters:\n - in: query\n name: product\n type: string\n description: \"Query plans by product. Example: perdana, permata, amani\"\n responses:\n \"200\":\n description: \"Success\"\n \"401\":\n description: \"No API key found in request\"\n \"404\":\n description: \"No Product Type Found\"\n security:\n - api_key: []\n /nonmotor/pa/quotation:\n post:\n tags:\n - \"Quotations\"\n summary: \"Create Quotation\"\n description: \"\"\n consumes:\n - \"application/json\"\n produces:\n - \"application/json\"\n parameters:\n - in: \"body\"\n name: \"body\"\n description: \"Quotation details\"\n required: true\n schema:\n $ref: \"#/definitions/Quotation\"\n responses:\n \"200\":\n description: \"Success\"\n \"401\":\n description: \"No API key found in request\"\n security:\n - api_key: []\n /nonmotor/pa/quotations:\n get:\n tags:\n - \"Quotations\"\n summary: \"Get List Quotations\"\n description: \"\"\n consumes:\n - \"application/json\"\n produces:\n - \"application/json\"\n parameters:\n - in: query\n name: offset\n type: integer\n description: \"The page number. Default is 0. Example: 0\"\n - in: query\n name: limit\n type: integer\n description: \"The numbers of items to return. Default is 10. Example: 30\"\n - in: query\n name: attributes\n type: string\n description: \"Select attributes to show for quotation. Example: id,grossContribution,riskCode\"\n - in: query\n name: includeCustomer\n type: boolean\n description: \"Include customer details for each quotation. Example: true\"\n - in: query\n name: customerAttributes\n type: string\n description: \"Select attributes to show for customer. Example: idNo,name\"\n - in: query\n name: includeBeneficiaries\n type: boolean\n description: \"Include all beneficiaries details for each quotation. Example: true\"\n - in: query\n name: beneficiariesAttributes\n type: string\n description: \"Select attributes to show for beneficiary. Example: name,beneficiaryType\"\n - in: query\n name: insuredId\n type: integer\n description: \"Select quotations with this customerId only. Example: 1\"\n - in: query\n name: insuredName\n type: string\n description: \"Select quotations with this customer's name. Example: customer name\"\n - in: query\n name: insuredIdNo\n type: string\n description: \"Select quotations with this idNo only. Example: 900101010101\"\n responses:\n \"200\":\n description: \"Success\"\n \"401\":\n description: \"No API key found in request\"\n security:\n - api_key: []\n /nonmotor/pa/quotation/{quotationId}:\n get:\n tags:\n - \"Quotations\"\n summary: \"Get Quotation Details by ID\"\n description: \"\"\n consumes:\n - \"application/json\"\n produces:\n - \"application/json\"\n parameters:\n - name: \"quotationId\"\n in: \"path\"\n description: \"Quotation ID\"\n required: true\n type: integer\n responses:\n \"200\":\n description: \"Success\"\n \"401\":\n description: \"No API key found in request\"\n \"400\":\n description: \"Bad Request\\n - No Quotation ID Found\"\n security:\n - api_key: []\n put:\n tags:\n - \"Quotations\"\n summary: \"Update Quotation Details by ID\"\n description: \"\"\n consumes:\n - \"application/json\"\n produces:\n - \"application/json\"\n parameters:\n - name: \"quotationId\"\n in: \"path\"\n description: \"Quotation ID\"\n required: true\n type: integer\n - in: \"body\"\n name: \"body\"\n description: \"Update Details\"\n required: true\n schema:\n $ref: \"#/definitions/UpdateQuotation\"\n responses:\n \"200\":\n description: \"Success\"\n \"401\":\n description: \"No API key found in request\"\n \"400\":\n description: \"Bad Request\\n - No Quotation ID Found\"\n security:\n - api_key: []\n delete:\n tags:\n - \"Quotations\"\n summary: \"Delete Quotation Details by ID\"\n description: \"\"\n consumes:\n - \"application/json\"\n produces:\n - \"application/json\"\n parameters:\n - name: \"quotationId\"\n in: \"path\"\n description: \"Quotation ID\"\n required: true\n type: integer\n responses:\n \"200\":\n description: \"Success\"\n \"401\":\n description: \"No API key found in request\"\n \"400\":\n description: \"Bad Request\\n - No Quotation ID Found\"\n security:\n - api_key: []\n /customer:\n post:\n tags:\n - \"Customers\"\n summary: \"Create Customer\"\n description: \"\"\n consumes:\n - \"application/json\"\n produces:\n - \"application/json\"\n parameters:\n - in: \"body\"\n name: \"body\"\n description: \"Customer details\"\n required: true\n schema:\n $ref: \"#/definitions/Customer\"\n responses:\n \"200\":\n description: \"Success\"\n \"401\":\n description: \"No API key found in request\"\n security:\n - api_key: []\n /customers:\n get:\n tags:\n - \"Customers\"\n summary: \"Get List of Customers\"\n description: \"\"\n consumes:\n - \"application/json\"\n produces:\n - \"application/json\"\n parameters:\n - in: query\n name: offset\n type: integer\n description: \"The page number. Default is 0. Example: 0\"\n - in: query\n name: limit\n type: integer\n description: \"The numbers of items to return. Default is 10. Example: 30\"\n - in: query\n name: attributes\n type: string\n description: \"Select attributes or columns to show for quotation. Example: id,idNo,name\"\n - in: query\n name: includeBeneficiaries\n type: boolean\n description: \"Include all beneficiaries details for each quotation. Example: true\"\n - in: query\n name: beneficiaryAttributes\n type: string\n description: \"Select attributes or columns to show for beneficiary. Example: name,beneficiaryType\"\n - in: query\n name: includeNominees\n type: boolean\n description: \"Select attributes or columns to show for beneficiary. Example: name,beneficiaryType\"\n - in: query\n name: nomineeAttributes\n type: string\n description: \"Select attributes or columns to show for beneficiary. Example: name,beneficiaryType\"\n responses:\n \"200\":\n description: \"Success\"\n \"401\":\n description: \"No API key found in request\"\n security:\n - api_key: []\n /customer/{customerId}:\n get:\n tags:\n - \"Customers\"\n summary: \"Get Customer Details by ID\"\n description: \"\"\n consumes:\n - \"application/json\"\n produces:\n - \"application/json\"\n parameters:\n - name: \"customerId\"\n in: \"path\"\n description: \"Customer ID\"\n required: true\n type: integer\n responses:\n \"200\":\n description: \"Success\"\n \"401\":\n description: \"No API key found in request\"\n \"400\":\n description: \"Bad Request\\n - No Quotation ID Found\"\n security:\n - api_key: []\n put:\n tags:\n - \"Customers\"\n summary: \"Update Customer Details by ID\"\n description: \"\"\n consumes:\n - \"application/json\"\n produces:\n - \"application/json\"\n parameters:\n - name: \"customerId\"\n in: \"path\"\n description: \"Customer ID\"\n required: true\n type: integer\n - in: \"body\"\n name: \"body\"\n description: \"Update Details\"\n required: true\n schema:\n $ref: \"#/definitions/UpdateCustomer\"\n responses:\n \"200\":\n description: \"Success\"\n \"401\":\n description: \"No API key found in request\"\n \"400\":\n description: \"Bad Request\\n - No Quotation ID Found\"\n security:\n - api_key: []\n delete:\n tags:\n - \"Customers\"\n summary: \"Delete Customer Details by ID\"\n description: \"Unable to delete if customer is registered to any quotation.\"\n consumes:\n - \"application/json\"\n produces:\n - \"application/json\"\n parameters:\n - name: \"customerId\"\n in: \"path\"\n description: \"Customer ID\"\n required: true\n type: integer\n responses:\n \"200\":\n description: \"Success\"\n \"401\":\n description: \"No API key found in request\"\n \"400\":\n description: \"Bad Request\\n - No Quotation ID Found\"\n security:\n - api_key: []\n /beneficiary/customer/{customerId}:\n post:\n tags:\n - \"Beneficiaries\"\n summary: \"Create Beneficiary\"\n description: \"\"\n consumes:\n - \"application/json\"\n produces:\n - \"application/json\"\n parameters:\n - name: \"customerId\"\n in: \"path\"\n description: \"Customer ID\"\n required: true\n type: integer\n - in: \"body\"\n name: \"body\"\n description: \"Beneficiary details: idNo required\"\n required: true\n schema:\n $ref: \"#/definitions/Beneficiary\"\n responses:\n \"200\":\n description: \"Success\"\n \"401\":\n description: \"No API key found in request\"\n security:\n - api_key: []\n /beneficiaries/customer/{customerId}:\n get:\n tags:\n - \"Beneficiaries\"\n summary: \"Get Customer's Beneficiary\"\n description: \"\"\n consumes:\n - \"application/json\"\n produces:\n - \"application/json\"\n parameters:\n - name: \"customerId\"\n in: \"path\"\n description: \"Customer ID\"\n required: true\n type: integer\n responses:\n \"200\":\n description: \"Success\"\n \"401\":\n description: \"No API key found in request\"\n security:\n - api_key: []\n /beneficiaries:\n get:\n tags:\n - \"Beneficiaries\"\n summary: \"Get List of Beneficiaries\"\n description: \"\"\n consumes:\n - \"application/json\"\n produces:\n - \"application/json\"\n parameters:\n - in: query\n name: offset\n type: integer\n description: \"The page number. Default is 0. Example: 0\"\n - in: query\n name: limit\n type: integer\n description: \"The numbers of items to return per page. Default is 10. Example: 30\"\n - in: query\n name: attributes\n type: string\n description: \"Select attributes or columns to show for quotation. Example: id,idNo,name\"\n responses:\n \"200\":\n description: \"Success\"\n \"401\":\n description: \"No API key found in request\"\n security:\n - api_key: []\n /beneficiary/{beneficiaryId}:\n get:\n tags:\n - \"Beneficiaries\"\n summary: \"Get Beneficiary Details by ID\"\n description: \"\"\n consumes:\n - \"application/json\"\n produces:\n - \"application/json\"\n parameters:\n - name: \"beneficiaryId\"\n in: \"path\"\n description: \"Beneficiary ID\"\n required: true\n type: integer\n responses:\n \"200\":\n description: \"Success\"\n \"401\":\n description: \"No API key found in request\"\n \"400\":\n description: \"Bad Request\\n - No Quotation ID Found\"\n security:\n - api_key: []\n put:\n tags:\n - \"Beneficiaries\"\n summary: \"Update Beneficiary Details by ID\"\n description: \"\"\n consumes:\n - \"application/json\"\n produces:\n - \"application/json\"\n parameters:\n - name: \"beneficiaryId\"\n in: \"path\"\n description: \"Beneficiary ID\"\n required: true\n type: integer\n - in: \"body\"\n name: \"body\"\n description: \"Update Details\"\n required: true\n schema:\n $ref: \"#/definitions/UpdateBeneficiary\"\n responses:\n \"200\":\n description: \"Success\"\n \"401\":\n description: \"No API key found in request\"\n \"400\":\n description: \"Bad Request\\n - No Quotation ID Found\"\n security:\n - api_key: []\n delete:\n tags:\n - \"Beneficiaries\"\n summary: \"Delete Beneficiary Details by ID\"\n description: \"\"\n consumes:\n - \"application/json\"\n produces:\n - \"application/json\"\n parameters:\n - name: \"beneficiaryId\"\n in: \"path\"\n description: \"Beneficiary ID\"\n required: true\n type: integer\n responses:\n \"200\":\n description: \"Success\"\n \"401\":\n description: \"No API key found in request\"\n \"400\":\n description: \"Bad Request\\n - No Quotation ID Found\"\n security:\n - api_key: []\n /nominee/customer/{customerId}:\n post:\n tags:\n - \"Nominees\"\n summary: \"Create Nominee\"\n description: \"\"\n consumes:\n - \"application/json\"\n produces:\n - \"application/json\"\n parameters:\n - name: \"customerId\"\n in: \"path\"\n description: \"Customer ID\"\n required: true\n type: integer\n - in: \"body\"\n name: \"body\"\n description: \"Nominee details\"\n required: true\n schema:\n $ref: \"#/definitions/Nominee\"\n responses:\n \"200\":\n description: \"Success\"\n \"401\":\n description: \"No API key found in request\"\n security:\n - api_key: []\n /nominees/customer/{customerId}:\n get:\n tags:\n - \"Nominees\"\n summary: \"Get Customer's Nominees\"\n description: \"\"\n consumes:\n - \"application/json\"\n produces:\n - \"application/json\"\n parameters:\n - name: \"customerId\"\n in: \"path\"\n description: \"Customer ID\"\n required: true\n type: integer\n responses:\n \"200\":\n description: \"Success\"\n \"401\":\n description: \"No API key found in request\"\n security:\n - api_key: []\n /nominees:\n get:\n tags:\n - \"Nominees\"\n summary: \"Get List of Nominees\"\n description: \"\"\n consumes:\n - \"application/json\"\n produces:\n - \"application/json\"\n parameters:\n - in: query\n name: offset\n type: integer\n description: \"The page number. Default is 0. Example: 0\"\n - in: query\n name: limit\n type: integer\n description: \"The numbers of items to return per page. Default is 10. Example: 30\"\n - in: query\n name: attributes\n type: string\n description: \"Select attributes or columns to show for quotation. Example: id,idNo,name\"\n responses:\n \"200\":\n description: \"Success\"\n \"401\":\n description: \"No API key found in request\"\n security:\n - api_key: []\n /nominee/{nomineeId}:\n get:\n tags:\n - \"Nominees\"\n summary: \"Get Nominee Details by ID\"\n description: \"\"\n consumes:\n - \"application/json\"\n produces:\n - \"application/json\"\n parameters:\n - name: \"nomineeId\"\n in: \"path\"\n description: \"Nominee ID\"\n required: true\n type: integer\n responses:\n \"200\":\n description: \"Success\"\n \"401\":\n description: \"No API key found in request\"\n \"400\":\n description: \"Bad Request\\n - No Quotation ID Found\"\n security:\n - api_key: []\n put:\n tags:\n - \"Nominees\"\n summary: \"Update Nominee Details by ID\"\n description: \"\"\n consumes:\n - \"application/json\"\n produces:\n - \"application/json\"\n parameters:\n - name: \"nomineeId\"\n in: \"path\"\n description: \"Nominee ID\"\n required: true\n type: integer\n - in: \"body\"\n name: \"body\"\n description: \"Update Details\"\n required: true\n schema:\n $ref: \"#/definitions/UpdateNominee\"\n responses:\n \"200\":\n description: \"Success\"\n \"401\":\n description: \"No API key found in request\"\n \"400\":\n description: \"Bad Request\"\n security:\n - api_key: []\n delete:\n tags:\n - \"Nominees\"\n summary: \"Delete Nominee Details by ID\"\n description: \"\"\n consumes:\n - \"application/json\"\n produces:\n - \"application/json\"\n parameters:\n - name: \"nomineeId\"\n in: \"path\"\n description: \"Nominee ID\"\n required: true\n type: integer\n responses:\n \"200\":\n description: \"Success\"\n \"401\":\n description: \"No API key found in request\"\n \"400\":\n description: \"Bad Request\"\n security:\n - api_key: []\n /refs/postcodes:\n get:\n tags:\n - \"References\"\n summary: \"Get All Postcodes\"\n description: \"\"\n operationId: \"getPostcodes\"\n consumes:\n - \"application/json\"\n produces:\n - \"application/json\"\n responses:\n \"200\":\n description: \"Success\"\n \"401\":\n description: \"No API key found in request\"\n security:\n - api_key: []\n /refs/postcode/{postcodeId}:\n get:\n tags:\n - \"References\"\n summary: \"Get Specific Postcode Details\"\n description: \"\"\n operationId: \"getPostcode\"\n consumes:\n - \"application/json\"\n produces:\n - \"application/json\"\n parameters:\n - name: \"postcodeId\"\n in: \"path\"\n description: \"ID of postcode to return\"\n required: true\n type: \"integer\"\n format: \"int64\"\n responses:\n \"200\":\n description: \"Success\"\n \"401\":\n description: \"No API key found in request\"\n \"404\":\n description: \"No Postcode Found\"\n security:\n - api_key: []\n /refs/banks:\n get:\n tags:\n - \"References\"\n summary: \"Get All Banks and Bank Codes\"\n description: \"\"\n consumes:\n - \"application/json\"\n produces:\n - \"application/json\"\n responses:\n \"200\":\n description: \"Success\"\n \"401\":\n description: \"No API key found in request\"\n security:\n - api_key: []\n /refs/bank/{bankKey}:\n get:\n tags:\n - \"References\"\n summary: \"Get Specific Bank Details\"\n description: \"\"\n consumes:\n - \"application/json\"\n produces:\n - \"application/json\"\n parameters:\n - name: \"bankKey\"\n in: \"path\"\n description: \"Code of bank to return\"\n required: true\n type: \"string\"\n responses:\n \"200\":\n description: \"Success\"\n \"401\":\n description: \"No API key found in request\"\n \"404\":\n description: \"No Bank Found\"\n security:\n - api_key: []\n /refs/nationalities:\n get:\n tags:\n - \"References\"\n summary: \"Get All Nationalities and Nationalities Codes\"\n description: \"\"\n consumes:\n - \"application/json\"\n produces:\n - \"application/json\"\n responses:\n \"200\":\n description: \"Success\"\n \"401\":\n description: \"No API key found in request\"\n security:\n - api_key: []\n /refs/nationality/{nationalityCode}:\n get:\n tags:\n - \"References\"\n summary: \"Get Specific Nationalities Details\"\n description: \"\"\n consumes:\n - \"application/json\"\n produces:\n - \"application/json\"\n parameters:\n - name: \"nationalityCode\"\n in: \"path\"\n description: \"Code of nationality to return\"\n required: true\n type: \"string\"\n responses:\n \"200\":\n description: \"Success\"\n \"401\":\n description: \"No API key found in request\"\n \"404\":\n description: \"No Nationalities Found\"\n security:\n - api_key: []\nsecurityDefinitions:\n api_key:\n type: \"apiKey\"\n name: \"apikey\"\n in: \"header\"\ndefinitions:\n Quotation:\n type: \"object\"\n properties:\n planId:\n type: \"integer\"\n commissionRate:\n type: \"integer\"\n example:\n planId: 1\n commissionRate: 20\n UpdateQuotation:\n type: \"object\"\n properties:\n aqad:\n type: \"string\"\n consent:\n type: \"integer\"\n customerId:\n type: \"integer\"\n wakafPct:\n type: \"integer\"\n beneficiaries:\n type: \"array\"\n items:\n type: \"integer\"\n nominees:\n type: \"array\"\n items:\n $ref: \"#/definitions/QtNominee\"\n quotationVersion:\n type: \"integer\"\n example:\n customerId: 1\n beneficiaries: [1, 2]\n nominees: [{ id: 1, sharePct: 90, isExecutor: true }]\n wakafPct: 10\n quotationVersion: 1\n aqad: true\n consent: true\n Customer:\n type: \"object\"\n properties:\n idNo:\n type: \"string\"\n idType:\n type: \"string\"\n name:\n type: \"string\"\n dateOfBirth:\n type: \"string\"\n nationalityCode:\n type: \"string\"\n address1:\n type: \"string\"\n address2:\n type: \"string\"\n address3:\n type: \"string\"\n postcode:\n type: \"string\"\n mobileNumber:\n type: \"string\"\n email:\n type: \"string\"\n bankAccountNumber:\n type: \"string\"\n bankKey:\n type: \"string\"\n example:\n idNo: \"900101010101\"\n idType: NRIC\n name: Najwa Hidayah binti Abu Syamil\n nationalityCode: \"139\"\n address1: Jalan Suasana 2/6B\n postcode: \"43200\"\n mobileNumber: \"60176665555\"\n email: \"email@domain.com\"\n bankAccountNumber: \"563525178211\"\n bankKey: \"BOFAMY2X\"\n UpdateCustomer:\n type: \"object\"\n properties:\n name:\n type: \"string\"\n dateOfBirth:\n type: \"string\"\n address1:\n type: \"string\"\n address2:\n type: \"string\"\n address3:\n type: \"string\"\n postcode:\n type: \"string\"\n mobileNumber:\n type: \"string\"\n email:\n type: \"string\"\n bankAccountNumber:\n type: \"string\"\n bankKey:\n type: \"string\"\n example:\n name: Najwa Yah binti Ash Syamil\n address2: Bandar Tun Hussein Onn\n address3: Cheras\n postcode: \"43200\"\n mobileNumber: \"60176665555\"\n email: \"email@domain.com\"\n bankAccountNumber: \"563525178211\"\n bankKey: \"BOFAMY2X\"\n Beneficiary:\n type: \"object\"\n properties:\n beneficiaryType:\n type: \"string\"\n idNo:\n type: \"string\"\n idType:\n type: \"string\"\n name:\n type: \"string\"\n dateOfBirth:\n type: \"string\"\n gender:\n type: \"string\"\n fullTimeEducation:\n type: \"boolean\"\n example:\n beneficiaryType: \"Spouse\"\n idNo: \"200101010101\"\n idType: \"NRIC\"\n name: \"Spouse binti Beneficiary\"\n fullTimeEducation: false\n UpdateBeneficiary:\n type: \"object\"\n properties:\n name:\n type: \"string\"\n fullTimeEducation:\n type: \"boolean\"\n example:\n name: \"Yati binti Borhan\"\n fullTimeEducation: true\n Nominee:\n type: \"object\"\n properties:\n idNo:\n type: \"string\"\n idType:\n type: \"string\"\n name:\n type: \"string\"\n dateOfBirth:\n type: \"string\"\n relationship:\n type: \"string\"\n mobileNumber:\n type: \"string\"\n email:\n type: \"string\"\n example:\n idNo: \"A1000001\"\n idType: \"PASSPORT\"\n name: \"Child Nominee\"\n dateOfBirth: \"2019-01-01\"\n relationship: \"Child\"\n mobileNumber: \"60198765432\"\n email: \"nominee@mnrb.com.my\"\n UpdateNominee:\n type: \"object\"\n properties:\n name:\n type: \"string\"\n dateOfBirth:\n type: \"string\"\n mobileNumber:\n type: \"string\"\n email:\n type: \"string\"\n example:\n name: \"Child Nominee\"\n dateOfBirth: \"2010-01-01\"\n mobileNumber: \"60198765432\"\n email: \"nominee@mnrb.com.my\"\n QtNominee:\n type: \"object\"\n properties:\n nomineeId:\n type: \"integer\"\n sharePct:\n type: \"integer\"\n isExecutor:\n type: \"boolean\"\n example:\n nomineeId: \"1\"\n sharePct: \"90\"\n isExecutor: \"true\"\n"
{}