如何輕松搞定接口需求與文檔?

6 評(píng)論 14620 瀏覽 277 收藏 26 分鐘

作為一個(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 種:

  1. 你向別人提供數(shù)據(jù):需要你定義接口需求
  2. 別人向你提供數(shù)據(jù):需要你會(huì)看別人的接口文檔

我們先看「你向別人提供數(shù)據(jù)」

舉個(gè)例子:一條產(chǎn)品線有個(gè)需求,想使用你系統(tǒng)的「人員信息」數(shù)據(jù),在他們系統(tǒng)的頁(yè)面中展示出「人員信息列表」

我們先從以下角度思考:

1)數(shù)據(jù)能否提供?

  1. 是否該由自己系統(tǒng)提供,是否其他系統(tǒng)提供更好?
  2. 提供的數(shù)據(jù)能夠滿足對(duì)方需求,是否缺字段?
  3. 數(shù)據(jù)是否敏感數(shù)據(jù)?是否知識(shí)產(chǎn)權(quán)數(shù)據(jù)?
  4. 其它產(chǎn)品線是否也有這個(gè)需求,是否也需要這個(gè)接口?
  5. 對(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 種方式:

  1. 當(dāng)數(shù)據(jù)有更新時(shí),上游給下游業(yè)務(wù)方發(fā)一條「數(shù)據(jù)更新通知」,讓業(yè)務(wù)方判斷是否更新、更新哪些數(shù)據(jù)。這個(gè)時(shí)候上游就需要多開發(fā)一個(gè)「數(shù)據(jù)更新通知接口」,用于發(fā)出通知。同時(shí)下游方也需要開發(fā)一個(gè)接口,用于接收通知。
  2. 強(qiáng)制業(yè)務(wù)方更新,硬性更新數(shù)據(jù)。對(duì)于主數(shù)據(jù)、標(biāo)準(zhǔn)字典值都需要使用這種方式。

拉:下游業(yè)務(wù)方去主動(dòng)拉取新的數(shù)據(jù)。

②「拉取」有 2 種方式:

  1. 定時(shí)拉?。河沙绦蚨〞r(shí)拉取,如每天同步、每 5min 同步、每 1h 同步一次等等,根據(jù)數(shù)據(jù)更新頻次、對(duì)數(shù)據(jù)一致性的嚴(yán)謹(jǐn)度進(jìn)行判斷。
  2. 手動(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è)名詞:

  1. 入?yún)ⅲ壕褪窍蚪涌趥魅氲膮?shù)數(shù)據(jù),也叫請(qǐng)求參數(shù)等。
  2. 出參:接口返回?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)理需要考慮到:

  1. 入?yún)⒂心男┳侄危烤褪沁@個(gè)列表的查詢條件是什么?比如我們需要對(duì)外同步「人員信息」,可以通過「人員 ID」進(jìn)行獲取數(shù)據(jù),也可以通過「性別」,只獲取性別為「男」的數(shù)據(jù)。人員ID、性別就是這個(gè)接口的入?yún)ⅰ?/li>
  2. 入?yún)⒆侄蔚母袷绞鞘裁??格式是指字段是字符串、日期格式還是字典值等。比如說(shuō)「人員性別」,可以定義成 0,1。0 代表女性、1 代表男性。也可以是文字「女性、男性」。對(duì)于字段格式,產(chǎn)品經(jīng)理主要是提供建議,具體的還是以研發(fā)為準(zhǔn)。
  3. 入?yún)⒆侄文軌蛑С峙坎樵??可以理解為查詢條件的字段是不是支持多選。比如說(shuō)「人員性別」,是可以通過下拉框多選,還是每次只能選擇一個(gè)。
  4. 入?yún)⒆侄问遣皇潜靥??比如說(shuō)查詢時(shí),必須輸入「人員 ID」,否則就不支持查詢。

