## Patient tạo appointment ```curl curl --location --request POST 'http://localhost:5001/hybrid-dbs-stag/asia-southeast1/api/v1/appointments' \ --header 'Authorization: Bearer eyJhbGciOiJub25lIiwidHlwIjoiSldUIn0.eyJyb2xlTGlzdCI6WyJzdGFmZiJdLCJlbWFpbCI6InRlc3RAc3RhZmYuY29tIiwiZW1haWxfdmVyaWZpZWQiOmZhbHNlLCJhdXRoX3RpbWUiOjE2NzM5NDc3OTEsInVzZXJfaWQiOiJ0ZXN0QHN0YWZmLmNvbSIsImZpcmViYXNlIjp7ImlkZW50aXRpZXMiOnsiZW1haWwiOlsidGVzdEBzdGFmZi5jb20iXX0sInNpZ25faW5fcHJvdmlkZXIiOiJwYXNzd29yZCJ9LCJpYXQiOjE2NzM5NDc3OTEsImV4cCI6MTY3Mzk1MTM5MSwiYXVkIjoiaHlicmlkLWRicy1zdGFnIiwiaXNzIjoiaHR0cHM6Ly9zZWN1cmV0b2tlbi5nb29nbGUuY29tL2h5YnJpZC1kYnMtc3RhZyIsInN1YiI6InRlc3RAc3RhZmYuY29tIn0.' \ --header 'Content-Type: application/json' \ --data-raw '{ "doctorUid": "doctor-mock-uid", "userRequest": { "descriptionText": "Hello", "descriptionAudioBase64": null, "questionText": "Hello", "questionAudioBase64": null, "attachmentUrlList": [ "https://upload.wikimedia.org/wikipedia/commons/thumb/b/b6/Image_created_with_a_mobile_phone.png/1200px-Image_created_with_a_mobile_phone.png", "https://media.istockphoto.com/id/1322277517/photo/wild-grass-in-the-mountains-at-sunset.jpg?s=612x612&w=0&k=20&c=6mItwwFFGqKNKEAzv0mv6TaxhLN3zSE43bWmFN--J5w=" ] } }' ``` Lưu ý: - Trong `descriptionText` và `descriptionAudioBase64`, chỉ 1 field có value, field còn lại phải null. - Tương tự với `questionText` và `questionAudioBase64`. ## Patient thanh toán appointment ```curl curl --location --request PATCH 'http://localhost:5001/hybrid-dbs-stag/asia-southeast1/api/v1/appointments/2dcba719-1b6a-427d-8297-f0a78eae1f04/confirm-by-user' \ --header 'Authorization: Bearer eyJhbGciOiJub25lIiwidHlwIjoiSldUIn0.eyJyb2xlTGlzdCI6WyJzdGFmZiJdLCJlbWFpbCI6InRlc3RAc3RhZmYuY29tIiwiZW1haWxfdmVyaWZpZWQiOmZhbHNlLCJhdXRoX3RpbWUiOjE2NzM5NDc3OTEsInVzZXJfaWQiOiJ0ZXN0QHN0YWZmLmNvbSIsImZpcmViYXNlIjp7ImlkZW50aXRpZXMiOnsiZW1haWwiOlsidGVzdEBzdGFmZi5jb20iXX0sInNpZ25faW5fcHJvdmlkZXIiOiJwYXNzd29yZCJ9LCJpYXQiOjE2NzM5NDc3OTEsImV4cCI6MTY3Mzk1MTM5MSwiYXVkIjoiaHlicmlkLWRicy1zdGFnIiwiaXNzIjoiaHR0cHM6Ly9zZWN1cmV0b2tlbi5nb29nbGUuY29tL2h5YnJpZC1kYnMtc3RhZyIsInN1YiI6InRlc3RAc3RhZmYuY29tIn0.' \ --header 'Content-Type: application/json' \ --data-raw '{ "startAt": "2023-01-05T04:00:00.000Z", "orgDurationInMinutes": 30 }' ``` ## Patient cập nhật medical form ```curl curl --location --request PATCH 'http://localhost:5001/hybrid-dbs-stag/asia-southeast1/api/v1/appointments/2dcba719-1b6a-427d-8297-f0a78eae1f04/medical-form/e32fcfbc-575c-47b2-a353-724c6e31e334' \ --header 'Authorization: Bearer eyJhbGciOiJub25lIiwidHlwIjoiSldUIn0.eyJyb2xlTGlzdCI6WyJzdGFmZiJdLCJlbWFpbCI6InRlc3RAc3RhZmYuY29tIiwiZW1haWxfdmVyaWZpZWQiOmZhbHNlLCJhdXRoX3RpbWUiOjE2NzM5NDc3OTEsInVzZXJfaWQiOiJ0ZXN0QHN0YWZmLmNvbSIsImZpcmViYXNlIjp7ImlkZW50aXRpZXMiOnsiZW1haWwiOlsidGVzdEBzdGFmZi5jb20iXX0sInNpZ25faW5fcHJvdmlkZXIiOiJwYXNzd29yZCJ9LCJpYXQiOjE2NzM5NDc3OTEsImV4cCI6MTY3Mzk1MTM5MSwiYXVkIjoiaHlicmlkLWRicy1zdGFnIiwiaXNzIjoiaHR0cHM6Ly9zZWN1cmV0b2tlbi5nb29nbGUuY29tL2h5YnJpZC1kYnMtc3RhZyIsInN1YiI6InRlc3RAc3RhZmYuY29tIn0.' \ --header 'Content-Type: application/json' \ --data-raw '{ "type": "medicalHistory", "medicalHistoryForm": { "height": 1.73, "weight": 67.5, "medicalHistory": [ "Hen suyễn", "Bệnh tim" ], "subjectiveSigns": [ "Sốt / Ớn lạnh", "Chóng mặt", "Táo bón hoặc tiêu chảy" ], "allergy": "Sữa bò - Tiêu chảy", "physicalExercises": 0, "dietRisk": 0, "drinking": 0, "smoking": 0, "note": "Hello World", "attachmentUrlList": [ "https://static.tuoitre.vn/tto/i/s626/2014/10/05/5hbID520.jpg" ] }, "vitalSignsForm": null, "testResultsForm": null, "currentPrescriptionForm": null }' ``` ### Lưu ý - Giải thích form: https://docs.google.com/spreadsheets/d/1gX8LZM6Ntc76_LW_xmVIR_-p_nRGe19qSKlJXrLg-0s/edit#gid=1937509792 - Các loại body: #### Medical History ```json { "type": "medicalHistory", "medicalHistoryForm": { "height": 1.73, "weight": 67.5, "medicalHistory": [ "Hen suyễn", "Bệnh tim" ], "subjectiveSigns": [ "Sốt / Ớn lạnh", "Chóng mặt", "Táo bón hoặc tiêu chảy" ], "allergy": "Sữa bò - Tiêu chảy", "physicalExercises": 0, "dietRisk": 0, "drinking": 0, "smoking": 0, "note": "Hello World", "attachmentUrlList": [ "https://static.tuoitre.vn/tto/i/s626/2014/10/05/5hbID520.jpg" ] }, "vitalSignsForm": null, "testResultsForm": null, "currentPrescriptionForm": null } ``` #### Vital Signs ```json { "type": "vitalSigns", "medicalHistoryForm": null, "vitalSignsForm": { "height": 1.73, "weight": 67.5, "bodyTemperature": 37, "heartRate": 101, "respiration": 40, "spO2": 50, "bloodPressureLow": 130, "bloodPressureHight": 160 }, "testResultsForm": null, "currentPrescriptionForm": null } ``` #### Test Result ```json { "type": "testResults", "medicalHistoryForm": null, "vitalSignsForm": null, "testResultsForm": { "attachmentUrlList": ["https://static.tuoitre.vn/tto/i/s626/2014/10/05/5hbID520.jpg"] }, "currentPrescriptionForm": null } ``` #### Current Prescription ```json { "type": "currentPrescription", "medicalHistoryForm": null, "vitalSignsForm": null, "testResultsForm": null, "currentPrescriptionForm": { "attachmentUrlList": ["https://static.tuoitre.vn/tto/i/s626/2014/10/05/5hbID520.jpg"] }, } ``` ## Patient cancel appointment ```curl curl --location --request PATCH 'http://localhost:5001/hybrid-dbs-stag/asia-southeast1/api/v1/appointments/2dcba719-1b6a-427d-8297-f0a78eae1f04/cancel' \ --header 'Authorization: Bearer eyJhbGciOiJub25lIiwidHlwIjoiSldUIn0.eyJyb2xlTGlzdCI6WyJzdGFmZiJdLCJlbWFpbCI6InRlc3RAc3RhZmYuY29tIiwiZW1haWxfdmVyaWZpZWQiOmZhbHNlLCJhdXRoX3RpbWUiOjE2NzM5NDc3OTEsInVzZXJfaWQiOiJ0ZXN0QHN0YWZmLmNvbSIsImZpcmViYXNlIjp7ImlkZW50aXRpZXMiOnsiZW1haWwiOlsidGVzdEBzdGFmZi5jb20iXX0sInNpZ25faW5fcHJvdmlkZXIiOiJwYXNzd29yZCJ9LCJpYXQiOjE2NzM5NDc3OTEsImV4cCI6MTY3Mzk1MTM5MSwiYXVkIjoiaHlicmlkLWRicy1zdGFnIiwiaXNzIjoiaHR0cHM6Ly9zZWN1cmV0b2tlbi5nb29nbGUuY29tL2h5YnJpZC1kYnMtc3RhZyIsInN1YiI6InRlc3RAc3RhZmYuY29tIn0.' ```