---
title: 'CathayCareApproveDetailAPI'
disqus: hackmd
---
## **CathayCareApproveDetail**
Version | Handler | Desc | Date
------- | ------- | ------ | ----------
1.0.0 | Jum | Create | 2025-05-19
**Description**:
Call API in core to get information for Cathay Care insurance input.
| 環境 | 網址 |
| ---- | ---- |
| SIT | https://api-sit.cathay-ins.com.vn:9527/guarantee/api/CathayCare/CathayCareApproveDetail |
| UAT | https://api-uat.cathay-ins.com.vn:9527/guarantee/api/CathayCare/CathayCareApproveDetail |
| Core | /cxinsvn/servlet/HttpDispatcher/ATWA_1000/getHealthCareApproveDetailForAP |
---
## Header規格設計
### 1. 前端呼叫 API Gateway Header 參數 (同既有規範)
| 項目 | 說明 |
| ----------------------- | ---- |
| Method | POST |
| Required Request Header | Content-Type : application/json; charset=UTF-8 |
| Required Request Header | x-api-version=1 |
| Bearer Token | Call login API for receiving "access_token". This token is Bearer Token format. For details, please refer to the [login api](/lfbsyk40QCuaISPSf0x30g) |
### 2. 中台呼叫核心 Header 參數
參數名 | 型態 | 必須 | 說明
------------- | ------ | ---- | ----------------------
CLIENT_TARGET | String | Y | 登入帳號,帶前端傳入的參數 loginId
TOKEN | String | Y | 前面登入時會拿到的 TOKEN 字串
LG_CODE | String | Y | 語系代碼,越文:vi-VN,英文:en-US,中文:zh-TW,若此參數未傳入,會預設回傳越文
---
## Request
### API Gateway
FIELD | TYPE | REQUIRED | NOTED
--------- | ------- | -------- | -------------------
language | String | Y | LANGUAGE FOR MESSAGE
loginId | String | Y | LOGIN ID
token | String | Y | TOKEN
agntEmpno | String | N | Agent employee number
polNo | String | N | Policy number
cntrNo | String | N | Contact number
### Request 範例
1. 前端Request API Gateway 範例
```json=
{
"language":"zh-TW",
"loginId": "0100014373",
"token": "NlXEt66fejIrQvIGampcPnLVdmIYVo0wdZf8T5H5xkM5lpVpvuhDn9qSaAQDSkbkOdUjxvXufQpyH0WZWvQThw==",
"prodPolCode":"AC01007",
"agntEmpno":"0100014373",
"cntrNo":"210601168725"
}
```
```json=
{
"language":"zh-TW",
"loginId": "0100014373",
"token": "NlXEt66fejIrQvIGampcPnLVdmIYVo0wdZf8T5H5xkM5lpVpvuhDn9qSaAQDSkbkOdUjxvXufQpyH0WZWvQThw==",
"agntEmpno":"0100014373",
"polNo":"CI21P4004909"
}
```
2. 中台呼叫核心API範例
```json=
{
"AGNT_EMPNO":"0100014373",
"CNTR_NO":"210601168725"
}
```
```json=
{
"AGNT_EMPNO":"0100014373",
"POL_NO": "CI19P4060026"
}
```
## Response
---
### Response Fields
| Field Name | Data Type | Length | Description |
| ---------- | --------- | ------ | ----------- |
| status | Integer | 3 | **200**: Success, **999**: Cathay core error, **500**: System error, **504**: Timeout |
| success | Boolean | - | Indicates if the request was successful |
| message | String | - | "Success" or an error message |
| total | Integer | - | Total number of records in `data` |
| data | Object | - | Data list (returns null if no data is available) |
---
### Relationship Reference
The `relationship` field combines `INSR_RELATION` + `INSR_RELATION_MEMO` and is displayed directly in Vietnamese.
| INSR_RELATION Code | Relationship Display | Notes |
| ----------------- | --------------------------- | ----- |
| 1 | Tôi (Self) | Code 1, self |
| 2 | vợ chồng (Spouse) | Code 2, spouse |
| 3 | con cái (Child) | Code 3, child |
| 4 | cha mẹ (Parent) | Code 4, parent |
| 6 | anh chị em ruột (Sibling) | From `INSR_RELATION_MEMO`, sibling |
| 6 | người nuôi dưỡng (Guardian) | From `INSR_RELATION_MEMO`, guardian |
---
### Data Fields
| Field Name | Core Parameter | Data Type | Required | Description |
| ----------------- | ----------------- | --------- | -------- | ----------- |
| approveDetail | APPROVE_DETAIL | Object | Y | Policy data |
| cntrNo | CNTR_NO | String | Y | Contract number |
| procNo | PROC_NO | String | Y | Acceptance number |
| prodCode | PROD_CODE | String | Y | Product category code (Motorcycle: C / Car: C / Travel: A / Accident: A) |
| polNo | POL_NO | String | Y | Previous policy number |
| procCode | PROC_CODE | String | Y | Acceptance process status |
| prodPolCode | PROD_POL_CODE | String | Y | Product policy category code |
| customerName | CUSTOMER_NAME | String | Y | Applicant name |
| certificateType | CERTIFICATE_TYPE | String | Y | Applicant certificate type (1: National ID, 2: Birth Certificate, 3: Passport, 4: Military ID, 5: Other, 6: Tax ID) |
| certificateNumber | CERTIFICATE_NUMBER | String | Y | Applicant ID number (ID/Birth Certificate: 12 digits; Passport: 7–10 digits) |
| gender | GENDER | String | Y | Applicant gender (1: Male, 2: Female) |
| nationalId | NATIONAL_ID | String | Y | Applicant nationality |
| birthday | INSR_BIRTHDAY | Date | Y | Applicant birthdate (YYYY-MM-DD) |
| phoneNo | PHONE_NO | String | Y | Phone number |
| addr | ADDR | String | Y | Applicant address |
| polDt | POL_DT | DateTime | Y | Old policy effective date (YYYY-MM-DD HH:MM:SS) |
| polDueDt | POL_DUE_DT | DateTime | Y | Old policy expiration date (YYYY-MM-DD HH:MM:SS) |
| prem | PREM | Decimal | Y | Actual premium collected |
| taxes | TAXES | Decimal | Y | Taxes |
| rate | RATE | Decimal | Y | Tax rate |
| hbdMemo | HND_MEMO | String | Y | Underwriter rejection reason (most recent record) |
| printType | PRINT_TYPE | String | Y | Policy format (1: Electronic, 2: Paper) |
| crtEmpno | CRT_EMPNO | String | Y | Input employee ID |
| crtName | CRT_NAME | String | Y | Input employee name |
| crtDt | CRT_DT | DateTime | Y | Input date/time (YYYY-MM-DD HH:MM:SS) |
| typePol | TYPE_POL | String | Y | Policy submission type (M:SAG, B:MBW, others: Offline) |
| saleWay | SALE_WAY | String | Y | Submission channel |
| polDate | POL_DATE | Date | Y | E-policy sending date (YYYY-MM-DD) |
| rank | RANK | String | Y | Insurance pack rank (1–5): 1–Bronze, 2–Silver, 3–Gold, 4–Platinum, 5–Diamond |
| paytDetail | PAYT_DEAE | String | N | Payment details |
| polEmail | POL_EMAIL | String | Y | E-policy recipient email |
| polPrntDate | POL_PRNT_DATE | DateTime | Y | Issuance date (YYYY-MM-DD HH:MM:SS) |
| payTime | PAY_TIME | DateTime | Y | Payment time (YYYY-MM-DD HH:MM:SS) |
| payKind | PAY_KIND | String | Y | Payment method (1: CS Cathay Life, 2: Bank Transfer, 3: MoMo, 4: Mobile Web) |
| payOption | PAY_OPTION | String | Y | Payment option (0: Pay by Agent, 1: Pay by Client) |
| insrList | INSR_LIST | List | Y | Accident insurance application roster (multiple) |
| premList | PREM_LIST | List | Y | Accident insurance premium records (multiple, nested within `insrList`, matched by `CNTR_NO` & `INSR_NO`) |
| diseaseList | - | List | N | Disease information list |
| declareList | - | List | N | Declaration information list |
---
### Insured List Details
| Field Name | Core Parameter | Data Type | Required | Description |
| ---------- | --------------- | --------- | -------- | ----------- |
| cntrNo | CNTR_NO | String | Y | Contract number |
| insrNo | INSR_NO | String | Y | Insured client number |
| serNo | SER_NO | String | Y | Roster sequence number |
| insrName | INSR_NAME | String | Y | Insured name |
| insrCertType | INSR_CERT_TYPE | String | Y | Insured certificate type |
| insrCertNumber | INSR_CERT_NUMBER | String | Y | Insured ID number |
| insrAge | INSR_AGE | Decimal | Y | Age at time of insurance |
| sex | INSR_GENDER | String | Y | Gender (1: Male, 2: Female) |
| insrBirthday | INSR_BIRTHDAY | Date | Y | Birthdate (YYYY-MM-DD) |
| insrProj | INSR_PROJ | String | Y | Insurance project |
| relationship | INSR_RELATION + INSR_RELATION_MEMO | String | Y | Relationship to applicant (displayed in Vietnamese) |
| assignBeneficiary | ASSIGN_BENEFICIARY | Integer | N | Beneficiary type (0: Law, 1: Assign) |
| numberBeneficiary | NUMBER_BENEFICIARY | Integer | N | Number of beneficiaries |
| beneficiaries | BENEFICIARIES | List | N | Beneficiary list |
| effDate | EFF_DATE | Date | Y | Rider effective date (YYYY-MM-DD) |
| expDate | EXP_DATE | Date | Y | Rider expiration date (YYYY-MM-DD) |
| insuranceInforce | insurance_inforce | String | N | Health check: customer inforce insurance |
| insuranceCancelOrDecline | insurance_cancel_or_decline | String | N | Health check: customer cancel or decline insurance |
| insuranceRenewCancelOrDecline | insurance_renew_cancel_or_decline | String | N | Health check: customer cancel or decline renew insurance |
| yearlyCheckups | yearly_checkups | String | N | Health check: customer yearly checkup |
| institutionLast3 | institution_last3 | String | N | Health check: customer institution last 3 years |
| medicalHistory | medical_history | String | N | Health check: customer medical history |
| rank | prod_rank | String | N | Rank of product |
---
### Beneficiaries Details
| Field Name | Core Parameter | Data Type | Required | Description |
| ---------- | --------------- | --------- | -------- | ----------- |
| beneficiaryRelationship | BENEFICIARY_RELATIONSHIP | String | N | Relationship of beneficiary |
| beneficiaryCertType | BENEFICIARY_CERT_TYPE | String | N | Type of beneficiary certificate |
| beneficiaryCertNumber | BENEFICIARY_CERT_NUMBER | String | N | Certificate number of beneficiary |
| beneficiaryName | BENEFICIARY_NAME | String | N | Name of beneficiary |
| beneficiaryBirthday | BENEFICIARY_BIRTHDAY | Date | N | Birthday of beneficiary (YYYY-MM-DD) |
| sex | SEX | String | N | Gender of beneficiary |
| beneficiaryPhone | BENEFICIARY_PHONE | String | N | Phone number of beneficiary |
| beneficiaryAddress | BENEFICIARY_ADDRESS | String | N | Address of beneficiary |
| ratio | RATIO | Decimal | N | Allocation ratio |
| jobCat | JOB_CAT | String | Y | Occupation category code |
| workCont | work_cont | String | Y | User-provided occupation description |
---
### Premium List Details
| Field Name | Core Parameter | Data Type | Required | Description |
| ---------- | --------------- | --------- | -------- | ----------- |
| discPrem | DISC_PREM | Decimal | Y | Discounted premium |
| realPrem | REAL_PREM | Decimal | Y | Actual premium collected |
| fronPrem | FRON_PREM | Decimal | Y | Foreign currency premium |
| fronDiscPrem | FRON_DISC_PREM | Decimal | Y | Foreign currency discounted premium |
| fronRealPrem | FRON_REAL_PREM | Decimal | Y | Foreign currency actual premium collected |
| amt | AMT | Decimal | Y | Coverage amount |
| fronAmt | FRON_AMT | Decimal | Y | Foreign currency coverage amount |
| effeStatDate | EFFE_STAT_DATE | Date | Y | Effective start date (YYYY-MM-DD) |
| effeEndDate | EFFE_END_DATE | Date | Y | Effective end date (YYYY-MM-DD) |
| prodId | PROD_ID | String | Y | Product ID |
| prodNm | PROD_NM | String | Y | Product name |
---
### Disease List Details
| Field Name | Core Parameter | Data Type | Required | Description |
| ---------- | --------------- | --------- | -------- | ----------- |
| serNo | ser_no | String | N | Sequence |
| diagnose | diagnose | String | N | Diagnosis detail |
| diagnosisDate | diagnosis_date | Date | N | Diagnosis date (YYYY-MM-DD) |
| diagnosisResult | diagnosis_result | String | N | Diagnosis result |
| diagnosisHospitalAddress | diagnosis_hospital_address | String | N | Diagnosis hospital address |
| insrName | insr_name | String | N | Insured name |
---
### Declaration List Details
| Field Name | Core Parameter | Data Type | Required | Description |
| ---------- | --------------- | --------- | -------- | ----------- |
| serNo | ser_no | String | N | Sequence |
| insrAvailableDate | insr_available_date | Date | N | Insured available date (YYYY-MM-DD) |
| insrCompanyNo | insr_company_no | String | N | Insured company ID |
| insrPrice | insr_price | Decimal | N | Insured price |
| insrStatus | insr_status | String | N | Insured status |
| insrName | insr_name | String | N | Insured name |
### Response 範例
```json=
{
"status": 200,
"success": true,
"message": "Success",
"total": 1,
"data": {
"approveDetail": {
"cntrNo": "240270067683",
"procNo": "PC24A0000013",
"prodCode": "A",
"polNo": "CI24PC000336",
"procCode": "5",
"prodPolCode": "AC01017",
"customerName": "ĐƠN PC TO COPY",
"certificateType": "1",
"certificateNumber": "190029295",
"gender": "2",
"nationalId": "VIETN",
"birthday": "2006-02-21",
"phoneNo": "0785683609",
"addr": "quận Hải Châu, Thành Phố Đà Nẵng",
"polDt": "2024-02-22 10:30:00",
"polDueDt": "2025-02-22 10:30:00",
"prem": 1686000,
"taxes": 0,
"rate": 0,
"hbdMemo": null,
"printType": "1",
"crtEmpno": "0100007225",
"crtName": "Từ Vĩnh Quang (徐義侊)",
"crtDt": "2024-02-21 11:01:30",
"typePol": "M",
"saleWay": "2",
"polDate": "2024-02-21",
"rank": "1",
"paytDetail": "Thanh toán qua ngân hàng",
"polEmail": "nguyenducchaungoc@gmail.com",
"polPrntDate": "2024-02-22 10:45:00",
"payTime": "2024-02-21 11:10:00",
"payKind": "2",
"payOption": "1"
},
"insrList": [
{
"cntrNo": "240270067683",
"insrNo": "0032452742",
"serNo": "0",
"insrName": "ĐƠN PC TO COPY",
"insrCertType": "1",
"insrCertNumber": "190029295",
"insrAge": 18,
"sex": "2",
"insrBirthday": "2006-02-21",
"insrProj": "PMA",
"relationship": "anh chị em ruột",
"assignBeneficiary": 1,
"numberBeneficiary": 1,
"beneficiaries": [
{
"beneficiaryRelationship": "3",
"beneficiaryCertType": "1",
"beneficiaryCertNumber": "190029296",
"beneficiaryName": "NTH",
"beneficiaryBirthday": "1994-10-10",
"sex": "2",
"beneficiaryPhone": "0979200263",
"beneficiaryAddress": "Tân Uyên, Bình Dương",
"ratio": 100.0,
"jobCat": "190101",
"workCont": "Người quản lý"
}
],
"effDate": "2024-02-22",
"expDate": "2025-02-22",
"insuranceInforce": "N",
"insuranceCancelOrDecline": "N",
"insuranceRenewCancelOrDecline": "N",
"yearlyCheckups": "N",
"institutionLast3": "N",
"medicalHistory": "N",
"rank": "1",
"premList": [
{
"discPrem": 0,
"realPrem": 90000,
"fronPrem": null,
"fronDiscPrem": null,
"fronRealPrem": null,
"amt": 100000000,
"fronAmt": null,
"effeStatDate": "2024-02-22",
"effeEndDate": "2025-02-22",
"prodId": "PMA",
"prodNm": "Bảo hiểm sức khỏe Cathay - Tử vong hoặc thương tật vĩnh viễn do tai nạn"
}
]
}
],
"diseaseList": [],
"declareList": []
}
}
```
```
###### tags: `agentportal` `Documentation`