{"id":3893,"date":"2022-07-21T07:53:48","date_gmt":"2022-07-21T07:53:48","guid":{"rendered":"https:\/\/ccbill.com\/kb\/?p=3893"},"modified":"2023-03-06T09:01:21","modified_gmt":"2023-03-06T09:01:21","slug":"types-of-api","status":"publish","type":"post","link":"https:\/\/ccbill.com\/kb\/types-of-api","title":{"rendered":"Types of APIs"},"content":{"rendered":"\n<p class=\"h3\">Introduction<\/p>\n\n\n\n<p>Most merchants do not want to be constrained by third-party software providers but lack the resources to develop proprietary business solutions from scratch. <\/p>\n\n\n\n<p>APIs enable merchants to design custom solutions by integrating advanced features and functionalities developed by other companies.<\/p>\n\n\n\n<p>Determining which API type and protocol suits your company\u2019s unique needs is a long-term business decision.<\/p>\n\n\n\n<p>Learn about API types and protocols and avoid costly mistakes from the get-go.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img decoding=\"async\" width=\"800\" height=\"400\" src=\"https:\/\/ccbill.com\/kb\/wp-content\/uploads\/2022\/07\/api-types.png\" alt=\"Developer working on an API integration.\" class=\"wp-image-3895\" srcset=\"https:\/\/ccbill.com\/kb\/wp-content\/uploads\/2022\/07\/api-types.png 800w, https:\/\/ccbill.com\/kb\/wp-content\/uploads\/2022\/07\/api-types-300x150.png 300w, https:\/\/ccbill.com\/kb\/wp-content\/uploads\/2022\/07\/api-types-768x384.png 768w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><\/figure><\/div>\n\n\n<h2 class=\"wp-block-heading\">What is an API?<\/h2>\n\n\n\n<p>An <a href=\"https:\/\/ccbill.com\/kb\/what-is-an-api\" target=\"_blank\" rel=\"noreferrer noopener\">API<\/a> (Application Programming Interface) is a set of protocols and declarations that allow a software solution to interact with and provide services to other software. API is the medium for translating data from one program so that another program can read it.<\/p>\n\n\n\n<p>Organizations use APIs to expose a software product, its capabilities, and data in a machine-readable format. Internal and external clients utilize these resources to build new products and deliver value to the end customer.<\/p>\n\n\n\n<p>For example, a PSP (Payment Service Provider) discloses <a href=\"https:\/\/ccbill.com\/kb\/what-is-an-api-endpoint\" target=\"_blank\" rel=\"noreferrer noopener\">API endpoints<\/a> (digital locations) for <a href=\"https:\/\/ccbill.com\/kb\/payment-authentication-methods\" target=\"_blank\" rel=\"noreferrer noopener\">payment authentication<\/a> and processing services. Merchants do not need to understand the remote system\u2019s source code; they only need instructions on how to connect their solution to the API endpoint (i.e., <a href=\"https:\/\/ccbill.com\/kb\/what-is-api-integration\" target=\"_blank\" rel=\"noreferrer noopener\">integrate with the API<\/a>).<\/p>\n\n\n\n<hr class=\"wp-block-separator has-text-color has-vivid-cyan-blue-color has-css-opacity has-vivid-cyan-blue-background-color has-background is-style-wide\"\/>\n\n\n\n<p><strong>Note<\/strong>: Find out how to use CCBill\u2019s API to streamline and automate payment flows in your online store. <a href=\"https:\/\/ccbill.com\/doc\/ccbill-restful-transaction-api\" target=\"_blank\" rel=\"noreferrer noopener\">CCBill\u2019s RESTful Transaction API<\/a> documentation explains how to charge customers using payment tokens.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-text-color has-vivid-cyan-blue-color has-css-opacity has-vivid-cyan-blue-background-color has-background is-style-wide\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">API Types<\/h2>\n\n\n\n<p>A company can utilize different APIs to create unique business solutions and customer-facing applications. Based on the release policy and scope of use, there are four types of APIs.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Public APIs<\/h3>\n\n\n\n<p>A public API, sometimes called an open or external API, is intended to be consumed by as many clients as possible. Third-party developers can freely access API documentation and use it to develop and test applications without licensing restrictions. <\/p>\n\n\n\n<p>Organizations openly share their system\u2019s functionalities and data to increase brand awareness or as part of a market penetration strategy.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Internal APIs<\/h3>\n\n\n\n<p>Companies use internal APIs to integrate existing applications and systems or build new apps that streamline business processes. They remain in complete control over the API's usage and prevent individuals or applications outside the organization from accessing or communicating with internal systems.<\/p>\n\n\n\n<p>Even though internal APIs are only used within an organization, developers should not compromise on security features, user authorization, or authentication. Companies dealing with sensitive customer information, like payment card data, must ensure that their internal APIs comply with the <a href=\"https:\/\/ccbill.com\/kb\/what-is-pci-compliance\" target=\"_blank\" rel=\"noreferrer noopener\">PCI Data Security Standard<\/a>.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Partner APIs<\/h3>\n\n\n\n<p>Some organizations provide API access to their applications and <a href=\"https:\/\/phoenixnap.com\/kb\/what-is-a-database\" target=\"_blank\" rel=\"noreferrer noopener\">databases<\/a> to other companies (partners) to increase ancillary revenue. <\/p>\n\n\n\n<p>A partner API is often used to share sensitive customer information with known business partners, and it incorporates advanced security features and <a href=\"https:\/\/ccbill.com\/kb\/strong-customer-authentication\" target=\"_blank\" rel=\"noreferrer noopener\">strong user authentication<\/a> mechanisms.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img decoding=\"async\" width=\"800\" height=\"406\" src=\"https:\/\/ccbill.com\/kb\/wp-content\/uploads\/2022\/07\/api-type-user-app.png\" alt=\"Using an API to create mobile apps.\" class=\"wp-image-3902\" srcset=\"https:\/\/ccbill.com\/kb\/wp-content\/uploads\/2022\/07\/api-type-user-app.png 800w, https:\/\/ccbill.com\/kb\/wp-content\/uploads\/2022\/07\/api-type-user-app-300x152.png 300w, https:\/\/ccbill.com\/kb\/wp-content\/uploads\/2022\/07\/api-type-user-app-768x390.png 768w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><\/figure><\/div>\n\n\n<p>Partnering companies enter into an agreement with clearly defined API usage terms, costs, and licenses. API providers want to ensure that access is not used in a way that can damage their reputation.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Composite APIs<\/h3>\n\n\n\n<p>A complex action like creating a shopping cart order requires several <a href=\"https:\/\/ccbill.com\/kb\/what-is-an-api-call\" target=\"_blank\" rel=\"noreferrer noopener\">API calls<\/a> sent to multiple API endpoints. <\/p>\n\n\n\n<p>Composite APIs allow developers to batch several API requests into a single API call and receive a single response in return. Composite APIs are ideal for users who need to collect data from multiple sources and perform a particular task. By reducing the number of API requests and responses, composite APIs can improve application loading times and performance.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-text-color has-vivid-cyan-blue-color has-css-opacity has-vivid-cyan-blue-background-color has-background is-style-wide\"\/>\n\n\n\n<p><strong>Note: <\/strong>Read our article to learn more about <a href=\"https:\/\/ccbill.com\/kb\/what-is-api-integration\" target=\"_blank\" rel=\"noreferrer noopener\">API integration<\/a> and how it can help streamline workflows.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-text-color has-vivid-cyan-blue-color has-css-opacity has-vivid-cyan-blue-background-color has-background is-style-wide\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">API Architectural Styles (Protocols)<\/h2>\n\n\n\n<p>Developers use different technologies and programming languages when developing applications and web services. An API needs to offer a common structure with clear rules and constraints to enable clear communication between two different software solutions.<\/p>\n\n\n\n<p>The four widely used API development protocols or architecture styles include:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>REST<\/li>\n\n\n\n<li>RPC<\/li>\n\n\n\n<li>SOAP<\/li>\n\n\n\n<li>GraphQL<\/li>\n<\/ul>\n\n\n\n<p>Each format has unique advantages and drawbacks depending on specific use cases and business objectives.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">REST<\/h3>\n\n\n\n<p>The REST (representational state transfer) architecture style is popular for building APIs consumed by <a href=\"https:\/\/phoenixnap.com\/blog\/web-server-vs-application-server\" target=\"_blank\" rel=\"noreferrer noopener\">web servers and web apps<\/a>.<\/p>\n\n\n\n<p>REST relies on a client\/server architecture, enabling developers to separate front-end and back-end services. This allows different components to evolve independently over time without compromising system stability.<\/p>\n\n\n\n<p><a href=\"https:\/\/ccbill.com\/kb\/what-is-a-rest-api\" target=\"_blank\" rel=\"noreferrer noopener\">REST APIs<\/a> are stateless as receivers cannot keep the session state from a prior request. No information from a call is retained, meaning each session is independent and is understood in isolation.<\/p>\n\n\n\n<p>Web APIs that adhere to REST constraints are called RESTful APIs. RESTful APIs use HTTP requests (methods) and URL-encoded parameters to access API resources. Commonly used RESTful HTTP methods include: &nbsp;<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>POST<\/li>\n\n\n\n<li>GET<\/li>\n\n\n\n<li>PUT<\/li>\n\n\n\n<li>PATCH<\/li>\n\n\n\n<li>DELETE<\/li>\n<\/ul>\n\n\n\n<p>RESTful supports many different formats for exchanging and storing data:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Plain text<\/li>\n\n\n\n<li>HTML<\/li>\n\n\n\n<li><a href=\"https:\/\/phoenixnap.com\/blog\/what-is-yaml-with-examples\" target=\"_blank\" rel=\"noreferrer noopener\">YAML<\/a><\/li>\n\n\n\n<li>XML<\/li>\n\n\n\n<li>JSON<\/li>\n<\/ul>\n\n\n\n<p>An example of an API request for creating a payment token using CCBill's RESTful API:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>var data = JSON.stringify({\n  &quot;clientAccnum&quot;: 900000,\n  &quot;clientSubacc&quot;: 0,\n  &quot;customerInfo&quot;: {\n    &quot;customerFname&quot;: &quot;Tyler&quot;,\n    &quot;customerLname&quot;: &quot;Thomas&quot;,\n    &quot;address1&quot;: &quot;Woodland Drive&quot;,\n    &quot;address2&quot;: &quot;Apt 21&quot;,\n    &quot;city&quot;: &quot;Tempe&quot;,\n    &quot;state&quot;: &quot;AZ&quot;,\n    &quot;zipcode&quot;: &quot;85281&quot;,\n    &quot;country&quot;: &quot;US&quot;,\n    &quot;phoneNumber&quot;: &quot;5555555555&quot;,\n    &quot;email&quot;: &quot;tthomas@xyz.com&quot;,\n    &quot;ipAddress&quot;: &quot;10.70.60.14&#039;&quot;,\n    &quot;browserHttpUserAgent&quot;: &quot;Mozilla\/5.0 (Windows NT 6.1; Win64; x64; rv:60.0) Gecko\/20100101 Firefox\/60.0&quot;,\n    &quot;browserHttpAccept&quot;: &quot;text\/html,application\/xhtml+xml,application\/xml;q=0.9,*\/*;q=0.8&quot;,\n    &quot;browserHttpAcceptLanguage&quot;: &quot;en-US,en;q=0.5&quot;,\n    &quot;browserHttpAcceptEncoding&quot;: &quot;gzip, deflate, br&quot;\n  },\n  &quot;paymentInfo&quot;: {\n    &quot;creditCardPaymentInfo&quot;: {\n      &quot;cardNum&quot;: &quot;4473707989493598&quot;,\n      &quot;nameOnCard&quot;: &quot;Tyler Thomas&quot;,\n      &quot;expMonth&quot;: &quot;04&quot;,\n      &quot;expYear&quot;: &quot;2019&quot;\n    }\n  },\n  &quot;subscriptionId&quot;: 900000000000000000,\n  &quot;timeToLive&quot;: 30,\n  &quot;validNumberOfUse&quot;: 3\n});\n\nvar xhr = new XMLHttpRequest();\nxhr.withCredentials = true;\n\nxhr.addEventListener(&quot;readystatechange&quot;, function () {\n  if (this.readyState === 4) {\n    console.log(this.responseText);\n  }\n});\n\nxhr.open(&quot;POST&quot;, &quot;https:\/\/api.ccbill.com\/payment-tokens\/merchant-only&quot;);\nxhr.setRequestHeader(&quot;Content-Type&quot;, &quot;application\/json&quot;);\nxhr.setRequestHeader(&quot;Authorization&quot;, &quot;Bearer eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.eyJhdWQiOlsibWNuLXRyYW5zYWN0aW9uLXNlcnZpY2UiLCJtY24tYWRtaW4tc2VydmljZSJdLCJzY29wZSI6WyJjcmVhdGVfdG9rZW4iLCJyZWFkX3Rva2VuIiwiY2hhcmdlX3Rva2VuIiwiY3JlYXRlX3Byb2dyYW0iLCJyZWFkX3Byb2dyYW0iLCJjcmVhdGVfcHJvZ3JhbV9wYXJ0aWNpcGF0aW9uIiwicmVhZF9wcm9ncmFtX3BhcnRpY2lwYXRpb24iLCJtb2RpZnlfcHJvZ3JhbV9wYXJ0aWNpcGF0aW9uIl0sImV4cCI6MTUzNzM4MDczNiwiYXV0aG9yaXRpZXMiOlsiTUNOX0FQSV9UT0tFTl9DSEFSR0VSIiwiTUNOX0FQSV9UT0tFTl9DUkVBVE9SIiwiTUNOX0FQSV9BRE1JTiJdLCJqdGkiOiI4YzI2Njg1MC00NjMzLTQzZDMtYjZjOC1lNzIyY2ExNjQ1YTUiLCJjbGllbnRfaWQiOiI1MjE3NjhhYTc1OGQxMWU4YWE2YjAwNTA1NjlkMTU4NSJ9.HRYXZFATkIcI2_LJ1W_xo67IfBnbN9atyYNzyHqseLxYUxzgwBsAV5rNqCixKemOrDIeQLBN4jrwRsBIHDpEvshwBC8XmTodDJzpGmMaU9s1r20RV68X0_d1yTgSDke_Of7VCrVmJRbSuDl7AgsfTqQ1J7nWyu9vcIaER93ms-vadser_Ot9Z68_HAmCJL3DCLpdIFq3PYtBMKKKqXbvhfhSZQZD3b6-aewAnBo0VzpvK6tREqw1rv9_73oAvYcW2aHAj79ILr8viWMM40LyDKMMYOYkneg3hJUQsUVeh9WzztYUJKzERYNXje9fYIGN-eofoLvX7OZJ3eXmIfkrfQ&quot;);\nxhr.setRequestHeader(&quot;Cache-Control&quot;, &quot;no-cache&quot;);\n\nxhr.send(data);<\/code><\/pre>\n\n\n\n<p>REST is a flexible and scalable architecture style that can support large and dynamic customer bases, making it ideal for public APIs.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">RPC<\/h3>\n\n\n\n<p>The Remote Procedural Call (RPC) involves sending a request to a remote server and receiving a structured response. RPC is used to initiate actions, unlike REST API, which is used to exchange documents (resources).<\/p>\n\n\n\n<p>RPC APIs are highly structured, and developers can use either JSON or XML to encode requests and bind resources to specific purposes and functions.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><img decoding=\"async\" width=\"800\" height=\"389\" src=\"https:\/\/ccbill.com\/kb\/wp-content\/uploads\/2022\/07\/rpc-api-type.png\" alt=\"A high-level overvie of the RPC API protocol.\" class=\"wp-image-3899\" srcset=\"https:\/\/ccbill.com\/kb\/wp-content\/uploads\/2022\/07\/rpc-api-type.png 800w, https:\/\/ccbill.com\/kb\/wp-content\/uploads\/2022\/07\/rpc-api-type-300x146.png 300w, https:\/\/ccbill.com\/kb\/wp-content\/uploads\/2022\/07\/rpc-api-type-768x373.png 768w\" sizes=\"(max-width: 800px) 100vw, 800px\" \/><\/figure><\/div>\n\n\n<p>RPC APIs are not well suited for intense public consumption. RPC API is best implemented in a microservices-oriented system, where it results in a more tightly coupled and efficient environment.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">SOAP<\/h3>\n\n\n\n<p>SOAP (Simple Access Object Protocol) is a messaging standard that supports HTTP, TCP, and SMTP communication protocols. Most operating systems utilize these protocols, allowing SOAP-based APIs to power web services regardless of the underlying programing language or platform.<\/p>\n\n\n\n<p>SOAP has a strict structure, and developers are required to encode SOAP messages as XML documents. <a href=\"https:\/\/phoenixnap.com\/kb\/soap-vs-rest#ftoc-heading-2\" target=\"_blank\" rel=\"noreferrer noopener\">SOAP messages<\/a> contain up to four elements:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Envelope <\/strong>- Mandatory root element that identifies the document as a SOAP message.<\/li>\n\n\n\n<li><strong>Header<\/strong> - Optional child element used to pass application-related information and add new functionalities.<\/li>\n\n\n\n<li><strong>Body<\/strong> - Mandatory child element containing the information exchanged with the recipient.<\/li>\n\n\n\n<li><strong>Fault (error handling)<\/strong> - Optional sub-element of the SOAP body used for reporting errors.<\/li>\n<\/ul>\n\n\n\n<p>SOAP is <a href=\"https:\/\/phoenixnap.com\/kb\/acid-vs-base\" target=\"_blank\" rel=\"noreferrer noopener\">ACID<\/a> compliant and has built-in WS-security and SSL support. Fintech, Telco, and identity management providers use SOAP messages to ensure the security of automated data transmissions.<\/p>\n\n\n\n<p>The SOAP architecture is primarily used for internal and partner API solutions.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">GraphQL<\/h3>\n\n\n\n<p>GraphQL is a query language and server-side runtime environment for APIs. It aggregates data from multiple sources and retrieves requested data with a single API call.<\/p>\n\n\n\n<p>A GraphQL server contains a predefined schema that describes which queries are allowed, the objects and their fields, and the relationship between data types. A developer can create a GraphQL schema and build an interface around it using any programming language.<\/p>\n\n\n\n<p>The schema allows users to validate potential queries from their editor and discover potential issues before sending a request. Developers can efficiently eliminate potential data format issues by predicting query results ahead of time.<\/p>\n\n\n\n<p>GraphQL does not require the user to apply a specific application architecture and can be used alongside existing REST API. However, it presents a steep learning curve for specialists who previously worked with REST architecture.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">How to Choose an API Type?<\/h2>\n\n\n\n<p>Merchants need to select the most appropriate API format for their project based on:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Available resources (financial, technical, and staff).<\/li>\n\n\n\n<li>The complexity of the data they need to exchange.<\/li>\n\n\n\n<li>Data security requirements.<\/li>\n\n\n\n<li>Performance requirements and data exchange speeds.<\/li>\n\n\n\n<li>The programming languages a protocol supports.<\/li>\n\n\n\n<li>The development environment in which the solution is being developed.<\/li>\n<\/ul>\n\n\n\n<p>A basic format, such as RPC, is easier to develop and manage but may not provide enough protection for sensitive customer information merchants typically deal with. An API protocol that offers a high level of security increases development and maintenance costs significantly and forces merchants to hire specialized staff.<\/p>\n\n\n\n<p>The sensible course of action is to apply and test an API protocol in limited use cases and gradually extend it to new use cases before deciding.<\/p>\n\n\n\n<p class=\"h3\">Conclusion<\/p>\n\n\n\n<p>APIs allow merchants to develop proprietary business solutions and engage customer-facing apps without spending a fortune on long, drawn-out integrations. <\/p>\n\n\n\n<p>Understanding API types and protocols is an essential first step in making an informed business decision.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>The article briefly explores the different API types and popular API protocols.<\/p>\n","protected":false},"author":6,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[13,14],"tags":[],"class_list":["post-3893","post","type-post","status-publish","format-standard","hentry","category-payment-processing","category-web-development"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.8 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Types of APIs and API Protocols Explained | CCBill KB<\/title>\n<meta name=\"description\" content=\"Find out how REST, RPC, SOAP, and GraphQL API protocols work and select the optimal type of API and architecture for your project.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/ccbill.com\/kb\/types-of-api\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Types of APIs and API Protocols Explained | CCBill KB\" \/>\n<meta property=\"og:description\" content=\"Find out how REST, RPC, SOAP, and GraphQL API protocols work and select the optimal type of API and architecture for your project.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/ccbill.com\/kb\/types-of-api\" \/>\n<meta property=\"og:site_name\" content=\"CCBill Knowledge Base\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/ccbillBIZ\/\" \/>\n<meta property=\"article:published_time\" content=\"2022-07-21T07:53:48+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-03-06T09:01:21+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/ccbill.com\/kb\/wp-content\/uploads\/2022\/07\/api-types.png\" \/>\n<meta name=\"author\" content=\"Vladimir Kaplarevic\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@CCBillBIZ\" \/>\n<meta name=\"twitter:site\" content=\"@CCBillBIZ\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Vladimir Kaplarevic\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"8 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/ccbill.com\/kb\/types-of-api#article\",\"isPartOf\":{\"@id\":\"https:\/\/ccbill.com\/kb\/types-of-api\"},\"author\":{\"name\":\"Vladimir Kaplarevic\",\"@id\":\"https:\/\/ccbill.com\/kb\/#\/schema\/person\/1f198b1218f6343a2682022ac4395644\"},\"headline\":\"Types of APIs\",\"datePublished\":\"2022-07-21T07:53:48+00:00\",\"dateModified\":\"2023-03-06T09:01:21+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/ccbill.com\/kb\/types-of-api\"},\"wordCount\":1387,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/ccbill.com\/kb\/#organization\"},\"image\":{\"@id\":\"https:\/\/ccbill.com\/kb\/types-of-api#primaryimage\"},\"thumbnailUrl\":\"https:\/\/ccbill.com\/kb\/wp-content\/uploads\/2022\/07\/api-types.png\",\"articleSection\":[\"Payment Processing\",\"Web Development\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/ccbill.com\/kb\/types-of-api#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/ccbill.com\/kb\/types-of-api\",\"url\":\"https:\/\/ccbill.com\/kb\/types-of-api\",\"name\":\"Types of APIs and API Protocols Explained | CCBill KB\",\"isPartOf\":{\"@id\":\"https:\/\/ccbill.com\/kb\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/ccbill.com\/kb\/types-of-api#primaryimage\"},\"image\":{\"@id\":\"https:\/\/ccbill.com\/kb\/types-of-api#primaryimage\"},\"thumbnailUrl\":\"https:\/\/ccbill.com\/kb\/wp-content\/uploads\/2022\/07\/api-types.png\",\"datePublished\":\"2022-07-21T07:53:48+00:00\",\"dateModified\":\"2023-03-06T09:01:21+00:00\",\"description\":\"Find out how REST, RPC, SOAP, and GraphQL API protocols work and select the optimal type of API and architecture for your project.\",\"breadcrumb\":{\"@id\":\"https:\/\/ccbill.com\/kb\/types-of-api#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/ccbill.com\/kb\/types-of-api\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/ccbill.com\/kb\/types-of-api#primaryimage\",\"url\":\"https:\/\/ccbill.com\/kb\/wp-content\/uploads\/2022\/07\/api-types.png\",\"contentUrl\":\"https:\/\/ccbill.com\/kb\/wp-content\/uploads\/2022\/07\/api-types.png\",\"width\":800,\"height\":400,\"caption\":\"Developer working on an API integration.\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/ccbill.com\/kb\/types-of-api#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"KB Home\",\"item\":\"https:\/\/ccbill.com\/kb\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Web Development\",\"item\":\"https:\/\/ccbill.com\/kb\/category\/web-development\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Types of APIs\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/ccbill.com\/kb\/#website\",\"url\":\"https:\/\/ccbill.com\/kb\/\",\"name\":\"CCBill Knowledge Base\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/ccbill.com\/kb\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/ccbill.com\/kb\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/ccbill.com\/kb\/#organization\",\"name\":\"CCBill\",\"url\":\"https:\/\/ccbill.com\/kb\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/ccbill.com\/kb\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/ccbill.com\/kb\/wp-content\/uploads\/2020\/10\/ccbill-logo.png\",\"contentUrl\":\"https:\/\/ccbill.com\/kb\/wp-content\/uploads\/2020\/10\/ccbill-logo.png\",\"width\":160,\"height\":70,\"caption\":\"CCBill\"},\"image\":{\"@id\":\"https:\/\/ccbill.com\/kb\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/ccbillBIZ\/\",\"https:\/\/x.com\/CCBillBIZ\",\"https:\/\/www.linkedin.com\/company\/ccbill\",\"https:\/\/www.youtube.com\/c\/CCBillBiz\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/ccbill.com\/kb\/#\/schema\/person\/1f198b1218f6343a2682022ac4395644\",\"name\":\"Vladimir Kaplarevic\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/ccbill.com\/kb\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/cc08885e8fec32585bae8a0f5a1aef92f8c8c4fc33692e74e0ec2e63633d2478?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/cc08885e8fec32585bae8a0f5a1aef92f8c8c4fc33692e74e0ec2e63633d2478?s=96&d=mm&r=g\",\"caption\":\"Vladimir Kaplarevic\"},\"description\":\"Vladimir is a resident Tech Writer at CCBill. He has more than 8 years of experience in implementing e-commerce and online payment solutions with various global IT services providers. His engaging writing style provides practical advice and aims to spark curiosity for innovative technologies.\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Types of APIs and API Protocols Explained | CCBill KB","description":"Find out how REST, RPC, SOAP, and GraphQL API protocols work and select the optimal type of API and architecture for your project.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/ccbill.com\/kb\/types-of-api","og_locale":"en_US","og_type":"article","og_title":"Types of APIs and API Protocols Explained | CCBill KB","og_description":"Find out how REST, RPC, SOAP, and GraphQL API protocols work and select the optimal type of API and architecture for your project.","og_url":"https:\/\/ccbill.com\/kb\/types-of-api","og_site_name":"CCBill Knowledge Base","article_publisher":"https:\/\/www.facebook.com\/ccbillBIZ\/","article_published_time":"2022-07-21T07:53:48+00:00","article_modified_time":"2023-03-06T09:01:21+00:00","og_image":[{"url":"https:\/\/ccbill.com\/kb\/wp-content\/uploads\/2022\/07\/api-types.png","type":"","width":"","height":""}],"author":"Vladimir Kaplarevic","twitter_card":"summary_large_image","twitter_creator":"@CCBillBIZ","twitter_site":"@CCBillBIZ","twitter_misc":{"Written by":"Vladimir Kaplarevic","Est. reading time":"8 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/ccbill.com\/kb\/types-of-api#article","isPartOf":{"@id":"https:\/\/ccbill.com\/kb\/types-of-api"},"author":{"name":"Vladimir Kaplarevic","@id":"https:\/\/ccbill.com\/kb\/#\/schema\/person\/1f198b1218f6343a2682022ac4395644"},"headline":"Types of APIs","datePublished":"2022-07-21T07:53:48+00:00","dateModified":"2023-03-06T09:01:21+00:00","mainEntityOfPage":{"@id":"https:\/\/ccbill.com\/kb\/types-of-api"},"wordCount":1387,"commentCount":0,"publisher":{"@id":"https:\/\/ccbill.com\/kb\/#organization"},"image":{"@id":"https:\/\/ccbill.com\/kb\/types-of-api#primaryimage"},"thumbnailUrl":"https:\/\/ccbill.com\/kb\/wp-content\/uploads\/2022\/07\/api-types.png","articleSection":["Payment Processing","Web Development"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/ccbill.com\/kb\/types-of-api#respond"]}]},{"@type":"WebPage","@id":"https:\/\/ccbill.com\/kb\/types-of-api","url":"https:\/\/ccbill.com\/kb\/types-of-api","name":"Types of APIs and API Protocols Explained | CCBill KB","isPartOf":{"@id":"https:\/\/ccbill.com\/kb\/#website"},"primaryImageOfPage":{"@id":"https:\/\/ccbill.com\/kb\/types-of-api#primaryimage"},"image":{"@id":"https:\/\/ccbill.com\/kb\/types-of-api#primaryimage"},"thumbnailUrl":"https:\/\/ccbill.com\/kb\/wp-content\/uploads\/2022\/07\/api-types.png","datePublished":"2022-07-21T07:53:48+00:00","dateModified":"2023-03-06T09:01:21+00:00","description":"Find out how REST, RPC, SOAP, and GraphQL API protocols work and select the optimal type of API and architecture for your project.","breadcrumb":{"@id":"https:\/\/ccbill.com\/kb\/types-of-api#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/ccbill.com\/kb\/types-of-api"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/ccbill.com\/kb\/types-of-api#primaryimage","url":"https:\/\/ccbill.com\/kb\/wp-content\/uploads\/2022\/07\/api-types.png","contentUrl":"https:\/\/ccbill.com\/kb\/wp-content\/uploads\/2022\/07\/api-types.png","width":800,"height":400,"caption":"Developer working on an API integration."},{"@type":"BreadcrumbList","@id":"https:\/\/ccbill.com\/kb\/types-of-api#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"KB Home","item":"https:\/\/ccbill.com\/kb\/"},{"@type":"ListItem","position":2,"name":"Web Development","item":"https:\/\/ccbill.com\/kb\/category\/web-development"},{"@type":"ListItem","position":3,"name":"Types of APIs"}]},{"@type":"WebSite","@id":"https:\/\/ccbill.com\/kb\/#website","url":"https:\/\/ccbill.com\/kb\/","name":"CCBill Knowledge Base","description":"","publisher":{"@id":"https:\/\/ccbill.com\/kb\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/ccbill.com\/kb\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/ccbill.com\/kb\/#organization","name":"CCBill","url":"https:\/\/ccbill.com\/kb\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/ccbill.com\/kb\/#\/schema\/logo\/image\/","url":"https:\/\/ccbill.com\/kb\/wp-content\/uploads\/2020\/10\/ccbill-logo.png","contentUrl":"https:\/\/ccbill.com\/kb\/wp-content\/uploads\/2020\/10\/ccbill-logo.png","width":160,"height":70,"caption":"CCBill"},"image":{"@id":"https:\/\/ccbill.com\/kb\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/ccbillBIZ\/","https:\/\/x.com\/CCBillBIZ","https:\/\/www.linkedin.com\/company\/ccbill","https:\/\/www.youtube.com\/c\/CCBillBiz"]},{"@type":"Person","@id":"https:\/\/ccbill.com\/kb\/#\/schema\/person\/1f198b1218f6343a2682022ac4395644","name":"Vladimir Kaplarevic","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/ccbill.com\/kb\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/cc08885e8fec32585bae8a0f5a1aef92f8c8c4fc33692e74e0ec2e63633d2478?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/cc08885e8fec32585bae8a0f5a1aef92f8c8c4fc33692e74e0ec2e63633d2478?s=96&d=mm&r=g","caption":"Vladimir Kaplarevic"},"description":"Vladimir is a resident Tech Writer at CCBill. He has more than 8 years of experience in implementing e-commerce and online payment solutions with various global IT services providers. His engaging writing style provides practical advice and aims to spark curiosity for innovative technologies."}]}},"_links":{"self":[{"href":"https:\/\/ccbill.com\/kb\/wp-json\/wp\/v2\/posts\/3893","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/ccbill.com\/kb\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/ccbill.com\/kb\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/ccbill.com\/kb\/wp-json\/wp\/v2\/users\/6"}],"replies":[{"embeddable":true,"href":"https:\/\/ccbill.com\/kb\/wp-json\/wp\/v2\/comments?post=3893"}],"version-history":[{"count":37,"href":"https:\/\/ccbill.com\/kb\/wp-json\/wp\/v2\/posts\/3893\/revisions"}],"predecessor-version":[{"id":4766,"href":"https:\/\/ccbill.com\/kb\/wp-json\/wp\/v2\/posts\/3893\/revisions\/4766"}],"wp:attachment":[{"href":"https:\/\/ccbill.com\/kb\/wp-json\/wp\/v2\/media?parent=3893"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/ccbill.com\/kb\/wp-json\/wp\/v2\/categories?post=3893"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/ccbill.com\/kb\/wp-json\/wp\/v2\/tags?post=3893"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}