每個 API 都需要將該 API 的版本作為輸入傳入。在未來的發行版本中,可能會支援相同 API 的多個版本。在此發行版本中,所有內容都是 version 1。
如果引入突破性變更,將會發行新版本的 API。突破性變更可以定義為在升級到新版本時使用此 API 會中斷應用程式的任何內容。希望移至新版本 API 的應用程式實行者將需要更新其應用程式中的呼叫以參考新版本,並應假設該應用程式需要進行一些重工才能使用新 API 版本。
不需要 API 中引入新功能的應用程式可以繼續參考其應用程式中呼叫的版本,而不必擔心其應用程式在升級時中斷。
API 可能更新而不建立新版本。例如,可能需要進行錯誤修正或安全性修正,才能使 API 正確運作。
「系統整合者」必須定義可執行 API 的非管理員角色。管理員可以使用
SetPermission 服務來將執行權限授與其他使用者,及使用
RevokePermission 來撤銷指定權限。如需詳細資訊,請參閱主題
存取控制的 API。
假設我們有一個名為 "Operators" 的使用者群組。最初,此群組中的使用者無權存取 API 服務。
欲授與權限,管理員可以透過下列輸入來呼叫 SetPermission 服務:
在此呼叫成功之後,"Operators" 群組中的使用者便能夠在 PTC-PLM.Windchill.BillOfProcess.Part 物件上啟動 Search 服務。
{
"inputs": {
"roleName": "Operators",
"apis": [
{
"thingName": "PTC-PLM.Windchill.BillOfProcess.Part",
"serviceName": "Search"
}
]
},
"version": "1"
}
欲撤銷權限,管理員可以透過下列輸入呼叫 RevokePermission 服務:
{
"inputs": {
"roleName": "Operators",
"apis": [
{
"thingName": "PTC-PLM.Windchill.BillOfProcess.Part",
"serviceName": "Search"
}
]
},
"version": "1"
所有 API 的輸出均採用「通用通訊物件」格式。有關此格式的詳細資訊,請參閱「說明中心」的
Common Communication Object 結構主題。