API交互示意圖

開發(fā)流程示意圖

第三方可根據春雨提供的api按照如下大致流程進行開發(fā)


問題狀態(tài)的流轉示意圖

賬號同步/注冊接口

  • 賬號不存在 春雨會為該用戶創(chuàng)建一個新賬號,并登陸
  • 賬號已存在 春雨為當前用戶執(zhí)行登錄操作,不必每次請求,新用戶只要同步過一次即可

URL: /cooperation/server/login

請求方式: POST

請求參數:

名稱 說明 類型 長度 必要 備注
user_id 用戶名 String 32 用戶唯一標識,合作方定義(可為字母、數字、下劃線或其組合)
password 密碼 String 32
lon 經度 String 例如: 北京 lon = '116.3'
lat 緯度 String 例如: 北京 lat = '39.9'
partner 合作方標識 String 32 我要申請
sign 簽名 String 32 必須在服務器端生成 生成方法
atime 簽名時間戳 Long 64 當前UNIX TIMESTAMP簽名時間戳 (如:137322417)

返回:

名稱 說明 類型 長度 必要 備注
error 錯誤碼 Int 32 0 代表成功,其它 代表異常
error_msg 異常信息 String

post數據示例

            
              {
                "partner": "test",
                "user_id": "test_user",
                "password": "12345678",
                "sign": "cb5a715fdbeb7220",
                "atime": "1608207278"
              }
            
          

響應示例

            
              {
                "error": 0,
                "error_msg": "user logged in ok"
              }
            
          

普通眾包服務

簡介

指用戶不篩選醫(yī)生資質發(fā)起提問,由春雨通過智能分診匹配合適醫(yī)生;醫(yī)生可以選擇是否認領問題,若在24小時內醫(yī)生未回復,該問題即會被系統(tǒng)關閉。

接入流程

1、申請測試partner和partner_key,并參考基本注意事項。

2、提供第三方接口用于接收醫(yī)生回復通知、問題關閉通知。

3、同步第三方賬戶信息(即調用賬號同步/登陸接口),對于新用戶發(fā)起一次即可。

4、第三方創(chuàng)建眾包問題(由系統(tǒng)分配科室,或由第三方自主選擇科室)。

5、通過管理后臺模擬醫(yī)生回復問題, 第三方接口問題的回復通知,或者根據需求由春雨人員配合回復醫(yī)生問題。

6、第三方提交用戶追問。

7、第三方發(fā)起問題關閉,并接收問題關閉通知。

8、測試完后,聯系春雨人員開通正式環(huán)境賬戶后即可,第三方需要提供接收業(yè)務警報的郵箱地址。

9、完整的問診流程需要結合通用接口來實現

創(chuàng)建眾包問題接口

URL: /cooperation/server/free_problem/create

請求方式: POST

請求參數:

名稱 說明 類型 長度 必要 備注
user_id 用戶名 String 32 用戶唯一標識,合作方定義(可為字母、數字、下劃線或其組合)
partner 合作方標識 String 32 我要申請
content 為用戶提問內容列表 String 5120 數據結構,其中 patient_meta 不能傳遞多次,以第一次內容的為準。
sign 簽名 String 32 必須在服務器端生成 生成方法
atime 簽名時間戳 Long 64 當前UNIX TIMESTAMP簽名時間戳 (如:137322417)
clinic_no 需要分配的科室號 String 20 科室

返回:

名稱 說明 類型 長度 必要 備注
error 錯誤碼 Int 32 0 代表成功,其它 代表異常
error_msg 異常信息 String
problem_id 問題編號 Int 32 當 error 為 0 時返回創(chuàng)建的問題 ID

post數據示例

            
              {
                "user_id": "test_user",
                "partner": "test",
                "content": "[{\"type\": \"patient_meta\",\"age\": \"20歲\",\"sex\": \"男\(zhòng)"},{\"type\": \"text\",\"text\": \"創(chuàng)建免費問診問題測試\"}]",
                "sign": "b26144805c3f88f4",
                "atime": "1608207611"
              }
            
          

響應示例

            
              {
                "error": 0,
                "problem_id": 443258121
              }
            
          

眾包升級服務

簡介

即春雨平臺會將用戶問題智能分配給特定醫(yī)生等級或特定醫(yī)院等級的醫(yī)生;比起普通眾包服務,眾包升級具備更優(yōu)質的服務質量。

當用戶發(fā)起提問,春雨平臺首先對匹配的醫(yī)院或醫(yī)生等級進行篩選,而后進行智能分診,若在1小時內沒有回復,系統(tǒng)即自動關閉該問題。

接入流程

創(chuàng)建眾包升級問題接口

URL: /cooperation/server/problem/create_paid_problem/

請求方式: POST

請求參數:

名稱 說明 類型 長度 必要 備注
user_id 用戶ID String 32 用戶唯一標識,合作方定義(可為字母、數字、下劃線或其組合)
partner 合作方標識 String 32 我要申請
content 問題內容 String 5120 數據結構,其中 patient_meta 不能傳遞多次,以第一次內容的為準。
sign 簽名 String 32 必須在服務器端生成 生成方法
atime 時間戳 Long 64 當前UNIX TIMESTAMP簽名時間戳 (如:137322417)
partner_order_id 合作方支付ID String 32 唯一標識本次支付行為
pay_type 付費升級類型 String 32 二甲醫(yī)生:
qc_hospital_common
三甲醫(yī)生:
qc_hospital_upgrade
clinic_no 需要分配的科室號 String 10 科室

返回:

名稱 說明 類型 長度 必要 備注
error 錯誤碼 Int 0 代表成功,其它 代表異常
error_msg 異常信息 String
problem_id 問題編號 Int 64 當 error 為 0 時返回創(chuàng)建的問題 ID

post數據示例

            
              {
                "user_id": "test_user",
                "partner": "test",
                "content": "[{\"type\": \"patient_meta\",\"age\": \"20歲\",\"sex\": \"男\(zhòng)"},{\"type\": \"text\",\"text\": \"創(chuàng)建眾包升級問診問題測試\"}]",
                "sign": "b26144805c3f88f4",
                "atime": "1608207611",
                "partner_order_id": "000001",
                "pay_type": "qc_hospital_upgrade"
              }
            
          

響應示例

            
              {
                "error": 0,
                "error_msg": "",
                "problem_id": 443258122
              }
            
          

眾包升級問題退款接口

退款條件:醫(yī)生未回答情況下才可調用該接口實現退款

URL: /cooperation/server/problem/refund

請求方式: POST

請求參數:

名稱 說明 類型 長度 必要 備注
user_id 用戶ID String 32 用戶唯一標識,合作方定義(可為字母、數字、下劃線或其組合)
partner 合作方標識 String 32 我要申請
sign 簽名 String 32 必須在服務器端生成 生成方法
atime 時間戳 Long 64 當前UNIX TIMESTAMP簽名時間戳 (如:137322417)
problem_id 問題ID Int 64

返回:

名稱 說明 類型 長度 必要 備注
error 錯誤碼 Int 0 代表成功,其它 代表異常
error_msg 異常信息 String

post數據示例

            
              {
                "user_id": "test_user",
                "problem_id": "443258127",
                "partner": "test",
                "sign": "5a236b488f7eaacc",
                "atime": "1608208460"
              }
            
          

響應示例

            
              {
                "error": 0,
                "error_msg": ""
              }
            
          

定向圖文服務

簡介

指用戶付費購買指定醫(yī)生的圖文咨詢服務。

包括四種產品形態(tài):找醫(yī)生/名醫(yī)咨詢/推薦醫(yī)生/搜索醫(yī)生,具體請參見下方的接口說明。

包含兩種服務標準:普通定向咨詢和名醫(yī)咨詢,普通定向咨詢指用戶購買指定醫(yī)生的圖文咨詢,醫(yī)生通過圖文形式耐心細致的解答用戶健康問題,最多30次交互/醫(yī)生首次回復48H后問題關閉;名醫(yī)咨詢是指由春雨平臺精選的各個??祁I域的大牌專家資源,用戶付費購買后,專家將以圖文形式提供明確、放心的診療建議;需要注意的是,名醫(yī)咨詢最多10次交互/醫(yī)生首次回復48H后問題關閉。

