php 腾讯企业邮箱接口,帮助中心 腾讯企业邮箱OpenApi协议
歡迎你,開發者
騰訊企業郵開放平臺旨在為企業拓展、定制郵箱的功能。我們為開發者提供了五大開放接口:通訊錄管理、新郵件提醒、單點登錄、系統日志、功能設置。希望幫助企業提升開發效率、降低開發成本和難度,從而提升生產和管理之間的協作效率。
企業開發流程如下:
2.開發對接相關接口:開發測試應用,對接企業郵接口
一、開始開發
1.1主動調用:
主動調用是最基本的連接模式,當你的應用調用企業郵時,需使用HTTPS協議、Json數據格式、UTF8編碼,訪問域名為https://api.exmail.qq.com,數據包不需要加密。
在每次主動調用企業郵接口時需要帶上AccessToken參數。AccessToken參數由CorpID和CorpSecret換取。
CorpID是企業郵的標識,每個企業郵擁有一個唯一的CorpID;
當企業應用調用企業郵接口時,企業郵后臺根據此次訪問的AccessToken,校驗訪問的合法性。
1.1.1基礎頻率
每企業調用單個cgi/api不可超過500次/分,15000次/小時
企業每ip調用接口不可超過10000次/分,300000次/小時
1.1.2獲取ACCESS_TOKEN
HTTPS請求方式:GET
參數說明
參數
必須
說明
corpid
是
企業id
corpsecret
是
應用的憑證密鑰
權限說明
每個應用有不同的secret,代表了對應用的不同權限
返回結果
{
"access_token": "accesstoken000001",
"expires_in": 7200
}
出錯返回示例
{
"errcode":
40001,
"errmsg":
"invalid credential"
}
1.2回調模式:
在回調模式下,企業可以接收企業郵下發的數據。接收的信息使用XML數據格式、UTF8編碼,并以AES方式加密。
企業郵的部分應用有自己的回調模式開關。在管理端開啟并設置好相關參數后,此應用的回調模式才生效。
針對加解密的處理,企業郵提供了各種語言的庫,企業可以在附錄中下載。
1.2.1開啟應用的回調模式
當你開啟應用的回調模式時,企業郵會要求你填寫應用的URL、Token、EncodingAESKey三個參數。
URL是企業應用接收企業郵推送請求的訪問協議和地址,支持http或https協議。
Token可由企業任意填寫,用于生成簽名。
EncodingAESKey用于消息體的加密,是AES密鑰的Base64編碼。
驗證URL、Token以及加密的詳細處理請參考后續“接收消息時的加解密處理”的章節。
當你提交以上信息時,企業郵將發送GET請求到填寫的URL上,GET請求攜帶四個參數,企業在獲取時需要做urldecode處理,否則會驗證不成功。
參數
描述
是否必帶
msg_signature
企業郵加密簽名,msg_signature結合了企業填寫的token、請求中的timestamp、nonce參數、加密的消息體
是
timestamp
時間戳
是
nonce
隨機數
是
echostr
加密的隨機字符串,以msg_encrypt格式提供。需要解密并返回echostr明文,解密后有random、msg_len、msg、CorpID四個字段,其中msg即為echostr明文
首次校驗時必帶
企業通過參數msg_signature對請求進行校驗,如果確認此次GET請求來自企業郵,那么企業應該對echostr參數解密并原樣返回echostr明文(不能加引號,不能帶bom頭,不能帶換行符),則接入驗證生效,回調模式才能開啟。
后續回調企業時都會在請求URL中帶上以上參數(echostr除外),校驗方式與首次驗證URL一致。
使用回調模式
企業郵在回調企業URL時,會對消息體本身做AES加密,以XML格式POST到企業應用的URL上。
企業郵服務器在五秒內收不到響應會斷掉連接,并且重新發起請求,總共重試三次。如果在調試中,發現成員無法收到響應的消息,可以檢查是否消息處理超時。
當接收成功后,http頭部返回200表示接收ok,其他錯誤碼一律當做失敗并發起重試 關于重試的消息排重,有MailID的消息推薦使用MailID排重 或者UserID + Time排重。
假設企業回調URL為http://api.3dept.com。
請求說明:
1、msg_encrypt為經過加密的密文
2、AppID為應用id,每個應用都有唯一的id
3、CorpID為企業郵的CorpID
企業需要對msg_signature進行校驗,并解密msg_encrypt,得出msg的原文。
二、通訊錄管理
2.1 管理部門
2.1.1創建部門
請求說明
HTTPS請求方式:POST
請求地址:https://api.exmail.qq.com/cgi-bin/department/create?access_token=ACCESS_TOKEN
請求包結構體為:
{
"name":
"廣州研發中心",
"parentid": 1,
"order": 1
}
參數說明
參數
必須
說明
access_token
是
調用接口憑證
name
是
部門名稱。長度限制為1~64個字節,字符不能包括\:*?"<>|
parentid
是
父部門id。id為1可表示根部門
order
否
在父部門中的次序值。order值小的排序靠前。
權限說明
系統應用須擁有父部門的管理權限。
返回結果
{
"errcode":
0,
"errmsg":
"created",
"id": 2
}
參數
說明
errcode
返回碼
errmsg
對返回碼的文本描述內容
id
創建的部門id。id為64位整型數
2.1.2更新部門
請求說明:
HTTPS請求方式:POST
請求地址:https://api.exmail.qq.com/cgi-bin/department/update?access_token=ACCESS_TOKEN
請求包結構體為(如果非必須的字段未指定,則不更新該字段之前的設置值):
{
"id": 2,
"name":
"廣州研發中心",
"parentid": 1,
"order": 1
}
·???????? 參數說明:
參數
必須
說明
access_token
是
調用接口憑證
id
是
部門id
name
否
更新的部門名稱。長度限制為1~64個字節,字符不能包括\:*?"<>|。修改部門名稱時指定該參數
parentid
否
父部門id。id為1可表示根部門
order
否
在父部門中的次序值。order值小的排序靠前。
權限說明
系統應用須擁有指定部門的管理權限。
返回結果
{
"errcode":
0,
"errmsg":
"updated"
}
參數
說明
errcode
返回碼
errmsg
對返回碼的文本描述內容
2.1.3刪除部門
請求說明:
HTTPS請求方式:GET
請求地址:https://api.exmail.qq.com/cgi-bin/department/delete?access_token=ACCESS_TOKEN&id=ID
參數說明:
參數
必須
說明
access_token
是
調用接口憑證
id
是
部門id。(注:不能刪除根部門;不能刪除含有子部門、成員的部門)
權限說明
系統應用須擁有指定部門的管理權限。
返回結果
{
"errcode":
0,
"errmsg":
"deleted"
}
參數
說明
errcode
返回碼
errmsg
對返回碼的文本描述內容
2.1.4獲取部門列表
請求說明:
HTTPS請求方式:GET
請求地址: https://api.exmail.qq.com/cgi-bin/department/list?access_token=ACCESS_TOKEN&id=ID
·
參數說明:
參數
必須
說明
access_token
是
調用接口憑證
id
否
部門id。獲取指定部門及其下的子部門。id為1時可獲取根部門下的子部門。
權限說明
系統應用須擁有指定部門的查看權限。
返回結果
{
"errcode":
0,
"errmsg":
"ok",
"department": [{
"id": 2,
"name": "廣州研發中心",
"parentid": 1,
"order": 10
},{
"id": 3
"name": "郵箱產品部",
"parentid": 2,
"order": 40
}]
}
參數
說明
errcode
返回碼
errmsg
對返回碼的文本描述內容
department
部門列表數據。以部門的order字段從小到大排列
id
部門id
name
部門名稱
parentid
父部門id。
order
在父部門中的次序值。order值小的排序靠前
2.1.5查找部門
請求說明:
HTTPS請求方式:POST
請求地址:https://api.exmail.qq.com/cgi-bin/department/search?access_token=ACCESS_TOKEN
請求包結構體為:
{
"name":
"郵箱產品部",
"fuzzy":
0,
}
參數說明:
參數
必須
說明
access_token
是
調用接口憑證
name
否
查找的部門名字,必須合法
fuzzy
否
1/0:是否模糊匹配
權限說明
系統應用須擁有指定部門的查看權限。
返回結果
{
"errcode":
0,
"errmsg":
"ok",
"department": [
{
"id": 3
"name": "郵箱產品部",
"parentid":
2,
"order": 40,
"path":"廣州研發中心/郵箱產品部"
},
{
"id": 10
"name": "郵箱產品部",
"parentid": 6,
"order": 40,
"path":"深圳研發中心/郵箱產品部"
}
]
}
參數
說明
errcode
返回碼
errmsg
對返回碼的文本描述內容
department
部門列表數據。以部門的order字段從小到大排列
id
部門id
name
部門名稱
parentid
父部門id。根部門為0
order
在父部門中的次序值。order值小的排序靠前。
path
部門路徑,部門用’/ ’作分割符
2.2 管理成員
2.2.1創建成員
請求說明:
HTTPS請求方式:POST
請求地址: https://api.exmail.qq.com/cgi-bin/user/create?access_token=ACCESS_TOKEN
請求包結構體為:
{
"userid": " zhangsan@gzdev.com
",
"name": "張三",
"department": [1, 2],
"position": "產品經理",
"mobile": "15913215XXX",
"tel": "123456",
"extid": "01",
"gender": "1",
"slaves":
[zhangsan@gz.com, zhangsan@bjdev.com],
"password":"******",
"cpwd_login":0
}
參數說明:
參數
必須
說明
access_token
是
調用接口憑證
userid
是
成員UserID。企業郵帳號名,郵箱格式
name
是
成員名稱。長度為1~64個字節
department
是
成員所屬部門id列表,不超過20個
position
否
職位信息。長度為0~64個字節
總結
以上是生活随笔為你收集整理的php 腾讯企业邮箱接口,帮助中心 腾讯企业邮箱OpenApi协议的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 无极菜单 php,ThinkPHP菜单无
- 下一篇: 眼睛有麦粒肿是什么原因