如何輕松搞定接口需求與文檔?
作為一個(gè)產(chǎn)品經(jīng)理,要如何輕松搞定接口需求與文檔?下面一起來(lái)看這篇有筆者整理分享的關(guān)于接口需求與文檔相關(guān)內(nèi)容的文章吧!推薦值得一看哦!
一、前言
不懂技術(shù)的產(chǎn)品同學(xué),天然的對(duì)技術(shù)相關(guān)的需求犯怵。比如說(shuō)接口需求,接口是開發(fā)過程中避免不了的東西,作為產(chǎn)品經(jīng)理,一定要知道。我一直負(fù)責(zé)集團(tuán)的公共服務(wù),所有服務(wù)都是通過「接口」與各個(gè)產(chǎn)品線對(duì)接。我也沒有技術(shù)背景,當(dāng)然在過程中遇到了一些問題,所以我總結(jié)了關(guān)于「接口需求」相關(guān)的內(nèi)容。
說(shuō)下:接口需求怎么提接口文檔怎么看。
二、接口的作用
什么是接口?
看下邊的例子:
微信獲取用戶基礎(chǔ)信息接口:https://api.weixin.qq.com/cgi-bin/user/info/batchget?access_token=ACCESS_TOKEN
飛書查看全部工單接口:https://open.feishu.cn/open-apis/helpdesk/v1/tickets
這些 url鏈接就是接口地址。通過調(diào)用接口地址,獲取到想要的東西。對(duì)于接口的作用,我劃分為 3 種:
1. 前端與后端的數(shù)據(jù)處理
比如列表上有個(gè)「新增」的功能。前端開發(fā)出一個(gè)表單功能,當(dāng)填完數(shù)據(jù)后,點(diǎn)擊確定,前端會(huì)調(diào)用「新增數(shù)據(jù)接口」,將頁(yè)面中錄入的數(shù)據(jù)通過接口,傳給后端,后端對(duì)傳入的數(shù)據(jù)進(jìn)行處理。接口處理完成后,會(huì)返回出具體的參數(shù),前端根據(jù)返回的參數(shù),給出對(duì)應(yīng)的反饋信息。
比如當(dāng)接口的校驗(yàn)沒有通過時(shí),則會(huì)通過接口返回出錯(cuò)誤信息,前端會(huì)將錯(cuò)誤信息在頁(yè)面上進(jìn)行提示。
同樣的,對(duì)于刪除數(shù)據(jù)、修改數(shù)據(jù)、查詢數(shù)據(jù)等,都是通過接口的方式對(duì)數(shù)據(jù)進(jìn)行處理。
2. 跨系統(tǒng)的同步數(shù)據(jù)
兩個(gè)系統(tǒng)之間進(jìn)行數(shù)據(jù)同步。
比如我有個(gè)需求,需要使用到「系統(tǒng)用戶信息」。對(duì)于「用戶信息」,我司只有「賬號(hào)系統(tǒng)」有,我需要和賬號(hào)系統(tǒng)的產(chǎn)品經(jīng)理溝通,對(duì)方提供給我一個(gè)接口文檔,我們按照接口文檔的要求進(jìn)行數(shù)據(jù)同步。
同樣的,當(dāng)有需求要使用到你系統(tǒng)里的數(shù)據(jù),也可以通過「接口」將數(shù)據(jù)同步給需求方。對(duì)于數(shù)據(jù)同步接口,數(shù)據(jù)同步的方式、數(shù)據(jù)同步的時(shí)機(jī)等等都是接口需求需要考慮到的內(nèi)容。
這幾點(diǎn)我們?cè)谙逻呍敿?xì)說(shuō)~
3. 提供公共服務(wù)
通過接口對(duì)外提供服務(wù)能力,可以滿足不同的系統(tǒng)或應(yīng)用程序之間進(jìn)行功能調(diào)用。比如說(shuō)身份證歸屬地查詢服務(wù),通過輸入身份證號(hào)查詢出歸屬地。當(dāng)需要使用這個(gè)功能的時(shí)候,都可以調(diào)用「身份證歸屬地查詢接口」,來(lái)實(shí)現(xiàn)這個(gè)功能。
另外支付服務(wù)、登錄服務(wù)、獲取收貨地址等等,能夠?qū)ν馓峁┑墓卜?wù),我們都可以做成公共接口對(duì)外使用。
三、接口需求怎么提
很多同學(xué)認(rèn)為接口是研發(fā)開發(fā)的,和產(chǎn)品沒有關(guān)系,我之前也是這樣想,后來(lái)發(fā)現(xiàn)這個(gè)并不對(duì)。接口是基于需求來(lái)開發(fā)的,里邊涉及業(yè)務(wù)相關(guān)的內(nèi)容,研發(fā)并不清楚具體的業(yè)務(wù)場(chǎng)景,如果產(chǎn)品經(jīng)理不進(jìn)行介入,就會(huì)導(dǎo)致接口的場(chǎng)景覆蓋程度、擴(kuò)展性受限。
不會(huì)提接口需求沒關(guān)系,我們接下來(lái)細(xì)說(shuō):我們根據(jù)上邊說(shuō)的3 種接口用途,看下需求如何提。
1. 前后端數(shù)據(jù)處理接口
這類接口一般和功能相關(guān),也不涉及到跨系統(tǒng),可以直接通過功能需求描述,不用特意地對(duì)接口進(jìn)行說(shuō)明。在研發(fā)開始前,前端與后端根據(jù)需求進(jìn)行功能拆分,后端開發(fā)接口,前端開發(fā)頁(yè)面,然后前后端進(jìn)行接口聯(lián)調(diào)。
2. 數(shù)據(jù)同步接口
無(wú)非 2 種:
- 你向別人提供數(shù)據(jù):需要你定義接口需求
- 別人向你提供數(shù)據(jù):需要你會(huì)看別人的接口文檔
我們先看「你向別人提供數(shù)據(jù)」
舉個(gè)例子:一條產(chǎn)品線有個(gè)需求,想使用你系統(tǒng)的「人員信息」數(shù)據(jù),在他們系統(tǒng)的頁(yè)面中展示出「人員信息列表」
我們先從以下角度思考:
1)數(shù)據(jù)能否提供?
- 是否該由自己系統(tǒng)提供,是否其他系統(tǒng)提供更好?
- 提供的數(shù)據(jù)能夠滿足對(duì)方需求,是否缺字段?
- 數(shù)據(jù)是否敏感數(shù)據(jù)?是否知識(shí)產(chǎn)權(quán)數(shù)據(jù)?
- 其它產(chǎn)品線是否也有這個(gè)需求,是否也需要這個(gè)接口?
- 對(duì)于這個(gè)接口是做成公共接口,每個(gè)業(yè)務(wù)方都能進(jìn)行調(diào)用,還是只對(duì)這一個(gè)業(yè)務(wù)線提供。
一般情況下,數(shù)據(jù)同步接口都可以做成公共接口,讓每個(gè)業(yè)務(wù)方都能使用此接口。
2)支持哪種同步方式?
①業(yè)務(wù)方直接使用接口實(shí)時(shí)搜索,直接列表展示
業(yè)務(wù)方通過接口實(shí)時(shí)查詢數(shù)據(jù),并展示出結(jié)果,不將數(shù)據(jù)放到自己的數(shù)據(jù)庫(kù)里。好處是每次查詢都是最新數(shù)據(jù)。但是這種方式很不建議,當(dāng)有業(yè)務(wù)方需要用到你的數(shù)據(jù)的時(shí)候,也需要提醒對(duì)方不要使用這種方式。用他方的數(shù)據(jù)同步接口去進(jìn)行實(shí)時(shí)查詢,如果數(shù)據(jù)同步接口性能扛不住,接口掛了,那業(yè)務(wù)也會(huì)掛。
當(dāng)需要對(duì)數(shù)據(jù)進(jìn)行二次加工處理,這種方式就不支持了,只能讓數(shù)據(jù)同步接口加需求。但是一般的數(shù)據(jù)同步接口都是公共接口,不僅有一個(gè)業(yè)務(wù)方使用,當(dāng)這個(gè)接口不滿足你的需求的時(shí)候,公共接口不會(huì)根據(jù)你的需求做個(gè)性化調(diào)整。
②業(yè)務(wù)方通過接口將數(shù)據(jù)存儲(chǔ)到自己的數(shù)據(jù)庫(kù)中,對(duì)數(shù)據(jù)進(jìn)行二次處理
通過數(shù)據(jù)同步接口,將數(shù)據(jù)同步到自己的數(shù)據(jù)庫(kù)中,單獨(dú)存一份,與數(shù)據(jù)提供方做一層隔離。自己業(yè)務(wù)使用時(shí),從自己的數(shù)據(jù)庫(kù)中取數(shù)據(jù)。這樣就算同步接口掛了,也不會(huì)影響自己的業(yè)務(wù)。同時(shí),可以對(duì)獲取的數(shù)據(jù)進(jìn)行二次處理,靈活性更強(qiáng)。當(dāng)業(yè)務(wù)方單獨(dú)存儲(chǔ)數(shù)據(jù)后,為了讓兩方數(shù)據(jù)保持一致,這就涉及到「數(shù)據(jù)更新」。
3)數(shù)據(jù)更新機(jī)制
分為2種:推、拉
推:有數(shù)據(jù)更新后,將更新的數(shù)據(jù)推給下游業(yè)務(wù)方。
①「推」有 2 種方式:
- 當(dāng)數(shù)據(jù)有更新時(shí),上游給下游業(yè)務(wù)方發(fā)一條「數(shù)據(jù)更新通知」,讓業(yè)務(wù)方判斷是否更新、更新哪些數(shù)據(jù)。這個(gè)時(shí)候上游就需要多開發(fā)一個(gè)「數(shù)據(jù)更新通知接口」,用于發(fā)出通知。同時(shí)下游方也需要開發(fā)一個(gè)接口,用于接收通知。
- 強(qiáng)制業(yè)務(wù)方更新,硬性更新數(shù)據(jù)。對(duì)于主數(shù)據(jù)、標(biāo)準(zhǔn)字典值都需要使用這種方式。
拉:下游業(yè)務(wù)方去主動(dòng)拉取新的數(shù)據(jù)。
②「拉取」有 2 種方式:
- 定時(shí)拉?。河沙绦蚨〞r(shí)拉取,如每天同步、每 5min 同步、每 1h 同步一次等等,根據(jù)數(shù)據(jù)更新頻次、對(duì)數(shù)據(jù)一致性的嚴(yán)謹(jǐn)度進(jìn)行判斷。
- 手動(dòng)拉?。菏謩?dòng)觸發(fā)更新。是指當(dāng)需要使用到最新數(shù)據(jù)的時(shí)候,手動(dòng)觸發(fā)數(shù)據(jù)更新,比如頁(yè)面上添加個(gè)「數(shù)據(jù)同步」的按鈕,點(diǎn)擊后,調(diào)用數(shù)據(jù)同步接口,拉取最新的數(shù)據(jù)。當(dāng)然,也可以「定時(shí)拉取+手動(dòng)拉取」,例如每晚程序自動(dòng)更新,白天需要更新時(shí),可手動(dòng)觸發(fā)更新。每次更新數(shù)據(jù)的時(shí)候,又涉及到「數(shù)據(jù)更新的范圍」。
4)數(shù)據(jù)更新范圍
分為:全量更新、增量更新。它們的選擇取決于需要同步的數(shù)據(jù)量以及更新的頻率。
- 全量更新:更新全部數(shù)據(jù),無(wú)論數(shù)據(jù)是否有變化,都會(huì)對(duì)整個(gè)數(shù)據(jù)進(jìn)行更新。將已有的數(shù)據(jù)刪除,然后重新獲取新的數(shù)據(jù)。這種方式比較適合數(shù)據(jù)量較小或?qū)?shù)據(jù)一致性要求較高的情況。
- 增量更新:只更新發(fā)生變化的數(shù)據(jù)。當(dāng)把數(shù)據(jù)全量同步后,之后只更新發(fā)生變化的數(shù)據(jù)。比如說(shuō)上游發(fā)出了數(shù)據(jù)更新通知,告訴哪條數(shù)據(jù)發(fā)生了更新,此時(shí)接入方可以只更新發(fā)生更新的數(shù)據(jù)。增量更新適用于整體數(shù)據(jù)量較大、更新頻率低的情況。增量更新比較高效,更新數(shù)據(jù)用時(shí)也比較快。到這,我們把數(shù)據(jù)同步的同步方式、數(shù)據(jù)更新機(jī)制、數(shù)據(jù)更新范圍確定好了。接著繼續(xù)明確接入方可以使用哪些字段去獲取數(shù)據(jù)。
5)通過哪些字段獲取數(shù)據(jù)能獲取到哪些數(shù)據(jù)?
用哪個(gè)字段獲取數(shù)據(jù),意思是向接口傳入哪些字段。能夠獲取到哪些數(shù)據(jù),意思是接口會(huì)返回出哪些字段。會(huì)有2 個(gè)名詞:
- 入?yún)ⅲ壕褪窍蚪涌趥魅氲膮?shù)數(shù)據(jù),也叫請(qǐng)求參數(shù)等。
- 出參:接口返回?cái)?shù)據(jù)的參數(shù)數(shù)據(jù),也叫返參、返回參數(shù)、響應(yīng)參數(shù)等。
你可以理解為,接口就是個(gè)列表,這個(gè)列表的查詢條件有哪些、查詢結(jié)果有哪些。查詢條件,就是接口的「入?yún)ⅰ共樵兂龅慕Y(jié)果,就是接口的「出參」
①對(duì)于「入?yún)ⅰ?,在提需求時(shí),產(chǎn)品經(jīng)理需要考慮到:
- 入?yún)⒂心男┳侄危烤褪沁@個(gè)列表的查詢條件是什么?比如我們需要對(duì)外同步「人員信息」,可以通過「人員 ID」進(jìn)行獲取數(shù)據(jù),也可以通過「性別」,只獲取性別為「男」的數(shù)據(jù)。人員ID、性別就是這個(gè)接口的入?yún)ⅰ?/li>
- 入?yún)⒆侄蔚母袷绞鞘裁??格式是指字段是字符串、日期格式還是字典值等。比如說(shuō)「人員性別」,可以定義成 0,1。0 代表女性、1 代表男性。也可以是文字「女性、男性」。對(duì)于字段格式,產(chǎn)品經(jīng)理主要是提供建議,具體的還是以研發(fā)為準(zhǔn)。
- 入?yún)⒆侄文軌蛑С峙坎樵??可以理解為查詢條件的字段是不是支持多選。比如說(shuō)「人員性別」,是可以通過下拉框多選,還是每次只能選擇一個(gè)。
- 入?yún)⒆侄问遣皇潜靥??比如說(shuō)查詢時(shí),必須輸入「人員 ID」,否則就不支持查詢。
②對(duì)于「出參」,產(chǎn)品經(jīng)理需要考慮到:
- 出參字段有哪些?也就是查詢結(jié)果需要有什么?比如出參有:人員 ID、人員姓名、人員性別、創(chuàng)建時(shí)間、創(chuàng)建人、更新時(shí)間、更新人、是否啟用、是否刪除。
- 出參字段的格式是什么?這個(gè)和「入?yún)ⅰ瓜嗤?,產(chǎn)品經(jīng)理給出參考建議。然后,在提需求的時(shí)候,我們可以通過表格的形式說(shuō)明「入?yún)?、出參」?/li>
③入?yún)⑹纠纾?/p>
④出參示例如:
到這里,我們的數(shù)據(jù)同步接口需求就可以了,更詳細(xì)的可以看我提供的真實(shí)接口需求示例,領(lǐng)取方式在文末。
3. 服務(wù)用接口
這個(gè)接口也比較常見,在很多服務(wù)對(duì)接時(shí),都是直接使用接口對(duì)接。產(chǎn)品經(jīng)理需要確定的接口中與業(yè)務(wù)相關(guān)的內(nèi)容。
主要包括入?yún)?、出參、接口處理邏輯?/p>
- 對(duì)于入?yún)ⅲ盒枰呀涌谥械娜雲(yún)⒆侄斡心男┱f(shuō)清楚。不僅要把接口處理必須用到的字段說(shuō)清楚,對(duì)于之后接口用到的字段,也可以寫出來(lái)。業(yè)務(wù)方在第一次接入的時(shí)候,把能傳入的字段都傳過來(lái),下次接口新增其他服務(wù)的時(shí)候,可以直接用,不需要業(yè)務(wù)方在調(diào)整接口。
- 對(duì)于出參:需要把接口返參中的字段進(jìn)行說(shuō)明。原因是返參的字段,才是要最終用到業(yè)務(wù)上的,需要產(chǎn)品經(jīng)理確定有哪些字段,并把字段進(jìn)行說(shuō)明。
- 接口處理邏輯:就是接口通過「入?yún)ⅰ褂?jì)算出「返參」的具體邏輯,包括校驗(yàn)邏輯等一系列處理邏輯。
說(shuō)個(gè)簡(jiǎn)單的例子:通過「身份證號(hào)查詢歸屬地服務(wù)」
既然是通過「身份證號(hào)」查詢,那「入?yún)ⅰ估锟隙ň褪恰干矸葑C號(hào)」
「返參」里有歸屬地,那「歸屬地」就涉及到省、市、區(qū)。
需求可以這樣提:
1)入?yún)ⅲ?/strong>身份證號(hào)、必填、字符串、長(zhǎng)度18位
2)出參:省份名稱/直轄市、市/區(qū)、縣
3)處理邏輯:
- 校驗(yàn)身份證號(hào)格式:長(zhǎng)度必須是否18位(等其他邏輯在此不細(xì)說(shuō))
- 當(dāng)校驗(yàn)不通過時(shí),接口報(bào)錯(cuò),錯(cuò)誤原因?yàn)椤干矸葑C號(hào)格式錯(cuò)誤」
- 當(dāng)校驗(yàn)通過后,截取身份證號(hào)「前六位」,在「身份證號(hào)與行政區(qū)域表」中查詢對(duì)應(yīng)關(guān)系。
- 當(dāng)查詢到結(jié)果時(shí),接口返回:省份名稱/直轄市code、省份名稱/直轄市名稱、市/區(qū)code、市/區(qū)名稱、縣code、縣名稱。
- 當(dāng)未查詢到結(jié)果時(shí),接口返回為空
涉及到公共服務(wù)接口,就涉及到一個(gè)「接口性能需求」,這個(gè)不能落下,加上性能說(shuō)明:
4)接口性能要求
示例如:
- 平均響應(yīng)時(shí)間:最大50ms
- 接口并發(fā)數(shù):最少200
性能需求的可以看我之前的文章《5000字詳解性能需求》。
在調(diào)用接口時(shí),如果是收費(fèi)接口,或者是需要調(diào)用次數(shù)做匯報(bào),這個(gè)時(shí)候就得有「日志記錄」需求。
5)日志記錄
示例如:調(diào)用日志記錄需求:數(shù)據(jù)庫(kù)中存儲(chǔ)入?yún)?、出參原始json。json 字段本期暫不進(jìn)行結(jié)構(gòu)化。記錄字段至少包括:渠道 ID、入?yún)?json、出參 json、創(chuàng)建時(shí)間、創(chuàng)建人、更新時(shí)間、更新人。其余應(yīng)用字段研發(fā)自行判斷。
json是一個(gè)文件格式,json中包含了字段名稱與字段對(duì)應(yīng)的值,大家可以自己學(xué)習(xí)下。
另外,如果存在一些報(bào)錯(cuò)情況,產(chǎn)品經(jīng)理想記錄,用于排查問題,可以加個(gè)「記錄錯(cuò)誤數(shù)據(jù)」的需求。
6)記錄錯(cuò)誤數(shù)據(jù)
示例如:
記錄查詢?yōu)榭諗?shù)據(jù):當(dāng)接口查詢接口為空時(shí),數(shù)據(jù)庫(kù)存入查詢結(jié)果為空的數(shù)據(jù),用于補(bǔ)充「身份證號(hào)行政區(qū)域表」數(shù)據(jù)。記錄字段包括:身份證號(hào)前6位、查詢時(shí)間。
以上內(nèi)容說(shuō)完后,這就有一個(gè)新的問題:公共接口是誰(shuí)都能接入嗎?這又涉及到:接口鑒權(quán)——只能通過接口權(quán)限驗(yàn)證才能調(diào)用接口。接口鑒權(quán)需要產(chǎn)品提需求嗎?
我的觀點(diǎn)是不需要,讓產(chǎn)品提還真提不出來(lái)。
我們現(xiàn)在采用的方式是:
當(dāng)有業(yè)務(wù)方需要接入我們的公共接口時(shí),我在后臺(tái)新增一個(gè)渠道,通過渠道ID生成驗(yàn)簽碼,把渠道ID、驗(yàn)簽碼提供給業(yè)務(wù)方。業(yè)務(wù)方把渠道ID、驗(yàn)簽碼通過接口傳入,具體怎么接口驗(yàn)簽,研發(fā)自己對(duì)。到這,接口需求包含以上內(nèi)容,我認(rèn)為就OK了。當(dāng)然,還有其他的幾個(gè)內(nèi)容。
7)請(qǐng)求方式:
有 GET、POST 等,我認(rèn)為這個(gè)讓研發(fā)去定,只要能滿足需求,這就夠了。我唯一一次遇到過的問題是前端來(lái)找我,說(shuō) GET 請(qǐng)求字符超長(zhǎng),問我怎么處理。因?yàn)?GET 請(qǐng)求是在 url 后邊拼接請(qǐng)求參數(shù),最多支持 2048 個(gè)字符。
我們分析后發(fā)現(xiàn)在實(shí)際場(chǎng)景里,會(huì)有入?yún)⒑芏嗟那闆r,就會(huì)導(dǎo)致請(qǐng)求 url 超長(zhǎng)。我也不知道怎么處理,問后端,后端說(shuō)改成 POST。因?yàn)镻OST在是使用json傳入?yún)?shù),不涉及到字符超長(zhǎng)的情況。
8)接口分頁(yè):
就是分頁(yè)返回?cái)?shù)據(jù),可以理解為列表中的分頁(yè),每頁(yè)返回10條數(shù)據(jù)。當(dāng)數(shù)據(jù)量過大的時(shí)候,響應(yīng)時(shí)間不會(huì)過長(zhǎng)。一般情況下,返回?cái)?shù)據(jù)很多時(shí),都可以添加分頁(yè)。
9)接口請(qǐng)求頻次
就是對(duì)接口加個(gè)限制,防止服務(wù)過載,避免服務(wù)崩潰。具體的限制策略可以根據(jù)業(yè)務(wù)需求來(lái)制定,如 1min 內(nèi)最多調(diào)用 10 次,1天1萬(wàn)次等。當(dāng)次數(shù)超過限制后,再調(diào)用時(shí)則報(bào)錯(cuò)。
以上,我們就說(shuō)完了「接口需求怎么提」,接下來(lái)說(shuō)「接口文檔」。
四、接口文檔怎么寫怎么看?
接口文檔是對(duì)外提供的詳細(xì)的接口接入說(shuō)明,主要用于描述可提供的接口信息。
所有開發(fā)人員都將根據(jù)這份文檔進(jìn)行后續(xù)的開發(fā)工作。
接口文檔中內(nèi)容一般有:
- 修訂歷史:接口文檔每次更新的內(nèi)容描述
- 接口名稱:清晰地表明該接口的功能。
- 接口描述:簡(jiǎn)要說(shuō)明該接口的作用和業(yè)務(wù)邏輯,具體能干什么,能實(shí)現(xiàn)什么效果。
- 請(qǐng)求地址:詳細(xì)給出接口的URL地址,包括測(cè)試環(huán)境、線上環(huán)境等不同環(huán)境中的接口地址。
- 請(qǐng)求方法:常見的有GET、POST、PUT、DELETE、PATCH、UPDATE等。
- 請(qǐng)求頭:通常用于傳遞一些公共參數(shù),如token等。
- 請(qǐng)求參數(shù):就是入?yún)?,列出各類?qǐng)求參數(shù),包括參數(shù)名、是否必選、參數(shù)類型和具體含義。
- 請(qǐng)求示例:提供傳入接口的參數(shù)樣例。
- 響應(yīng)參數(shù):就是出參,區(qū)分成功和失敗等不同情況的響應(yīng)內(nèi)容,包括參數(shù)名、類型和具體含義。
- 錯(cuò)誤代碼:列出可能出現(xiàn)的錯(cuò)誤代碼及其對(duì)應(yīng)的含義。
- 返回示例:提供成功響應(yīng)的樣例,幫助使用者更好地理解如何使用該接口。
- 備注及責(zé)任人:記錄特殊情況和注意事項(xiàng),指明接口的負(fù)責(zé)人。
我們可以看到一份接口文檔中包含了整個(gè)接口中的全部信息。產(chǎn)品經(jīng)理不需要自己寫接口文檔,而是應(yīng)該由研發(fā)編寫。產(chǎn)品經(jīng)理在此基礎(chǔ)上填寫與業(yè)務(wù)相關(guān)的說(shuō)明
包括:
- 接口名稱、接口描述:產(chǎn)品經(jīng)理可以補(bǔ)充和業(yè)務(wù)相關(guān)的內(nèi)容描述。
- 請(qǐng)求參數(shù)、響應(yīng)參數(shù):產(chǎn)品經(jīng)理可以確定最終字段有哪些,并對(duì)字段的用途進(jìn)行描述。如當(dāng)字段不傳入時(shí)對(duì)業(yè)務(wù)會(huì)有哪些影響等。
- 返回示例:產(chǎn)品經(jīng)理可以提供真實(shí)的、有參考性的標(biāo)準(zhǔn)示例,讓研發(fā)把參數(shù)返回放到文檔中。
同樣的,當(dāng)我們看接口文檔時(shí),產(chǎn)品經(jīng)理也需要關(guān)注的是和業(yè)務(wù)相關(guān)的內(nèi)容即可。
看接口文檔的目的是為了我們自己的需求,要確定接口能夠滿足我們的需求。在接口能夠支持的情況下,更好的去設(shè)計(jì)需求。
所以我們要關(guān)注以下內(nèi)容:
接口描述:了解接口的作用與能力。
入?yún)ⅲ?/p>
- 查看需要給出的字段有哪些?
- 字段能不能給?
- 能不能按照接口文檔中要求的格式給?
出參:
- 查看出參有哪些字段,每個(gè)字段的具體含義是什么?
- 通過什么樣的處理邏輯得出的這個(gè)字段?
- 字段是否有多個(gè)值?
- 字段與字段之間關(guān)系是什么?比如上下級(jí)關(guān)系,有多個(gè)值
- 基于接口的出參如何設(shè)計(jì)自己的產(chǎn)品?
示例如:有個(gè)新需求:后臺(tái)中的發(fā)起審核時(shí),要在釘釘群里發(fā)送一條群通知。
這個(gè)時(shí)候就涉及到釘釘能否支持。
那就去「釘釘開放平臺(tái)」看下,釘釘提供了一個(gè)「機(jī)器人發(fā)送群聊消息」的公共接口。
然后去看這個(gè)接口描述,首先可以知道釘釘是可以支持的。
接著繼續(xù)看接口中的入?yún)?、返參,里邊說(shuō)明了可以支持的消息模版,就可以結(jié)合我的需求選擇一個(gè)消息模板,并確定整體需求設(shè)計(jì)方案。
至于接口怎么接,讓研發(fā)研究去就行了。
五、總結(jié)
接口需求在對(duì)于沒有技術(shù)背景的同學(xué)會(huì)有一些迷茫,但是理清楚其實(shí)也沒什么。你可以去釘釘開放平臺(tái)、飛書開放平臺(tái)、微信開發(fā)平臺(tái)、抖音開放平臺(tái)等很多地方去看看這些大廠的接口文檔,看多了也會(huì)知道接口是怎么回事。
我們?cè)谧霎a(chǎn)品的時(shí)候,不要只關(guān)注原型頁(yè)面這些表面的東西,同時(shí)也需要考慮接口的設(shè)計(jì)和使用,尤其是做公共服務(wù)、接入三方服務(wù)的時(shí)候,你無(wú)法避免的要關(guān)注接口。就算沒有接口需求,我們了解接口后,也能更好的與開發(fā)人員進(jìn)行有效的溝通和協(xié)作。
專欄作家
王大鹿,公眾號(hào):產(chǎn)品大鹿,人人都是產(chǎn)品經(jīng)理專欄作家。關(guān)注醫(yī)療領(lǐng)域,擅長(zhǎng)原型設(shè)計(jì)、需求分析和方案設(shè)計(jì),分享能落地的工作技能~
本文原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理,未經(jīng)許可,禁止轉(zhuǎn)載
題圖來(lái)自 Unsplash,基于 CC0 協(xié)議
該文觀點(diǎn)僅代表作者本人,人人都是產(chǎn)品經(jīng)理平臺(tái)僅提供信息存儲(chǔ)空間服務(wù)
感激!!寫的非常細(xì)致完善,通俗易懂。悟了,感謝大佬
我發(fā)現(xiàn)你寫的很實(shí)用,能落地。
看寫作風(fēng)格就知道是鵝廠的
我太需要了,我終于看明白了,不懂技術(shù)太難了
有用就好,共同進(jìn)步
有需要接口需求文檔實(shí)例的,可以去公眾號(hào):產(chǎn)品大鹿,后臺(tái)回復(fù):接口,即可領(lǐng)取~