flex-height
text-black

使用銀行應用程式進行付款的人員

什麼是 API(應用程式介面)?

API(應用程式設計介面):API 的定義、類型、關鍵使用案例和優勢。

default

{}

default

{}

primary

default

{}

secondary

API 概覽

API(應用程式設計介面)是一組建立和與軟體應用程式互動的規則和通訊協定。

API 作為中介,允許兩個不同的應用程式相互通訊。此通訊可包含透過 API 傳送和擷取資料,這表示不同軟體元件互動並執行工作。

透過定義一組明確的方法和工具,API 可確保不同的軟體元件可以可靠地互動,無論其基礎架構或技術為何。因此,API 在網際網路的成長中扮演至關重要角色,促成雲端服務、行動應用程式開發、電子商務平台和應用程式的的蓬勃發展,以及網路服務的整合。

API 的功能為何:

一個簡單的範例能說明 API 定義中的「介面」部分,就是天氣應用程式。天氣應用程式不會在手機上儲存天氣資料,因為應用程式的開發人員可能與天氣預測或氣象無關。相反地,其會將請求傳送至氣象服務的 API,並接收目前的天氣資料。接著,在使用者端,此資料會以美觀且便利的方式在應用程式設計介面中顯示。這種使用者行動應用程式與氣象服務之間的互動,就是透過 API 才得以實現。

API 如何運作?

API 可藉由公開有限數量的動作和資料點運作,外部軟體可與其互動。當軟體系統需要存取另一個系統(例如資料或功能)所提供的資源時,會傳送指定要執行動作的要求。這稱為 API 請求。若已授權 API,系統會處理此請求並傳回回應。

API 通常會設計為由業務事件驅動。事件是對業務重要的動作或狀態變更,例如當有人刷信用卡、辦理登機手續、重設密碼,或在倉庫中更新庫存時。如此一來,API 通常會在事件導向架構中使用,促進端到端流程,進而存取多個系統以完成與該流程相關的特定工作。

API 為何重要?

API 相當重要,因為可提升擴展性、實現自動化並促進整合。

API 的優點

API 的優點包括改善成本效益、提升資料取得便利性和加速開發。

API 範例和使用案例

API 的範例和使用案例極多。下列只包含現今使用 API 方式的眾多範例中的幾個。

可擴展性

API 在擴充應用程式和系統中相當重要,並可實現模組化開發,在不影響整個系統的情況下,可獨立擴展不同的元件。

這對雲端運算特別重要,因為能夠動態處理不同負載的能力至關重要。API 可讓應用程式整合並使用可視需要擴展或縮減的服務來協助達成此目標。這可確保資源有效使用,且符合成本效益。

自動化

API 是自動化的關鍵驅動因素。允許不同的軟體系統相互通訊與互動,而不需要使用者在每一步都介入。此自動化是 API 的優勢之一,因為速度和效率在現代工作流程中至關重要。透過 API 將例行工作自動化,企業可以簡化流程、減少工作負擔,並釋放寶貴資源以投入需要人類監督的複雜工作。

整合

API 在整合分散系統上的優勢不容低估。這些 API 能讓各種軟體元件協作,不論基礎技術為何。對於使用多種軟體解決方案的企業而言,這項整合功能對使用多種軟體解決方案的企業至關重要。API 有助於這些解決方案能夠協同工作、提供統一的使用者體驗,並確保資料在組織不同部門之間順暢傳送。

API 的三大效益

API 的關鍵效益包括改善成本效益、提升資料取得便利性和加速開發。

1. 成本效益

API 可節省開發時間,大幅降低開發成本。API 也可整合第三方服務,相較於從頭開始建立複雜系統,更符合成本效益。

2. 資料可存取性

API 使資料的存取普及化,並提供受控的存取,讓原本可能被不同部門或系統孤立的資料集能夠被使用。此存取支援資料導向的決策。API 可確保在最需要的位置輕鬆安全地存取和共用資料,發揮洞察和創新的潛能。

3. 加速開發

API 是專為開發人員所設計,提供完整記錄的標準化軟體互動方式,讓開發人員更容易了解和使用。API 支援模組化、對開發人員友善的開發流程,更快上手並提升生產力。

資源

SAP 客戶案例:Nu Sket

為了支援快速演變的業務、簡化 IT 架構,並實現 SAP 和第三方解決方案之間的快速整合,Nu Shird 選擇了 SAP Integration Suite [整合式套件]。