接入流程

1、申請測試 partner和partner_key,并參考基本注意事項。

2、提供第三方接口用于接收醫(yī)生回復通知、問題關閉通知。

3、同步第三方賬戶信息,對于新用戶發(fā)起一次即可。

4、第三方查詢推薦醫(yī)生,獲取醫(yī)生列表。

5、第三方創(chuàng)建付費問診記錄,并引導用戶在第三方APP內進行付費(付費流程由第三方自己實現)。

6、第三方發(fā)送付費成功通知,春雨創(chuàng)建付費問題后返回相關問題信息給第三方。

7、第三方調用相關接口進行問題交互,方法同眾包問題交互一樣。

8、第三方接收問題關閉通知,觸發(fā)方式:第三方主動發(fā)起 或 春雨醫(yī)生拒絕問題。

9、測試完畢后,聯系春雨人員開通正式環(huán)境賬戶后即可,第三方需要提供接收業(yè)務警報的郵箱地址。

10、第三方開發(fā)定向問診需用以下接口結合通用接口來完善整個流程。

找醫(yī)生接口

說明:第三方根據一級科室編號查詢醫(yī)生,獲取醫(yī)生列表;該接口可借助篩選名醫(yī)來實現名醫(yī)咨詢服務,若不篩選名醫(yī)將返回春雨普通醫(yī)生和名醫(yī)

URL: /cooperation/server/doctor/get_clinic_doctors

請求方式: POST

請求參數:

