Context: Various Government Ministries, divisions, Directorates and departments retain Citizen relevant information in their own forms and databases. Such that each of such organization can effectively maintain unified meaningful information for Citizens, Bangladesh Cabinet recommends a Citizen Core Data Structure (CCDS) be adopted and maintained, for semantic interoperability, so that there is a standard way of indexing enterprise information. CCDS is meant to simplify information management through consistent classification and assignment of standard identifiers to the data names. This approach is very similar to Universal Data Element Framework (UDEF). Although Bangladesh CCDS does not currently adopt the generic UDEF framework, but the intention is that such following of metadata definitions of the CCDS elements will ensure initial country-wide e-Governance applications interoperability. The CCDS recommendation speculatd that applying UDEF may unncessarily complicate its adoption and delay; however CCDS can easily adopt UDEF at a later stage for international and industry wide interoperability when situation so warrants.
Bangladesh Cabinet Portal - CCDS Document
1. Format
...
MCI uses REST convention and would use JSON as the default data format
...
2. Authentication
All the endpoints in this Patient API requires authentication. The requesting party should include the API key in the request header under the key “Auth-Token”.
3. Validations
Please see details in attached Word Doc
4. Definitions
Described below are the various API definitions.
Create Patient
Parameters:
Note: The required fields are marked in BLUE
Example:
curl -XPOST /api/v1/patients -d “{
"nid": "13223432134567853",
"bid": null,
"uid": null,
"name_english": “Anis Ahmad”,
"gender": 1,
"present_address": {
"division": 1,
"district": 1
...
}
}
Response:
Status: 201 Created
Location: http://www.mci-local.dev/api/v1/patients/1234567890
{
"hid": "1234567890",
"nid": "13223432134567853",
"bid": null,
"uid": null,
"name_english": “Anis Ahmad”,
"name_bangla": null,
"date_of_birth": null,
"place_of_birth": null,
"present_address": {
"division": 1,
"district": 1
...
}
"gender": 1,
}
Full Create API Fields
...
.
...
...
"status": {
"type": "2",
"date_of_death": "1990-02-28"
},
...
MCI field definitions based on CCDS
...
...
#
...
Field Name
...
Type
...
Description
...
1.1
...
UHID
...
11 Char
...
Unique Health ID
...
1.2
...
NID
...
13 or 17 digits, Only numbers. No spaces, special characters allowed.
...
For those who already have NID
...
1.3
...
BIN / BRN
...
For
...
1.4
...
UID
...
Alphanumeric. No space or special characters allowed.
...
This is the proposed Unique Identifier for ALL the Citizens and Residents in Bangladesh. It will be system generated 11 characters Alphanumeric Number during the National Population Registration building process. This is very important for hassle-free Citizens' Services with integration of various services.
...
2.1.1
...
Name in Bangla
...
125 Char
...
Full name in Bangla. Citizens may have difficulties in Bangla typing
...
2.1.2
...
Given Name in English
...
100 Char, space allowed, all apecial characters including dot is allowed, numbers are also allowed.
...
Name that is common in the family
...
2.1.3
...
Surname in English
...
25 Char, no spaces, no special characters, numbers are allowed.
...
Name that are common in the family
...
3.1.1
...
Father’s name (Bangla)
...
125 Char
...
Full name in Bangla. Citizens may have difficulties in Bangla typing
...
3.1.2
...
Father’s given name (English)
...
100Char, space, numbers, alphabets, special characters, all accepted.
...
3.1.3
...
Father’s surname (English)
...
25 Char
...
3.1.4
...
Father's Identity
(UID)
...
Char
...
Father's UID: Unique available Identifier of the Citizen's Father. the proposed UID from NPR. This is also needed for relationship verification. Very important for Land Mutation and inheritance issues.
...
3.1.5
...
Father's Identity
(NID)
...
13 or 17 Char
...
Father's NID: Unique available Identifier of the Citizen's Father. NID from EC, This is also needed for relationship verification. Very important for Land Mutation and inheritance issues.
...
3.1.6
...
Father's Identity
(BRN)
...
17 Char
...
Father's BRN: BRN from BRIS. This is also needed for relationship verification. Very important for Land Mutation and inheritance issues.
...
3.2.1
...
Mother’s given name (English)
...
100Char, space, numbers, alphabets, special characters, all accepted.100 Char
...
First name in English
...
3.2.2
...
Mother’s surname (English)
...
25 Char
...
Last name in English
...
3.2.3
...
Mother’s name (Bangla)
...
125 Char
...
Full name in Bangla. Citizens may have difficuties in Bangla typing
...
3.2.4
...
Mother's Identity
(UID)
...
Char
...
Mother's UID: Unique available Identifier of the Citizen's mother. the proposed UID from NPR.
...
3.2.5
...
Mother's Identity
(NID)
...
13 or 17 Char
...
Mother's NID: Unique available Identifier of the Citizen's mother. NID from EC,
...
3.2.6
...
Mother's Identity
(BRN)
...
17 Char
...
Mother's BRN: BRN from BRIS. This is also needed for relationship verification.
...
4.
...
Date of birth
...
10 Char, No limit on the age.
...
Date of birth as in NID or BIN [ yyyy-mm-dd]
...
5.
...
Place of birth
...
20 Char. Alphabets, numbers, special characters allowed. Space not allowed.
...
RMO + Area/Village
...
6.
...
Present address
...
Address Block. Must accept only Bangladesh address (verified in country code)
...
From BBS
...
7.
...
Permanent Address
...
Address Block (can accept foreign address, in which case the hierarchy fields will be disabled. )
...
From BBS
...
8.
...
Gender
...
1 Char
...
From BBS
...
9.1
...
Marital status
...
1 Char
...
9.3
...
Marriage ID
...
8 Char, alphanumeric allowed, spaces & special characters not allowed
...
Proposed Marriage ID for a particular marriage of a Citizen. Needed for the social reality in Bangladesh to record multiple spouses for males. May also be used to track multiple marriage events for either male or female Citizen to resolve inheritance issues.
...
9.3.1
...
Spouse’s name (Bangla)
...
125 Char
...
9.3.3
...
25 Char, numbers and alphabets allowed. Space and special characetrs not allowed.
...
9.3.4
...
Spouse’s Identity
(NID)
...
13 or 17 Char
...
Spouse UID / NID / BRN: Unique available Identifier of the Citizen's Spouse. Either the proposed UID from NPR, or the NID from EC, or the BRN from BRIS. This is also needed for relationship verification. Very important for Land Mutation and inheritance issues.
...
Spouse's Identity
(BRN)
...
Spouse's Identity
(UID)
...
10
...
Religion
...
1 Char
...
From BBS
...
11
...
Occupation
...
2 Char
...
From BBS
...
12
...
Blood group
...
1 Char
...
From BBS
...
...
50 Char, space, alphabets, numbers, special characters allowed.
...
From BBS
...
2 Char
...
From BBS
...
2 Char
...
From BBS
...
2 Char
...
From BBS
...
...
Biometric IDs
...
TBD
...
...
a. Address Object
The address object would contain the following fields:
The table below represents an expansion of the Address Field number 6 & 7:
...
Address Blocks
...
Size
...
Code
...
Description
...
A1
...
Holding number
...
50 Char
...
From BBS
...
A2
...
Street
...
50 Char
...
From BBS
...
A3
...
Area/mouja
...
50 Char
...
From BBS
...
A4
...
Village
...
50 Char
...
From BBS
...
A5
...
Post Office
...
50 Char
...
From POSTOFFICE
...
A6
...
Post Code
...
4 Char
...
4 Digit
...
From POSTOFFICE
...
A7
...
Upazila
...
2 Char
...
2 Digit
...
From BBS
...
A8
...
Union/urban ward id
...
2 Char
...
2 Digit
...
From BBS
...
A10
...
City Corporation/Pouroshobha
...
2 Char
...
2 Digit
...
From BBS
...
A11
...
Zila (District)
...
2 Char
...
2 Digit
...
From BBS
...
A12
...
Division
...
2 Char
...
2 Digit
...
From BBS
...
A13
...
Country code
...
3 Char
...
3 Digit
...
From BBS
...
b. Marital Info Object
The marital info object would contain the following fields:
- The marital status field will be outside of the marital info object.
...
Name
...
Type
...
Description
...
marriage_id
...
string
...
Marriage ID from marriage registration system
...
name_bangla
...
string
...
Spouse’s full name in bangla
...
given_name
...
string
...
Spouse’s given name in english
...
nid/bin_brn/uid
...
string
...
Spouse’s NID/BRN/UID
...
c. Gender Code
...
Value
...
Code
...
Male
...
M
...
Female
...
F
...
Others
...
O
d. Marital Status Code
...
Value
...
Code
...
Unmarried
...
1
...
Married
...
2
...
Widow/Widower
...
3
...
Separated
...
4
...
Divorced
...
5
e. Relational Status Code
...
Value
...
Code
...
Widow/Widower
...
3
...
Separated
...
4
...
Divorced
...
5
f. Religion Code
...
Value
...
Code
...
Muslim
...
1
...
Hindu
...
2
...
Buddho
...
3
...
Christian
...
4
...
Refuse to disclose
...
8
...
Not a believer
...
9
...
Others
...
0
g. Blood Group Code
...
Value
...
Code
...
O+ ( O Positive)
...
1
...
O- ( O Negative)
...
2
...
A+ ( A Positive)
...
3
...
A- ( A Negative)
...
4
...
B+ ( B Positive)
...
5
...
B- ( B Negative)
...
6
...
AB+ ( AB Positive)
...
AB- ( AB Negative)
...
8
h. Disability Code
...
Value
...
Code
...
Null
...
0
...
Mute
...
1
...
Visual impairment
...
2
...
Hearing impairment
...
3
...
5
i. Status Code
...
Value
...
Code
...
Alive
...
1
...
Deceased
...
2
...
Unknown
...
3
j. Confidential Code
...
Value
...
Code
...
Confidential
...
Yes
...
Non-confidential
...
No
k. Death of Birth Type
Value | Code |
Declared | 1 |
Verified | 2 |
Estimated | 3 |
l. Occupation Code
See the attached word document (CCDS)
m. Education Code
See the attached word document (CCDS)
Response Codes
Success:
- Single resource operation:
response code: 201 , id: healthid (create)
response code: 202 , id: healthid (update)
response code: 200 , id: healthid (ok)
{ http_status: 200/201/202 id : {RESOURCE_ID} }
2. Resource collections:
{ http_status: 200 results : {[],[],[]} additional_info : {} }
Errors:
...
5. Dependency error -1005
For example-
{
- error_code: 1000
- http_status: 400
- message: "validation error"
- -errors: [
- -{
- code: 1002
- field: "sur_name"
- message: "invalid sur_name"
}
...
For example-
{
- error_code: 2000
- http_status: 400
- message: "invalid.request"
- -errors: [
- -{
- code: 2002
- field: "patient_gender"
- message: "Unrecognized field: 'patient_gender'"
}
Permission Error-
...
2. Field update not permitted -3002
100Char, space, numbers, alphabets, special characters, all accepted.a list of APIs refer the below pages