探索案例

API 類型

API 類型包含 RESTful、OData、SOAP 和 GraphQL。討論內容如下。

每次應用程式從其他服務提取資料,或透過其他平台執行動作時,背後幾乎一定是 API 在運作。

產業特定 API 使用案例

醫療保健:API 有助於連接患者記錄、醫院管理系統和遠距醫療服務,進而改善照護協調和病患成果。

旅遊業:API 用於將旅行社和線上預訂平台連結至航空公司資料庫、飯店預訂系統和運輸服務。

社交媒體整合:API 允許開發人員將社交功能整合至其應用程式,不僅是登入,還涵蓋分享內容和擷取使用者資料。

電子商務:API 可整合付款閘道、庫存管理和客戶服務工具,打造流暢的購物體驗並改善客戶體驗。

30

%

縮短處理時間

Harrod 客戶案例

了解 SAP Integration Suite [整合式套件] 中的 API 管理功能如何支援 Harrolls 的數位轉型和電子商務平台策略轉型。

閱讀案例

API 的主要挑戰

企業使用 API 的主要挑戰如下。

API 對企業有何意義?

以表現層狀態轉換(REST)架構為基礎的 RESTful API 廣泛用於網路服務,透過 HTTP 運作並使用標準 HTTP 方法。通常以 JSON 或 XML 格式交換資料。RESTful API 是無狀態,表示用戶端的每個請求包含伺服器完成該請求所需的所有資訊。

主要優勢:RESTful API 因其效能、簡單性、易用性以及可擴展性而受到重視。

常見應用於:雲端服務、行動應用程式和 IoT 裝置。

API 如何促進企業轉型?

API 在建立生態體系及協助企業拓展市場觸角中扮演關鍵角色,促進企業轉型。

主要優勢:OData API 支援豐富的查詢語言、有效率的資料擷取,以及不同服務和平台之間的整合。

常見應用於:尋求改善資料存取和系統互通性的組織。

管理 API 端點的最佳實務

管理 API 端點的最佳實務,著重於端點安全性和有效的資料傳輸。

主要優勢:SOAP API 在交易管理與安全性方面表現突出。

常見應用於:企業級應用程式,例如金融服務和 CRM 系統。

GraphQL API

GraphQL 為 API 的查詢語言,也是使用您為資料所定義類型系統來執行這些查詢的執行時期。與具有多個端點的 RESTful API 不同,GraphQL API 通常具有單一端點。此方法可讓用戶端確切請求所需資料,

主要優勢:GraphQL API 更具彈性和效率,特別適用於擁有大量不同類型的複雜系統。

常見應用於:資料擷取,以及需要依特定需求量身打造的請求。

API 開發的未來趨勢

一般 API 生命週期包含下列階段:

  1. 規劃和設計:定義目的、端點、資料模型和驗證需求,並建立 API 規格。
  2. 開發:建立 API、建置邏輯、將其連線至資料庫或服務,並確保正確錯誤處理、版本控制和文件記錄。
  3. 測試:驗證 API 是否正確運作、正確處理錯誤,並在負載下保持良好效能。
  4. 部署:將 API 核發至正式運作或暫存環境,讓使用者可在其中存取。
  5. 整合:API 整合至應用程式,並視需要提供清楚的紀錄文件和 SDK。
  6. 監控:追蹤使用、效能、錯誤和運行時間以確保 API 順利執行。
  7. 維護:根據使用者意見回饋套用更新、錯誤修復、安全性修補程式和改善,若變更幅度較大,則發佈新版本。
  8. 淘汰和退役:最終逐步淘汰舊版本,或在不再需要時停用整個 API,並將變更與停止支援計劃告知使用者。

API 紀錄文件和規格

清晰且資訊豐富的 API 紀錄文件是 API 開發和使用的不可或缺一部分。

若沒有 API 紀錄文件,即使是最佳的 API 也可能無法使用。這些紀錄文件是連結 API 理論上功能與實際應用之間的關鍵橋樑。

API 的主要挑戰

在 API 領域,挑戰主要集中在安全性、合規性、淘汰,以及 API 速率限制等問題。

API 安全性風險

作為軟體應用程式的介面,API 容易受到各種安全性威脅,例如:

確保強大的安全性措施(例如驗證、授權和加密)至關重要。API 安全性是持續不斷的程序,需要持續監控及更新以防範新興威脅。