②對(duì)于「出參」,產(chǎn)品經(jīng)理需要考慮到:

  1. 出參字段有哪些?也就是查詢結(jié)果需要有什么?比如出參有:人員 ID、人員姓名、人員性別、創(chuàng)建時(shí)間、創(chuàng)建人、更新時(shí)間、更新人、是否啟用、是否刪除。
  2. 出參字段的格式是什么?這個(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>

  1. 對(duì)于入?yún)ⅲ盒枰呀涌谥械娜雲(yún)⒆侄斡心男┱f(shuō)清楚。不僅要把接口處理必須用到的字段說(shuō)清楚,對(duì)于之后接口用到的字段,也可以寫出來(lái)。業(yè)務(wù)方在第一次接入的時(shí)候,把能傳入的字段都傳過來(lái),下次接口新增其他服務(wù)的時(shí)候,可以直接用,不需要業(yè)務(wù)方在調(diào)整接口。
  2. 對(duì)于出參:需要把接口返參中的字段進(jìn)行說(shuō)明。原因是返參的字段,才是要最終用到業(yè)務(wù)上的,需要產(chǎn)品經(jīng)理確定有哪些字段,并把字段進(jìn)行說(shuō)明。
  3. 接口處理邏輯:就是接口通過「入?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)處理邏輯:

  1. 校驗(yàn)身份證號(hào)格式:長(zhǎng)度必須是否18位(等其他邏輯在此不細(xì)說(shuō))
  2. 當(dāng)校驗(yàn)不通過時(shí),接口報(bào)錯(cuò),錯(cuò)誤原因?yàn)椤干矸葑C號(hào)格式錯(cuò)誤」
  3. 當(dāng)校驗(yàn)通過后,截取身份證號(hào)「前六位」,在「身份證號(hào)與行政區(qū)域表」中查詢對(duì)應(yīng)關(guān)系。
  4. 當(dāng)查詢到結(jié)果時(shí),接口返回:省份名稱/直轄市code、省份名稱/直轄市名稱、市/區(qū)code、市/區(qū)名稱、縣code、縣名稱。
  5. 當(dāng)未查詢到結(jié)果時(shí),接口返回為空

涉及到公共服務(wù)接口,就涉及到一個(gè)「接口性能需求」,這個(gè)不能落下,加上性能說(shuō)明:

4)接口性能要求

示例如:

  1. 平均響應(yīng)時(shí)間:最大50ms
  2. 接口并發(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>

  1. 查看需要給出的字段有哪些?
  2. 字段能不能給?
  3. 能不能按照接口文檔中要求的格式給?

出參:

  1. 查看出參有哪些字段,每個(gè)字段的具體含義是什么?
  2. 通過什么樣的處理邏輯得出的這個(gè)字段?
  3. 字段是否有多個(gè)值?
  4. 字段與字段之間關(guān)系是什么?比如上下級(jí)關(guān)系,有多個(gè)值
  5. 基于接口的出參如何設(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ù)

更多精彩內(nèi)容,請(qǐng)關(guān)注人人都是產(chǎn)品經(jīng)理微信公眾號(hào)或下載App
評(píng)論
評(píng)論請(qǐng)登錄
  1. 感激!!寫的非常細(xì)致完善,通俗易懂。悟了,感謝大佬

    來(lái)自福建 回復(fù)
  2. 我發(fā)現(xiàn)你寫的很實(shí)用,能落地。

    來(lái)自廣東 回復(fù)
  3. 看寫作風(fēng)格就知道是鵝廠的

    來(lái)自廣東 回復(fù)
  4. 我太需要了,我終于看明白了,不懂技術(shù)太難了

    來(lái)自北京 回復(fù)
    1. 有用就好,共同進(jìn)步

      來(lái)自北京 回復(fù)
  5. 有需要接口需求文檔實(shí)例的,可以去公眾號(hào):產(chǎn)品大鹿,后臺(tái)回復(fù):接口,即可領(lǐng)取~

    來(lái)自北京 回復(fù)