名稱 說明 類型 長度 必要 備注
partner 合作方標識 String 32 我要申請
sign 簽名 String 32 必須在服務器端生成 生成方法
user_id 用戶名 String 32 用戶唯一標識,合作方定義(可為字母、數字、下劃線或其組合)
atime 簽名時間戳 Long 64 當前UNIX TIMESTAMP簽名時間戳 (如:137322417)
start_num 開始數 Int 32 翻頁時的起始序列號,舉例:比如從第40個醫(yī)生開始,就意味著獲取第40-60的醫(yī)生
count 每次取的醫(yī)生數 Int 32 取值范圍1-20
clinic_no 科室編號 String 一級科室;科室信息請查看科室劃分
second_class_clinic_no 二級科室編號 String 二級科室;該字段有值時忽略一級科室字段
hospital_id 醫(yī)院id String
famous_doctor 是否篩選名醫(yī) Int 32 接受值:0:否, 1:是
query_text 查找參數 String 100 搜索詞(癥狀,疾病,醫(yī)院,科室,醫(yī)生名)
province 省份 String 具體查看
city 城市 String 具體查看
title 職稱 String 職稱篩選,可選項[主任醫(yī)師, 副主任醫(yī)師, 主治醫(yī)師, 醫(yī)師, 心理咨詢師, 公共營養(yǎng)師];可多選,使用'|'分隔
hospital_grade 醫(yī)院等級 String 醫(yī)院等級篩選,可選項[三級甲等、三級乙等、三級丙等、三級其他、二級甲/乙/丙等、二級其他、二級未評、一級甲/乙/丙等、??芣;可多選,使用'|'分隔
min_price 最低圖文價格 Int 單位元;不傳則不限制最低價
max_price 最高圖文價格 Int 單位元;不傳則不限制最高價
service_score 最低服務指數 Int
speed_score 最低速度指數 Int
solution_score 最低專業(yè)指數 Int
service_type 服務類型 String 不填為默認獲取開通圖文服務的醫(yī)生;值為inquiry表示獲取開通普通電話服務的醫(yī)生,值為expert_call表示獲取開通專家電話服務的醫(yī)生,值為expert_register_apply表示獲取開通專家預約掛號服務的醫(yī)生;支持多選,多選時以|分隔
is_active 是否在線 Int 傳1時篩選在線醫(yī)生
is_top_100_hospital 是否百強醫(yī)院 Int 傳1時篩選百強醫(yī)院醫(yī)生

返回:

名稱 說明 類型 長度 必要 備注
doctors 醫(yī)生list array
clinic_name 科室名稱 String
second_clinic_name 二級科室名稱 String
hospital_grade 醫(yī)院等級 String 如:三級甲等
good_at 擅長 String
hospital_name 醫(yī)院名稱 String
image 醫(yī)生頭像 String 200 醫(yī)生照片的 url
id 醫(yī)生id String
name 醫(yī)生姓名 String
price 價格 Int 單位為分,不需要緩存醫(yī)生價錢信息,該信息必須實時獲取
purchase_num 購買數量 Int
title 職稱 string
is_famous_doctor 是否是名醫(yī)咨詢 bool 名醫(yī)咨詢10次交互/48h后問題關閉;普通定向問題30次交互/48h后問題關閉
tel_online 是否可以預約電話問診 bool 是否支持電話問診下單
tel_price 電話問診時長對應的價格 string json格式,key為時長,value為對應的價格,單位分。-1為此時長服務未開通
expert_call_price_fen 專家電話價格 Int 單位為分,-1為此服務未開通
expert_register_price_fen 專家預約掛號價格 Int 單位為分,-1為此服務未開通
is_active 是否在線 bool
is_top_100_hospital 是否百強醫(yī)院 bool
good_rate 好評率 string 最高100,如‘98.8’
error 錯誤碼 Int 32 0 代表成功,其它 代表異常
error_msg 異常信息 String

post數據示例

    
      {
        "clinic_no": "1",
        "famous_doctor": "1",
        "user_id": "test_user",
        "start_num": "20",
        "count": "20",
        "partner": "test",
        "sign": "24c0b782f23e71f1",
        "atime": "1608209559"
      }
    
  

響應示例

    
      {
        "error": 0,
        "doctors": [{
          "clinic_name": "兒科",
          "second_clinic_name": "小兒科",
          "good_at": "發(fā)育遲緩、頭痛、遺傳代謝病",
          "hospital_name": "北京第一醫(yī)院",
          "hospital_grade": "三級甲等",
          "id": "0000001",
          "image": "https://resource.chunyu.mobi/@/media/images/image1.jpg",
          "name": "測試醫(yī)生",
          "price": 100,
          "purchase_num": 771,
          "title": "主治醫(yī)師",
          "is_famous_doctor": false,
          "tel_online": false,
          "tel_price": "{\"10\": -1, \"15\": -1, \"20\": -1, \"30\": -1}"
        },
        {
          "clinic_name": "兒科",
          "second_clinic_name": "小兒科",
          "good_at": "多動癥、小兒癲癇、抽動癥",
          "hospital_name": "解放軍總醫(yī)院",
          "hospital_grade": "三級甲等",
          "id": "0000002",
          "image": "https://resource.chunyu.mobi/@/media/images/image2.jpg",
          "name": "測試醫(yī)生2",
          "price": 10000,
          "purchase_num": 1000,
          "title": "主任醫(yī)師",
          "is_famous_doctor": true,
          "tel_online": true,
          "tel_price": "{\"10\": 16000, \"15\": 24000, \"20\": 40000, \"30\": -1}"
        }]
      }
    
  

推薦醫(yī)生接口

說明:用戶輸入提問內容后,春雨智能推薦一批擅長解答用戶問題的醫(yī)生列表;此服務可作為找醫(yī)生服務的補充,一方面避免用戶選錯科室醫(yī)生問診,另外推薦的醫(yī)生回復時效性較好

URL: /cooperation/server/doctor/get_recommended_doctors

請求方式: POST

請求參數:

名稱 說明 類型 長度 必要 備注
ask 首次提問內容文本 String 患者首問字數請限制在10-500字
partner 合作方標識 String 32 我要申請
sign 簽名 String 32 必須在服務器端生成 生成方法
user_id 用戶名 String 32 用戶唯一標識,合作方定義(可為字母、數字、下劃線或其組合)
atime 簽名時間戳 Long 64 當前UNIX TIMESTAMP簽名時間戳 (如:137322417)

返回:

名稱 說明 類型 長度 必要 備注
doctors 醫(yī)生list array
clinic_name 科室名稱 String
second_clinic_name 二級科室名稱 String
hospital_grade 醫(yī)院等級 String 如:三級甲等
good_at 擅長 String
hospital_name 醫(yī)院名稱 String
image 醫(yī)生頭像 String 200 醫(yī)生照片的 url
id 醫(yī)生id String
name 醫(yī)生姓名 String
price 價格 Int 單位為分,不需要緩存醫(yī)生價錢信息,該信息必須實時獲取
purchase_num 購買數量 Int
title 職稱 string
is_famous_doctor 是否是名醫(yī)咨詢 bool 名醫(yī)咨詢10次交互/48h后問題關閉;普通定向問題30次交互/48h后問題關閉
tel_online 是否可以預約電話問診 bool 是否支持電話問診下單
tel_price 電話問診時長對應的價格 string json格式,key為時長,value為對應的價格,單位分。-1為此時長服務未開通
error 錯誤碼 Int 32 0 代表成功,其它 代表異常
error_msg 異常信息 String

post數據示例

    
      {
        "ask": "孩子發(fā)燒總不好",
        "user_id": "test_user",
        "partner": "test",
        "sign": "c30cd1025b2e7912",
        "atime": "1608260984"
      }
    
  

響應示例

    
      {
        "error": 0,
        "doctors": [{
          "clinic_name": "兒科",
          "second_clinic_name": "小兒科",
          "good_at": "發(fā)育遲緩、頭痛、遺傳代謝病",
          "hospital_name": "北京第一醫(yī)院",
          "hospital_grade": "三級甲等",
          "id": "0000001",
          "image": "https://resource.chunyu.mobi/@/media/images/image1.jpg",
          "name": "測試醫(yī)生",
          "price": 100,
          "purchase_num": 771,
          "title": "主治醫(yī)師",
          "is_famous_doctor": false,
          "tel_online": false,
          "tel_price": "{\"10\": -1, \"15\": -1, \"20\": -1, \"30\": -1}"
        },
        {
          "clinic_name": "兒科",
          "second_clinic_name": "小兒科",
          "good_at": "多動癥、小兒癲癇、抽動癥",
          "hospital_name": "解放軍總醫(yī)院",
          "hospital_grade": "三級甲等",
          "id": "0000002",
          "image": "https://resource.chunyu.mobi/@/media/images/image2.jpg",
          "name": "測試醫(yī)生2",
          "price": 10000,
          "purchase_num": 1000,
          "title": "主任醫(yī)師",
          "is_famous_doctor": true,
          "tel_online": true,
          "tel_price": "{\"10\": 16000, \"15\": 24000, \"20\": 40000, \"30\": -1}"
        }]
      }
    
  

搜索醫(yī)生接口

說明:按照疾病、癥狀、醫(yī)院、科室、醫(yī)生名搜索醫(yī)生(此接口為搜索接口非過濾接口,返回的搜索結果可能與搜索詞存在偏差),一次返回20個醫(yī)生

URL: /cooperation/server/doctor/search_doctor/

請求方式: POST

請求參數:

名稱 說明 類型 長度 必要 備注
user_id 用戶id String 32 用戶唯一標識,合作方定義(可為字母、數字、下劃線或其組合)
partner 合作方標識 String 32 partner_name
atime 時間戳 Long 64 當前UNIX TIMESTAMP簽名時間戳 (如:137322417)
sign 簽名 String 32 必須在服務器端生成 生成方法
query_text 查找參數 String 100 搜索詞(癥狀,疾病,醫(yī)院,科室,醫(yī)生名)
page 頁碼 int 32 取值范圍1-10
province 省份 String 具體查看
city 城市 String 具體查看
title 職稱 String 職稱篩選,可選項[主任醫(yī)師, 副主任醫(yī)師, 主治醫(yī)師, 醫(yī)師, 心理咨詢師, 公共營養(yǎng)師]
min_price 最低圖文價格 不傳則不限制最低價
max_price 最高圖文價格 不傳則不限制最高價
service_type 服務類型 String 不填為默認獲取開通圖文服務的醫(yī)生;值為inquiry表示獲取開通普通電話服務的醫(yī)生,值為expert_call表示獲取開通專家電話服務的醫(yī)生,值為expert_register_apply表示獲取開通專家預約掛號服務的醫(yī)生;支持多選,多選時以|分隔

返回:

名稱 說明 類型 長度 必要 備注
doctors 醫(yī)生list array
clinic_name 科室名稱 String
second_clinic_name 二級科室名稱 String
hospital_grade 醫(yī)院等級 String 如:三級甲等
good_at 擅長 String
hospital_name 醫(yī)院名稱 String
image 醫(yī)生頭像 String 200 醫(yī)生照片的 url
id 醫(yī)生id String
name 醫(yī)生姓名 String
price 價格 Int 單位為分,不需要緩存醫(yī)生價錢信息,該信息必須實時獲取
purchase_num 購買數量 Int
title 職稱 string
is_famous_doctor 是否是名醫(yī)咨詢 bool 名醫(yī)咨詢10次交互/48h后問題關閉;普通定向問題30次交互/48h后問題關閉
tel_online 是否可以預約電話問診 bool 是否支持電話問診下單
tel_price 電話問診時長對應的價格 string json格式,key為時長,value為對應的價格,單位分。-1為此時長服務未開通
expert_call_price_fen 專家電話價格 Int 單位為分,-1為此服務未開通
expert_register_price_fen 專家預約掛號價格 Int 單位為分,-1為此服務未開通
error 錯誤碼 Int 32 0 代表成功,其它 代表異常
error_msg 異常信息 String

post數據示例

    
      {
        "user_id": "test_user",
        "query_text": "頭疼",
        "famous_doctor": "1",
        "page": "1",
        "partner": "test",
        "sign": "d47372cb2e28ba13",
        "atime": "1608261465"
      }
    
  

響應示例

    
      {
        "error": 0,
        "doctors": [{
          "clinic_name": "兒科",
          "second_clinic_name": "小兒科",
          "good_at": "發(fā)育遲緩、頭痛、遺傳代謝病",
          "hospital_name": "北京第一醫(yī)院",
          "hospital_grade": "三級甲等",
          "id": "0000001",
          "image": "https://resource.chunyu.mobi/@/media/images/image1.jpg",
          "name": "測試醫(yī)生",
          "price": 100,
          "purchase_num": 771,
          "title": "主治醫(yī)師",
          "is_famous_doctor": false,
          "tel_online": false,
          "tel_price": "{\"10\": -1, \"15\": -1, \"20\": -1, \"30\": -1}"
        },
        {
          "clinic_name": "兒科",
          "second_clinic_name": "小兒科",
          "good_at": "多動癥、小兒癲癇、抽動癥",
          "hospital_name": "解放軍總醫(yī)院",
          "hospital_grade": "三級甲等",
          "id": "0000002",
          "image": "https://resource.chunyu.mobi/@/media/images/image2.jpg",
          "name": "測試醫(yī)生2",
          "price": 10000,
          "purchase_num": 1000,
          "title": "主任醫(yī)師",
          "is_famous_doctor": true,
          "tel_online": true,
          "tel_price": "{\"10\": 16000, \"15\": 24000, \"20\": 40000, \"30\": -1}"
        }]
      }
    
  

創(chuàng)建定向問題

說明:付費記錄有效時間為1小時

URL: /cooperation/server/problem/create_oriented_problem/

請求方式: POST

請求參數:

名稱 說明 類型 長度 必要 備注
doctor_id 購買的醫(yī)生id String
content 首次提問內容 String 5120 數據結構,其中 patient_meta 不能傳遞多次,以第一次內容的為準。
partner 合作方標識 String 32 我要申請
partner_order_id 合作方支付ID String 需要是唯一標識的支持字母與數字組合
price 訂單價格 Int 單位為分
user_id 用戶名 String 32 用戶唯一標識,合作方定義(可為字母、數字、下劃線或其組合)
sign 簽名 String 32 必須在服務器端生成 生成方法
atime 簽名時間戳 Long 64 當前UNIX TIMESTAMP簽名時間戳 (如:137322417)

返回:

名稱 說明 類型 長度 必要 備注
problem_id 問題id int
error 錯誤碼 Int 32 0 代表成功,其它 代表異常
error_msg 異常信息 String

post數據示例

    
      {
        "doctor_id": "clinic_web_ae8068a4df5f189e",
        "content": "[{\"type\": \"patient_meta\",\"age\": \"20歲\",\"sex\": \"男\(zhòng)"},{\"type\": \"text\",\"text\": \"測試創(chuàng)建定向問診問題\"}]",
        "partner": "test",
        "partner_order_id": "000001",
        "price": "200",
        "user_id": "test_user",
        "sign": "162c86f9d6c94a65",
        "atime": "1608262345"
      }
    
  

響應示例

    
      {
        "problem_id": 443258142,
        "error": 0,
        "error_msg": ""
      }
    
  

付費問題退款

說明:第三方可借助該接口實現用戶主動發(fā)起付費問題退款,退款只能在醫(yī)生未回答的情況下才能成功。

URL: /cooperation/server/problem/refund

請求方式: POST

請求參數:

名稱 說明 類型 長度 必要 備注
user_id 用戶ID String 用戶唯一標識,合作方定義(可為字母、數字、下劃線或其組合)
partner 合作方標識 String 我要申請
sign 簽名 String 必須在服務器端生成 生成方法
problem_id 問題ID Long 64
atime 簽名時間戳 Long 64 當前UNIX TIMESTAMP簽名時間戳 (如:137322417)

返回:

名稱 說明 類型 長度 必要 備注
error 錯誤碼 Int 32 0 代表成功,其它 代表異常
error_msg 異常信息 String

post數據示例

    
      {
        "user_id": "test_user",
        "problem_id": "443258127",
        "partner": "test",
        "sign": "5a236b488f7eaacc",
        "atime": "1608208460"
      }
    
  

響應示例

    
      {
        "error": 0,
        "error_msg": ""
      }
    
  

圖文急診服務

簡介

急診服務是一項高效的圖文問診服務。當用戶提問后,能夠得到醫(yī)生快速回復(60秒),圖文急診達到20次交互或醫(yī)生首次回復30分鐘后問題關閉。

服務價格以商務合同中敲定的為準,在接口參數中不做體現。

服務流程

1. 先獲取圖文急診信息

2. 根據獲取到的科室和價格信息創(chuàng)建圖文急診(注意服務時間)

獲取圖文急診信息接口

說明:獲取春雨圖文急診開通的相關信息,包括開通的時間,價格,科室

URL: /cooperation/server/problem/get_emergency_graph_info/

請求方式:POST

請求參數:

名稱 說明 類型 長度 必要 備注
user_id 用戶ID String 32 用戶唯一標識,合作方定義(可為字母、數字、下劃線或其組合)
partner 合作方標識 String 32 partner_name
sign 簽名 String 32 必須在服務器端生成 生成方法
atime 時間戳 Long 64 當前UNIX TIMESTAMP簽名時間戳 (如:137322417)

返回:

名稱 說明 類型 長度 必要 備注
error 結果 Int 0 成功,1 失敗
clinic_info 科室信息list Array
clinic_no 科室號 str 10 '1':婦科, '15':眼科, '21':產科, 'fa' :小兒科,'ha':皮膚科
clinic_name 科室名 str 32
begin 服務開始時間 str 10 格式為24小時制
end 服務結束時間 str 10 格式為24小時制
disabled 是否可用 Boolean 32 沒有值班醫(yī)生時服務不可用,此字段為True, 可用時無此字段。不存在則默認為False

post數據示例

    
      {
        "user_id": "test_user",
        "partner": "test",
        "sign": "6de9382451be403f",
        "atime": "1608276441"
      }
    
  

響應示例

    
      {
        "error": 0,
        "clinic_info": [
          {
            "clinic_no": "fa",
            "clinic_name": "小兒科",
            "begin": "07:00",
            "end": "15:45",
          },
          {
            "clinic_no": "ha",
            "clinic_name": "皮膚科",
            "disabled": true
          }
        ]
      }
    
  

創(chuàng)建急診問題接口

說明:用戶確定需要問診的急診科室,調用此接口生成付費急診問題

URL: /cooperation/server/problem/create_emergency_graph/

請求方式:POST

請求參數:

名稱 說明 類型 長度 必要 備注
user_id 用戶ID String 32 用戶唯一標識,合作方定義(可為字母、數字、下劃線或其組合)
partner 合作方標識 String 32 partner_name
content 問題內容 String 5120 數據結構,其中 patient_meta 不能傳遞多次,以第一次內容的為準。
sign 簽名 String 32 必須在服務器端生成 生成方法
atime 時間戳 Long 64 當前UNIX TIMESTAMP簽名時間戳 (如:137322417)
partner_order_id 合作方支付ID String 32 唯一標識本次支付行為
clinic_no 科室號 String 10 必須是春雨開通急診的科室

返回:

名稱 說明 類型 長度 必要 備注
problem_id 問題id Int 64 創(chuàng)建的問題ID
error 錯誤碼 Int
error_msg 錯誤原因 String

post數據示例

    
      {
        "user_id": "test_user",
        "content": "[{\"type\": \"patient_meta\",\"age\": \"15歲\",\"sex\": \"男\(zhòng)"},{\"type\": \"text\",\"text\": \"測試創(chuàng)建急診問診問題\"}]",
        "clinic_no": "fa",
        "partner_order_id": "1700",
        "partner": "test",
        "sign": "64bff638925fecea",
        "atime": "1608284147"
      }
    
  

響應示例

    
      {
        "problem_id": 443258195,
        "error": 0,
        "error_msg": ""
      }
    
  

通用接口

問題追問接口

說明:通過此接口實現用戶對醫(yī)生的追問

URL: /cooperation/server/problem_content/create

請求方式: POST

請求參數:

名稱 說明 類型 長度 必要 備注
user_id 用戶名 String 32 用戶唯一標識,合作方定義(可為字母、數字、下劃線或其組合)
partner 合作方標識 String 32 我要申請
problem_id 問題ID Int 32
content String String 數據結構,可以傳遞 patient_meta 之外的其余三種類型的contentItem。
sign 簽名 String 32 必須在服務器端生成 生成方法
atime 簽名時間戳 Long 64 當前UNIX TIMESTAMP簽名時間戳 (如:137322417)

返回:

名稱 說明 類型 長度 必要 備注
content_id 回復編號 Long 64 當前回復內容的id
error 錯誤碼 Int 32 0 代表成功,其它 代表異常
error_msg 異常信息 String

post數據示例

    
      {
        "user_id": "test_user",
        "partner": "test",
        "problem_id": "443258196",
        "content": "[{\"type\": \"text\",\"text\": \"測試追問\"}]",
        "sign": "1bad37f433370896",
        "atime": "1608285064"
      }
    
  

響應示例

    
      {
        "error": 0,
        "content_id": 11536441
      }
    
  

問題詳情接口

說明:通過此接口獲取用戶提問問題的詳情

URL: /cooperation/server/problem/detail

請求方式: POST

請求參數:

名稱 說明 類型 長度 必要 備注
user_id Int String 用戶唯一標識,合作方定義(可為字母、數字、下劃線或其組合)
partner 合作方標識 String 我要申請
problem_id 問題ID Int 64
sign 簽名 String 必須在服務器端生成 生成方法
atime 簽名時間戳 Long 64 當前UNIX TIMESTAMP簽名時間戳 (如:137322417)
last_content_id 最后一個回復編號 Long 64 參考問題追問返回的content_id,會返回所有大于此編號的回復列表

返回:

名稱 說明 類型 長度 必要 備注
problem 問題信息 dict
id 問題 ID Int
status 問題狀態(tài) String

n 新問題

a 已認領---醫(yī)生認領,等待醫(yī)生回答

s 已回復

c 已關閉

p 被舉報---因為含有違禁詞/辱罵醫(yī)生等原因被舉報

狀態(tài)轉換示意圖 點擊查看

ask 提問內容 String 20 提問內容
clinic_no 問題所在的科室號 String 20 N
star 問題星級 Int 32 (4,5 為好評, 1,2 為差評,3 為中評,-1 暫未 評價)
interaction 交互次數 Int 32 詳細定義:點擊查看
content 內容 array
id 回復編號 Long
created_time_ms String 創(chuàng)建問題時間戳
type 類型 String 200 p是用戶回復,d是醫(yī)生回復
content array 同問題追問的 content數據結構
subtype string 20 返回值標識為summary,則表示這條醫(yī)生回復為醫(yī)生總結信息;當醫(yī)生回復內容為非總結信息時,不返回這個字段
doctor 醫(yī)生信息 dict 醫(yī)生信息
id 醫(yī)生 ID String
name 醫(yī)生姓名 String 200
image 醫(yī)生頭像 String 200 醫(yī)生照片的 url
title 醫(yī)生職稱 String
level_title 帶醫(yī)院級別的醫(yī)生職稱 String 帶醫(yī)院級別的醫(yī)生職稱
clinic 科室號 String 20 問題列表
hospital 醫(yī)院名字 String 100
error 錯誤碼 Int 32 0 代表成功,其它代表異常
error_msg 異常信息 String

post數據示例

    
      {
        "user_id": "test_user",
        "problem_id": "443258234",
        "partner": "test",
        "sign": "d3ba697b786a9a17",
        "atime": "1608449384"
      }
    
  

響應示例

    
      {
        "problem": {
          "id": 443258234,
          "status": "a",
          "ask": "醫(yī)生你好,測試創(chuàng)建眾包升級問題(男,40歲)",
          "clinic_no": "2",
          "star": -1,
          "level": "",
          "has_assessed": false,
          "interaction": 1
        },
        "content": [
          {
            "id": 11536625,
            "type": "p",
            "content": "[{\"text\": \"醫(yī)生你好,測試創(chuàng)建眾包升級問題(男,40歲)\", \"type\": \"text\"}]",
            "created_time_ms": 1608450103000
          },
          {
            "id": 11536628,
            "type": "d",
            "content": "[{\"text\": \"快速醫(yī)生回復,時間: 2020-12-20 15:42:02.676034\", \"type\": \"text\"}]",
            "created_time_ms": 1608450123000
          },
          {
            "id": 11536629,
            "type": "p",
            "content": "[{\"text\": \"測試追問\", \"type\": \"text\"}]",
            "created_time_ms": 1608450134000
          }
        ],
        "doctor": {
          "id": "clinic_web_ae8068a4df5f189e",
          "name": "測試醫(yī)生",
          "image": "https://test.chunyutianxia.com/media/images/fc7d/8968fe2e5cb5?imageMogr2/thumbnail/150x",
          "title": "主治醫(yī)師",
          "level_title": "二級甲等醫(yī)院主治醫(yī)師",
          "clinic": "2",
          "hospital": "上饒市婦幼保健院"
        },
        "error": 0,
        "error_msg": ""
      }
    
  

醫(yī)生詳情接口

說明:醫(yī)生詳細信息以此接口返回的數據為準

URL: /cooperation/server/doctor/detail

請求方式: POST

請求參數:

名稱 說明 類型 長度 必要 備注
user_id 用戶名 String 32 用戶唯一標識,合作方定義(可為字母、數字、下劃線或其組合)
partner 合作方標識 String 32 我要申請
doctor_id 醫(yī)生 ID String 32 醫(yī)生 ID
sign 簽名 String 32 必須在服務器端生成 生成方法
atime 簽名時間戳 Long 64 當前UNIX TIMESTAMP簽名時間戳 (如:137322417)

返回:

名稱 說明 類型 長度 必要 備注
id 醫(yī)生 ID String 32 醫(yī)生 ID
name 姓名 String 32 姓名
image 頭像地址 String 頭像地址
title 職稱 String 職稱
clinic_name 科室 String 科室
hospital 醫(yī)院名字 String 醫(yī)院名字
hospital_grade 醫(yī)院級別 String 醫(yī)院級別
good_at 擅長領域 String 擅長領域
recommend_rate 推薦指數 String 最高100
description 專家簡介 String 專家簡介
price 圖文咨詢 Int 單位為分
solution_score 專業(yè)度指數 int 最高100
good_rate 好評率 String 最高100,如‘98.8’
tags 醫(yī)生標簽 Array String Array
reward_num 送心意數量 int
reply_num 咨詢數 int
fans_num 粉絲數 int
is_famous_doctor 是否是名醫(yī)咨詢 bool 名醫(yī)咨詢10次交互/48h后問題關閉;普通定向問題30次交互/48h后問題關閉
tel_price 電話咨詢價格 json key:時長(單位:分鐘),value:價格(單位:分)
tel_online 電話咨詢狀態(tài) bool 醫(yī)生的電話咨詢是否開通
expert_call_price_fen 專家電話價格 Int 單位為分,-1為此服務未開通
expert_register_price_fen 專家預約掛號價格 Int 單位為分,-1為此服務未開通
education 教育背景 String
achievement 學術成果 String
welcome 醫(yī)生寄語 String
license_no 執(zhí)業(yè)證書編號 String "1234*********65"
is_active 是否在線 Bool
error 錯誤碼 Int 32 0 代表成功,其它代表異常
error_msg 異常信息 String

post數據示例

    
      {
        "user_id": "test_user",
        "doctor_id": "04c580dbeb2007220123",
        "partner": "test",
        "sign": "4d7de1d90f54c62d",
        "atime": "1608518154"
      }
    
  

響應示例

    
      {
        "id": "04c580dbeb2007220123",
        "name": "測試醫(yī)生",
        "image": "https://resource.chunyu.mobi/@/media/images/99b3/5f9530432279?imageMogr2/thumbnail/150x",
        "title": "主治醫(yī)師",
        "clinic_name": "小兒科",
        "hospital": "北京301醫(yī)院",
        "hospital_grade": "三級甲等",
        "good_at": "臨床工作20多年,經驗豐富,擅長小兒呼吸道感染等診治。",
        "solution_score": 98,
        "recommend_rate": 88,
        "good_rate": 92.8,
        "description": "",
        "price": 2500,
        "tags": [
          "百強醫(yī)院",
          "從業(yè)26年",
          "北京市市"
        ],
        "reward_num": 7,
        "reply_num": 942,
        "fans_num": 55,
        "is_famous_doctor": false,
        "education": "1994年上海第二醫(yī)科大學兒科系畢業(yè),2006年去香港瑪麗醫(yī)院進修。",
        "achievement": "",
        "welcome": "歡迎關注我的小兒科個人診所,希望能為你提供健康方面的幫助。",
        "tel_price": "{\"10\": 1000, \"15\": -1, \"20\": -1, \"30\": -1}",
        "tel_online": true,
        "error": 0,
        "error_msg": ""
      }
    
  

醫(yī)生總結信息

說明:

在咨詢過程中或服務關閉后7天內,醫(yī)生可通過圖文形式向用戶下發(fā)總結。醫(yī)生總結是醫(yī)生的可選交流方式,并非所有問題都會下發(fā)總結。

總結信息可通過兩種方式傳達到合作方:1、通過【醫(yī)生回復通知接口】以回調形式同步;2、通過【問題詳情接口】同步。在這兩種方式中,會對醫(yī)生總結進行特殊標識,具體請參見接口規(guī)范。

醫(yī)生可多次撰寫總結,但春雨平臺側每個問題只會保留一份總結,以最后一次為準(即推送可能收到多次,但問題詳情接口里只會體現一份總結,合作方可酌情設計該功能)。

查詢問題分配科室接口

說明:該接口可用于查詢眾包(升級)問題將會被分配的科室號;春雨支持創(chuàng)建眾包(升級)問題時指定科室問診,合作方創(chuàng)建問題時傳給春雨科室信息,就會按傳遞的科室進行分診,以此實現用戶自主選擇科室;如果不傳則春雨自動分配; 另外如果合作方選擇的科室是錯誤的話,醫(yī)生側可將該問題轉診至正確的科室,最終顯示的分診科室可能與最初選擇不同。

URL: /cooperation/server/problem/get_problem_clinic_no/

請求方式: POST

請求參數:

名稱 說明 類型 長度 必要 備注
user_id 用戶ID String 32 用戶唯一標識,合作方定義(可為字母、數字、下劃線或其組合)
partner 合作方標識 String 32 我要申請
sign 簽名 String 32 必須在服務器端生成 生成方法
atime 時間戳 Long 64 當前UNIX TIMESTAMP簽名時間戳 (如:137322417)
ask 問題的文本 String 100 首次提問的問題文本

返回:

名稱 說明 類型 長度 必要 備注
clinic_no 結果 String 10 問題科室編號
error 錯誤碼 Int 32 0 代表成功,其它 代表異常
error_msg 異常信息 String

post數據示例

    
      {
        "user_id": "test_user",
        "partner": "test",
        "ask": "渾身發(fā)熱,沒勁",
        "sign": "fdb57eee1bb66c91",
        "atime": "1608518632"
      }
    
  

響應示例

    
      {
        "error": 0,
        "error_msg": "",
        "clinic_no": "aa"
      }
    
  

評價問題接口

服務細則

1、問題未關閉時,交互3次以上可進行評價

2、問題關閉后:關閉后30天內可以評價;接收評價的有效期為問題關閉后30天內,超過30天,不能再評價;測試環(huán)境的有效期為問題關閉后1小時

3、評價次數限制:每個問題僅支持接收一次評價數據

接口信息

URL: /cooperation/server/problem/assess

請求方式: POST

請求參數:

名稱 說明 類型 長度 必要 備注
user_id 用戶名 String 32 用戶唯一標識,合作方定義(可為字母、數字、下劃線或其組合)
partner 合作方標識 String 32 我要申請
problem_id 問題ID Int 32
assess_info 評價信息 String 32 數據結構,生成方式可參考數據結構
如:'{"level": "best", "tag_keys":["3201", "3102"]}'
level 評價等級 String 32 'best','good','bad'
tag_keys 評價標簽數組 Array 標簽必須與 level 匹配
content String String 數據結構,只能傳遞text類型的contentItem。
sign 簽名 String 32 必須在服務器端生成 生成方法
atime 簽名時間戳 Long 64 當前UNIX TIMESTAMP簽名時間戳 (如:137322417)
    
      {
        "bad": {
        "1101": '不友好',
        "1102": '不細致',
        "1201": '等好久沒回復',
        "1301": '完全聽不懂',
        "1302": '感覺不專業(yè)',
        "1303": '沒有幫助',}
        "good": {
        "2101": '希望更熱情',
        "2102": '希望更細致',
        "2201": '希望回復更快',
        "2301": '希望講得更透徹',}
        "best": {
        "3101": '態(tài)度非常好',
        "3102": '非常清楚',
        "3201": '回復很及時',
        "3301": '非常專業(yè)認真',
        "3302": '意見很有幫助',
        "3303": '非常敬業(yè)',}
      }
    
  

返回:

名稱 說明 類型 長度 必要 備注
error 錯誤碼 Int 32 0 代表成功,其它 代表異常
error_msg 異常信息 String

post數據示例

    
      {
        "user_id": "test_user",
        "partner": "test",
        "problem_id": "443258196",
        "assess_info": "{\"level\": \"best\", \"tag_keys\":[\"3201\", \"3102\"]}",
        "content": "[{\"type\": \"text\",\"text\": \"醫(yī)生解答的挺好的,給個好評。\"}]",
        "sign": "fdb57eee1bb66c91",
        "atime": "1608518632"
      }
    
  

響應示例

    
      {
        "error": 0,
        "error_msg": ""
      }
    
  

問題刪除接口

刪除問題后,"我的提問歷史"接口中,會刪除掉這個問題。

注意:問題未關閉時調用此接口時,會先關閉問題。請用戶確保問診完畢,不需要和醫(yī)生交互后使用。

URL: /cooperation/server/problem/delete

請求方式: POST

請求參數:

名稱 說明 類型 長度 必要 備注
user_id 用戶名 String 32 用戶唯一標識,合作方定義(可為字母、數字、下劃線或其組合)
partner 合作方標識 String 32 我要申請
problem_id 問題ID Int 32
sign 簽名 String 32 必須在服務器端生成 生成方法
atime 簽名時間戳 Long 64 當前UNIX TIMESTAMP簽名時間戳 (如:137322417)

返回:

名稱 說明 類型 長度 必要 備注
error 錯誤碼 Int 32 0 代表成功,其它 代表異常
error_msg 異常信息 String

post數據示例

    
      {
        "user_id": "test_user",
        "partner": "test",
        "problem_id": "443258241",
        "atime": "1608519397",
        "sign": "7d752c229c9cd583"
      }
    
  

響應示例

    
      {
        "error": 0,
        "error_msg": ""
      }
    
  

問題關閉接口

說明:第三方通過此接口主動關閉問題,主動關閉條件:狀態(tài)不是已關閉且醫(yī)生有回復

URL: /cooperation/server/problem/close

請求方式: POST

請求參數:

名稱 說明 類型 長度 必要 備注
user_id 用戶名 String 32 用戶唯一標識,合作方定義(可為字母、數字、下劃線或其組合)
partner 合作方標識 String 32 我要申請
problem_id 問題ID Int 32
sign 簽名 String 32 必須在服務器端生成 生成方法
atime 簽名時間戳 Long 64 當前UNIX TIMESTAMP簽名時間戳 (如:137322417)

返回:

名稱 說明 類型 長度 必要 備注
error 錯誤碼 Int 32 0 代表成功,其它 代表異常
error_msg 異常信息 String

post數據示例

    
      {
        "user_id": "test_user",
        "partner": "test",
        "problem_id": "443258242",
        "atime": "1608519713",
        "sign": "8fddaee19d525886"
      }
    
  

響應示例

    
      {
        "error": 0,
        "error_msg": ""
      }
    
  

我的提問歷史

說明:通過此接口獲取用戶的提問歷史

URL: /cooperation/server/problem/list/my

請求方式: POST

請求參數:

名稱 說明 類型 長度 必要 備注
user_id 用戶名 String 32 用戶唯一標識,合作方定義(可為字母、數字、下劃線或其組合)
partner 合作方標識 String 32 我要申請
start_num 開始數 Int 32 用于支持翻頁功能,從 0 開始計數
count 每次取的問題數 Int 32 最大200
sign 簽名 String 32 必須在服務器端生成 生成方法
atime 簽名時間戳 Long 64 當前UNIX TIMESTAMP簽名時間戳 (如:137322417)

返回:

名稱 說明 類型 長度 必要 備注
problem 問題信息 dict
id 問題 ID Int 32
status 問題狀態(tài) String

n 新問題

a 已認領---醫(yī)生認領,等待醫(yī)生回答

s 已回復

c 已關閉

p 被舉報---因為含有違禁詞/辱罵醫(yī)生等原因被舉報

狀態(tài)轉換示意圖 點擊查看

price 問題支付價格 Int 問題支付價格,單位: 元
to_doc 是否是針對醫(yī)生的定向提問 Boolean
title 問題標題 String 200 問題標題
ask 提問內容 String 20 提問內容
clinic_no 問題所在的科室號 String 20 N
clinic_name 問題所在的科室名字 String 100
has_answer 是否被醫(yī)生答復 Boolean
need_assess 問題是否需要被評價 Boolean
created_time_ms 創(chuàng)建時間的毫秒數 Long 64
created_time 創(chuàng)建時間的字符串格式 String '%Y-%m-%d %H: %M:%S'
star 問題星級 Int 32 (4,5 為好評, 1,2 為差評,3 為中評,-1 暫未 評價)
doctor 醫(yī)生信息 dict 醫(yī)生信息
id 醫(yī)生 ID String
name 醫(yī)生姓名 String 200
image 醫(yī)生頭像 String 200 醫(yī)生照片的 url
title 醫(yī)生職稱 String
level_title 帶醫(yī)院級別的醫(yī)生職稱 String 帶醫(yī)院級別的醫(yī)生職稱
clinic 科室號 String 20 問題列表
hospital 醫(yī)院名字 String 100

post數據示例

    
      {
        "user_id": "test_user",
        "start_num": "0",
        "count": "10",
        "partner": "test",
        "sign": "3bb28a7c0f4a463e",
        "atime": "1608520177"
      }
    
  

響應示例

    
      [{
        "problem": {
          "id": 443258245,
          "status": "a",
          "star": 5,
          "to_doc": false,
          "price": 6.0,
          "title": "醫(yī)生您好,測試創(chuàng)建眾包問題(...",
          "ask": "醫(yī)生您好,測試創(chuàng)建眾包問題(男,40歲)",
          "clinic_no": "2",
          "has_answer": true,
          "flag": "n",
          "created_time_ms": 1608519977000,
          "assess_remark": "挺好的,評價一下這個。",
          "clinic_name": "兒科",
          "created_time": "2020-12-21 11:06:17",
          "need_assess": false,
          "level": "best"
        },
        "doctor": {
          "id": "clinic_web_ae8068a4df5f189e",
          "name": "測試醫(yī)生",
          "title": "主治醫(yī)師",
          "image": "https://test.chunyutianxia.com/media/images/fc7d/8968fe2e5cb5?imageMogr2/thumbnail/150x",
          "clinic_no": "2",
          "clinic": "小兒科",
          "hospital": "上饒市婦幼保健院",
          "hospital_grade": "二級甲等",
          "level_title": "二級甲等醫(yī)院主治醫(yī)師"
        }
      }]
    
  

H5資源訪問登錄跳轉

說明:由于接入方用戶端沒有登錄狀態(tài),在使用某些H5鏈接資源時,需要將要訪問的鏈接嵌套此接口,并實時生成鏈接下發(fā)給用戶端進行訪問,已完成登錄并訪問。 文檔中的接口簽名驗證機制同春雨開放平臺問診對接;

URL: /cooperation/saas/login_redirect/

請求方式: GET

請求參數:

名稱 說明 類型 必要 備注
url 問診記錄url String 需要進行URL編碼
partner 合作方標識 String
user_id 用戶名 String 用戶唯一標識,合作方定義(可為字母、數字、下劃線或其組合)
sign 簽名 String 必須在服務器端生成 生成方法
atime 簽名時間戳 Long 當前UNIX TIMESTAMP簽名時間戳 (如:137322417)

示例:

其中問診記錄測試環(huán)境url:

    
      
        http://www.ruichenmed.cn/cooperation/wap/my_all_services_page/?partner=xxx&from_saas=1
      
    
  

嵌套登錄接口后下發(fā)給用戶端:

    
      
        http://www.ruichenmed.cn/cooperation/saas/login_redirect/?url=https%3A%2F%2Fwww.ruichenmed.cn%2Fcooperation%2Fwap%2Fmy_all_services_page%2F%3Fpartner%3Dxxxx%26from_saas%3D1&partner=xxx&atime=1676883201&user_id=test_user1&sign=1f46b8e32d7ebd2e
      
    
  

退款及舉報邏輯

針對眾包升級、定向圖文類型的付費問題,涉及到如下退款場景時,將下發(fā)對應的系統(tǒng)通知和文案

退款類型

1、退款類型共包括5類,具體參見下表《退款類型》

2、舉報邏輯與被舉報引起的退款(具體參見表《因被舉報引起的退款邏輯》)

規(guī)則說明1:問題因被系統(tǒng)舉報或被醫(yī)生舉報可能引發(fā)退款,舉報邏輯共包括4種類型,其中3種涉及退款;

規(guī)則說明2:凡被舉報的問題,平臺側都會下發(fā)多次推送通知,第1次下發(fā)關閉通知,是否做退款處理請以第2次通知為準,具體處理邏輯及文案細節(jié)見表;

退款類型 說明 前置條件 refund_type取值 春雨返回文案 建議顯示文案(合作方自主決定是否顯示)
醫(yī)生拒絕 付費問題被醫(yī)生拒絕觸發(fā)退款 1 抱歉,醫(yī)生評估您的問題后,認為自身經驗與您的問題不大匹配或無法及時回復,已為您退款,請選擇其他醫(yī)生 抱歉,醫(yī)生評估您的問題后,認為自身經驗與您的問題不大匹配或無法及時回復,已為您退款,請選擇其他醫(yī)生
用戶取消 當問題未被醫(yī)生回復時,由用戶主動發(fā)起退款 2 患者取消
超時退款 當付費問題在有效時間內未被醫(yī)生接題,會被系統(tǒng)自動關閉,并向用戶退款 3 超時退款 您的問題超時未回復已自動退款
客服退款 由于各種原因,比如用戶或合作方投訴等,由春雨客服審核并操作退款 客服審核后認為該訂單可退 4 (客服具體輸入的內容) 已為您退款,請選擇其他醫(yī)生
被舉報退款 舉報邏輯共包括4種類型,其中3種涉及退款,具體參見下圖 5 (見下圖) (見下圖)

因被舉報引起的退款邏輯

問題被舉報時會被立即關閉。若此時醫(yī)生尚未回復,則退款;若醫(yī)生回復后被醫(yī)生舉報,則先關閉問題,由客服審核舉報,如果醫(yī)生舉報正確,則不退款;醫(yī)生舉報錯誤則退款并降低醫(yī)生的指數。通知關閉情況見圖:

黑名單邏輯

當問題被醫(yī)生舉報并達到一定次數時,該用戶將被拉入春雨平臺的黑名單中;當用戶被拉入黑名單后,將導致該用戶后續(xù)創(chuàng)建問題失敗.

錯誤信息為:"因違背提問原則,此功能暫不可用。如有疑問請聯系春雨客服"

回調管理

回復通知接口

當服務被醫(yī)生回復、總結時,春雨主動請求合作方配置的鏈接地址,傳遞醫(yī)生回復數據。

1.服務關閉和服務退款兩個通知并不互斥,在特殊場景中(特殊情況:已交互的問題被舉報時)會先關閉服務;
2.各類服務都可調用該接口,如同時接入多種服務類型,傳不同的參數即可,根據status區(qū)分來自哪種服務類型。


URL: 即合作方管理后臺-賬戶管理-信息配置中填寫的回復回調路徑

請求方式: POST

請求參數:

名稱 說明 類型 長度 必要 備注
problem_id 問題編號 api接入返回Int,web接入返回加密的string
user_id 用戶名 String 32 用戶唯一標識,合作方定義(可為字母、數字、下劃線或其組合)
content 醫(yī)生答復內容 String 數據結構,可以包含除 patient_meta 之外的三種類型。
left_interactions 剩余交互次數 Int
sign 簽名 String 32 必須在服務器端生成 生成方法
status 回調類型 String

reply 醫(yī)生回復

atime 簽名時間戳 Long 64 當前UNIX TIMESTAMP簽名時間戳 (如:137322417)
is_summary 是否是醫(yī)生總結 Boolean 是否是醫(yī)生總結
doctor 醫(yī)生信息 dict 醫(yī)生信息
id 醫(yī)生 ID String
name 醫(yī)生姓名 String 200
image 醫(yī)生頭像 String 200 醫(yī)生照片的 url
title 醫(yī)生職稱 String
level_title 帶醫(yī)院級別的醫(yī)生職稱 String 帶醫(yī)院級別的醫(yī)生職稱
clinic 科室名稱 String 20
clinic_no 科室號 String 20
hospital 醫(yī)院名字 String 100
hospital_grade 醫(yī)院級別 String 醫(yī)院級別
good_at 擅長領域 String 擅長領域(醫(yī)生回復接口里的醫(yī)生信息是簡版的信息,建議通過醫(yī)生詳情接口獲取醫(yī)生的詳細信息)
education_background 教育背景 String

返回:

名稱 說明 類型 長度 必要 備注
error 錯誤碼 Int 32 0 代表成功,其它 代表異常
error_msg 異常信息 String
            
              {
                "error": 0, // 0 代表成功,其它 代表異常
                "error_msg": "" //錯誤信息
              }
            
          

服務關閉通知接口

當服務關閉、退款等狀態(tài)變更時,春雨主動請求合作方配置的鏈接地址,傳遞訂單狀態(tài)數據。

開發(fā)時請注意:問題關閉和問題退款兩個通知并不互斥,在一些場景中會先關閉問題


URL: 即合作方管理后臺-賬戶管理-信息配置中填寫的關閉回調路徑

請求方式: POST

請求參數:

名稱 說明 類型 長度 必要 備注
problem_id 問題編號 api接入返回Int,web接入返回加密的string
user_id 用戶名 String 32 用戶唯一標識,合作方定義(可為字母、數字、下劃線或其組合)
msg 消息內容 String
status 問題狀態(tài) String

close 回答完畢后關閉

refund 問題退款

price 退款金額 Int 單位為分
sign 簽名 String 32 必須在服務器端生成 生成方法
atime 簽名時間戳 Long 64 當前UNIX TIMESTAMP簽名時間戳 (如:137322417)
refund_type 退款類型 Int 返回值及其類型說明:
1代表:醫(yī)生拒絕
2代表:用戶取消
3代表:超時退款
4代表:客服退款
5代表:被舉報退款

返回:

名稱 說明 類型 長度 必要 備注
error 錯誤碼 Int 32 0 代表成功,其它 代表異常
error_msg 異常信息 String
            
              {
                "error": 0, // 0 代表成功,其它 代表異常
                "error_msg": "" //錯誤信息
              }
            
          

服務創(chuàng)建通知接口

當圖文服務創(chuàng)建時,春雨主動請求合作方配置的鏈接地址,傳遞訂單狀態(tài)數據。


URL: 即合作方管理后臺-賬戶管理-信息配置中填寫的關閉回調路徑

請求方式: POST

請求參數:

名稱 說明 類型 長度 必要 備注
problem_id 問題編號 api接入返回Int,web接入返回加密的string
user_id 用戶名 String 32 用戶唯一標識,合作方定義(可為字母、數字、下劃線或其組合)
sign 簽名 String 32 必須在服務器端生成 生成方法
atime 簽名時間戳 Long 64 當前UNIX TIMESTAMP簽名時間戳 (如:137322417)
status 問題狀態(tài) String create
ask 用戶發(fā)送的首問 String
is_todoc 是否是定向問題 Bool
is_paid_clinic 是否是普通眾包 Bool
upgrade_type 付費升級類型 String 僅眾包升級類型問題有值
二甲醫(yī)生:
qc_hospital_common
三甲醫(yī)生:
qc_hospital_upgrade

返回:

名稱 說明 類型 長度 必要 備注
error 錯誤碼 Int 32 0 代表成功,其它 代表異常
error_msg 異常信息 String
            
              {
                "error": 0, // 0 代表成功,其它 代表異常
                "error_msg": "" //錯誤信息
              }
            
          

常見錯誤碼

錯誤碼 錯誤信息 說明
1 default error 未歸類的請求或者處理錯誤
10001 invalid partner 第三方賬戶檢查失敗,請確保partner參數正確
10002 invalid user 第三方賬戶用戶id錯誤
10003 invalid username or password 第三方用戶驗證失敗,請確保同一用戶每次登錄的賬戶名和密碼一致
10004 invalid param content 問題內容檢查失敗,請確保問題格式符合要求
10005 invalid doctor id 醫(yī)生id無效
10006 sign verification failed 簽名驗證失敗,可以通過復現用例簽名來檢查構造sign方法是否正確
10007 atime time out 時間戳檢查失敗,請確保服務器時間已同步標準時間
10008 Missing param package_name or package_sign package_name或package_sign缺失
10009 Invalid mode(should be either server or client) 無效模式(應該為"client"或者"server")
10010 invalid problem_id 請求參數中的問題id不正確
10011 invalid start_num and count 無效的start_num或者count,必須是數字
10012 invalid ask text ask參數不存在
10013 invalid clinic no 科室號無效
10014 問題ID錯誤 該id對應的問題不存在
10015 非提問者不能執(zhí)行該操作
10016 用戶不存在,請先注冊 收到此提示的原因是:該用戶尚未在春雨平臺注冊,針對此問題,合作方需使用登錄/注冊接口為該用戶(user_id)創(chuàng)建賬號并登錄
10017 param content is too long 問題或者評價內容超過5kB,極有可能是內容類型錯誤引起
10018 invalid atime atime 錯誤
10020 param "xx" check err 參數校驗錯誤
10101 content 類型需要為 text,image,audio,patient_meta 中任意一種
10102 缺少 text 字段內容
10103 缺少 file 字段內容
10104 缺少 age 和 sex 字段內容
10201 對不起,您不能提交問題。
10202 不能提問非醫(yī)療問題
10203 您已提問成功,無需重復提問
10301 問題已經被關閉/刪除,不能追問
10401 invalid star
10402 您已經進行過評價,不能再次評價! 收到此提示的原因是:已對該問題做過評價
10403 您現在還不能對該問題進行評價! 評價接口調用規(guī)則:問題交互3次以后可以評價,低于3次需等問題關閉后才可評價
10404 問題無醫(yī)生認領回答,不能評價 評價接口調用規(guī)則:問題交互3次以后可以評價,低于3次需等問題關閉后才可評價
10501 close problem failed 問題關閉錯誤,問題只能在有醫(yī)生領取并回答的情況下才能執(zhí)行關閉操作。
10601 非問題創(chuàng)建者不能退款
10602 問題已經被醫(yī)生回復,不可以執(zhí)行退款操作
10603 當前問題狀態(tài)不能進行該操作
10604 正式環(huán)境轉診問題不可以退款
10605 退款金額不能為0,請校驗退款金額
10606 無相應支付記錄
11001 invalid price 無效價格
11002 invalid partner_order_id 無效的partner訂單id
11003 duplicate partner_order_id 重復的partner訂單id
11004 invalid chunyu_order_id 無效的chunyu_order_id
11005 order does not exist 訂單不存在
11006 closed record 已關閉的記錄
11007 create payment order failed 創(chuàng)建支付訂單失敗
11008 not the order's owner 不是訂單創(chuàng)建者
11009 paid is not equal to price 支付金額與價格不相符
11012 invalid logistics_info format 無效的物流信息格式
11013 購買失敗
11014 您已被加入黑名單, 不能購買任何服務
12001 醫(yī)生不存在
12002 醫(yī)生未回答的問題數過多
12003 因違背提問規(guī)則,此功能暫不可用。如有疑問請聯系春雨在線客服 收到此提示的原因是:提問用戶已被加入黑名單,無法發(fā)起提問。黑名單相關邏輯,請參考“黑名單邏輯”章節(jié)。
12004 首問字數過少 圖文咨詢首問字數不得少于10個字
13001 醫(yī)生24小時內無法預約
14001 訂單創(chuàng)建失敗

系統(tǒng)文案

API接入合作方可考慮自行增加以下系統(tǒng)消息邏輯以優(yōu)化用戶體驗

問題類型 條件 系統(tǒng)消息文案
定向問題 1、白天付費問題(6:00-22:59:59)
2、患者首問自動觸發(fā)
已為您通知到XXX醫(yī)生,請耐心等待。
您也可以補充更多病情描述,以獲得更充分的幫助。
1、白天付費問題(6:00-22:59:59)
2、患者首問10分鐘后醫(yī)生未回復自動觸發(fā)
您的焦慮心情我們非常理解,但XXX醫(yī)生當前忙碌,無法立即回復,請多體諒。
醫(yī)生回復后,您將在第一時間收到通知。
1、夜晚付費問題(23:00—次日5:59:59)
2、夜晚患者首問自動觸發(fā)
親愛的,您好:
我們已將您的問題發(fā)送給xxx醫(yī)生,但夜深人靜,醫(yī)生也要休息一下,請您白天再來查看醫(yī)生的回復,不要著急哦!
眾包付費 患者首問10分鐘后醫(yī)生未回復自動觸發(fā) 親愛的,您好:
我們已通知醫(yī)生。為您答題的醫(yī)生均在醫(yī)院臨床一線工作,無法做到隨問隨答,請您耐心等待哦! 您的問題得到回復后,我們會在第一時間給您推送消息~