API 速率限制

管理 API 的負載對於維護效能和可用性至關重要。API 速率限制是用於控制 API 控制程式流量量的策略,防止過度使用或濫用,並降低 DoS(單一來源)和 DDoS 攻擊的效果。建置有效的速率限制可能相當困難,因為需要在保護 API 避免超載與允許合法請求之間取得平衡。

取代和版本控制

API 隨時間演進,需要更新與變更。透過版本控制和取代舊版本來管理此演進是一大挑戰。其包括確保向後相容性、向使用者傳達變更資訊,以及將使用者移轉至新版本,而不中斷其作業。

供應商鎖定

使用 API 的企業面臨一項重大挑戰,就是供應商鎖定的風險。當公司過度依賴特定供應商的 API,導致未來難以切換至其他供應商時,便會發生此情況。降低這種風險的方法包括:

法規遵循和資料隱私

在資料成為重要資產的時代,遵循資料隱私法律和規定至關重要。企業必須確保 API 的使用遵循通用資料保護法規(GDPR)和醫療保險便利和責任法案(HIPAA)等標準。其中包含:

定期稽核並隨時掌握不斷變化的法規架構,這對於維護法規遵循和保護客戶資料也至關重要。

API 和業務影響

API 的整合已對現代企業產生根本性影響。對企業而言,API 不只是一種技術:

管理 API 端點的最佳實務

管理 API 端點的最佳實務,著重於端點安全性、清晰度和有效的資料傳輸。

  1. 使用清楚且一致的命名和方法:遵循清楚的慣例,資源使用名詞並具備邏輯階層,集合使用複數名詞,並使用標準 HTTP 方法動詞。
  2. 端點應有專注的目的:每個端點應有單一、清楚的目的,而非嘗試一次執行過多動作。
  3. 優先考量 API 安全性:落實強式驗證和權限機制(例如 OAuth 2.0),並確保使用 SSL/TLS 對傳輸中的資料進行加密。透過滲透測試和 API 安全性稽核定期測試安全性。
  4. 優化端點效能:只傳回必要資料以減少資料負載,利用快取機制來降低伺服器壓力,並建置 API 速率限制以控制流量並防止超載。
  5. 記錄所有內容:為所有端點維護詳細、嚴格且最新的文件,並提供範例並清楚記錄任何變更。

API 開發的未來趨勢

展望未來,API 開發的趨勢將更強調個人化、智慧化,以及具備情境感知的 API。AI 和機器學習與 API 的整合可帶來智慧介面,可更有效率地預測使用者需求和自動化流程,特別是隨著AI 在開發中被廣泛應用

此外,由於資料隱私和安全性方面的關注日益增加,我們預期會更加強調 API 安全性實務和治理。零信任架構、嚴格的驗證方法和自動化的威脅檢測已逐漸成為常態。

另一個可能的趨勢是無伺服器 API 的興起。這類 API 不需要管理伺服器,而是使用雲端功能自動擴展進行運作。

最後,我們也期望 API 開發人員體驗能有所改善。開發人員可用的軟體已日益精密,包含更進階的文件工具、互動式測試環境和編碼工具。AI 強化的開發人員工具提供機器學習、自然語言處理和生成式 AI 功能,這些功能有時直接內建於編碼軟體中,並因 AI Copilot 而變得非常容易存取。

常見問題

簡單來說,什麼是 API?
API 或應用程式設計介面是一組規則和通訊協定,允許不同的軟體應用程式和系統彼此互動。
API 如何運作?
API 可藉由公開有限數量的動作和資料點運作,讓外部軟體可與其互動。當其他軟體系統需要存取時,便會傳送 API 請求,指定要執行的動作。若授權 API,則系統會處理此請求並傳回 API 回應。
API 範例為何?
多數智慧型手機中的天氣應用程式,就是一個簡單且容易理解的 API 範例。這些應用程式不會自行取得氣象資料,而是使用 API 從天氣預測服務取得最新的天氣資料,並在其天氣應用程式的方便熟悉介面中向使用者顯示。
API 的主要類型為何?
API 的主要類型為 RESTful API、OData、SOAP API 和 GraphQL API。
API 的用途為何?
API 應用於各式各樣的數位生態系統、SaaS 平台和服務,其中包含行動應用程式、雲端服務、電子商務平台和應用程式、金融科技產品、數位醫療保健系統,以及網路服務的整合。