{"id":103127,"date":"2021-10-08T08:48:42","date_gmt":"2021-10-08T15:48:42","guid":{"rendered":"https:\/\/www.backblaze.com\/blog\/?p=103127"},"modified":"2024-08-23T17:12:46","modified_gmt":"2024-08-24T00:12:46","slug":"whats-the-diff-backblaze-s3-compatible-api-vs-b2-native-api","status":"publish","type":"post","link":"https:\/\/www.backblaze.com\/blog\/whats-the-diff-backblaze-s3-compatible-api-vs-b2-native-api\/","title":{"rendered":"What\u2019s the Diff: Backblaze S3 Compatible API vs. B2 Native API"},"content":{"rendered":"<p><img loading=\"lazy\" decoding=\"async\" class=\"aligncenter size-full wp-image-103157\" src=\"https:\/\/www.backblaze.com\/blog\/wp-content\/uploads\/2021\/10\/13ead90ec7c7b8f31b6faecb85dd9c40.jpg\" alt=\"\" width=\"1440\" height=\"820\" srcset=\"https:\/\/backblazeprod.wpenginepowered.com\/wp-content\/uploads\/2021\/10\/13ead90ec7c7b8f31b6faecb85dd9c40.jpg 1440w, https:\/\/backblazeprod.wpenginepowered.com\/wp-content\/uploads\/2021\/10\/13ead90ec7c7b8f31b6faecb85dd9c40-300x171.jpg 300w, https:\/\/backblazeprod.wpenginepowered.com\/wp-content\/uploads\/2021\/10\/13ead90ec7c7b8f31b6faecb85dd9c40-1024x583.jpg 1024w, https:\/\/backblazeprod.wpenginepowered.com\/wp-content\/uploads\/2021\/10\/13ead90ec7c7b8f31b6faecb85dd9c40-768x437.jpg 768w, https:\/\/backblazeprod.wpenginepowered.com\/wp-content\/uploads\/2021\/10\/13ead90ec7c7b8f31b6faecb85dd9c40-560x319.jpg 560w\" sizes=\"auto, (max-width: 1440px) 100vw, 1440px\" \/><\/p>\n<p id=\"bzdropcap\">Backblaze B2 Cloud Storage enables thousands of developers\u2014from video streaming applications like <a href=\"https:\/\/www.backblaze.com\/case-studieskanopy\/\" target=\"_blank\" rel=\"noopener\">Kanopy<\/a> to gaming platforms like <a href=\"https:\/\/www.backblaze.com\/case-studiesnodecraft\/\" target=\"_blank\" rel=\"noopener\">Nodecraft<\/a>\u2014to easily store and use data in the cloud. Those files are always available for download either through a browser-compatible URL or APIs.<\/p>\n<p>Backblaze supports two different suites of APIs\u2014the Backblaze B2 Native API and the Backblaze S3 Compatible API. Sometimes, folks come to our platform knowing exactly which API they need to use, but the differences between the two are not always immediately apparent. If you\u2019re not sure which API is best for you and your project, we\u2019re explaining the difference today.<\/p>\n<div class=\"abstract\" style=\"line-height: 1.8; margin: 24px 12px; padding: 24px 12px 10px 12px;\">\n<h4>Editor&#8217;s Note: Technical Documentation Portal<\/h4>\n<p>In July 2023, <a href=\"\/blog\/things-might-look-a-little-different-around-here-technical-documentation-gets-an-upgrade\/\" target=\"_blank\" rel=\"noopener\">Backblaze announced<\/a> our new Technical Documentation Portal, designed to make the technical how-tos of Backblaze easy to use, easy to understand, and easy to share. If you&#8217;re looking for <a href=\"https:\/\/www.backblaze.com\/docs-quick-start-guides\" target=\"_blank\" rel=\"noopener\">Quick-Start Guides<\/a>, <a href=\"https:\/\/www.backblaze.com\/docs-sdks\" target=\"_blank\" rel=\"noopener\">SDKs<\/a>, <a href=\"https:\/\/www.backblaze.com\/docs-integration-guides\" target=\"_blank\" rel=\"noopener\">integrations<\/a>, <a href=\"https:\/\/www.backblaze.com\/apidocs\" target=\"_blank\" rel=\"noopener\">API documentation<\/a>, or other technical support, head on over <a href=\"https:\/\/www.backblaze.com\/docs\" target=\"_blank\" rel=\"noopener\">to the portal<\/a> for more. If you want to learn more about Backblaze&#8217;s APIs in general, read on.<\/p>\n<\/div>\n<h2><strong>B2 Native API vs. S3 Compatible API: What\u2019s the Diff?<\/strong><\/h2>\n<p>Put simply, an application programming interface, or API, is a set of protocols that lets one application or service talk to another. They typically include a list of operations or calls developers can use to interact with said application (inputs) and a description of what happens when those calls are used (outputs). Both the B2 Native and S3 Compatible APIs handle the same basic functions:<\/p>\n<ul>\n<li><strong>Authentication: <\/strong>Providing account\/bucket\/file access.<\/li>\n<li><strong>Bucket Management:<\/strong> Creating and managing the buckets that hold files.<\/li>\n<li><strong>Upload:<\/strong> Sending files to the cloud.<\/li>\n<li><strong>Download:<\/strong> Retrieving files from the cloud.<\/li>\n<li><strong>List:<\/strong> Data checking\/selection\/comparison.<\/li>\n<\/ul>\n<p>The main difference between the two APIs is that they use different syntax for the various calls. We\u2019ll dig into other key differences in more detail below.<\/p>\n<h3><strong>The Backblaze B2 Native API<\/strong><\/h3>\n<p>The B2 Native API is Backblaze\u2019s custom API that enables you to interact with Backblaze B2 Cloud Storage. We\u2019ve written in detail about <a href=\"\/blog\/design-thinking-b2-apis-the-hidden-costs-of-s3-compatibility\/\" target=\"_blank\" rel=\"noopener\">why we developed our own custom API<\/a> instead of just implementing an S3-compatible interface from the beginning. In a nutshell, we developed it so our customers could easily interact with our cloud while enabling Backblaze to offer <a href=\"https:\/\/www.backblaze.com\/cloud-storage\/pricing\" target=\"_blank\" rel=\"noopener\">cloud storage at a quarter of the price of S3<\/a>.<\/p>\n<p>To get started, simply create a Backblaze account and enable Backblaze B2. You\u2019ll then get access to your Application Key and Application Key ID. These let you call the B2 Native API.<\/p>\n<h3><strong>The Backblaze S3 Compatible API<\/strong><\/h3>\n<p>Over the years since we launched Backblaze B2 and the B2 Native API, S3 compatibility was one of our most requested features. When S3 launched in 2006, it solved a persistent problem for developers\u2014provisioning and maintaining storage hardware. Prior to S3, developers had to estimate how much storage hardware they would need for their applications very accurately or risk crashes from having too little or, on the flip side, paying too much as a result of over-provisioning storage for their needs. S3 gave them unlimited, scalable storage that eliminated the need to provision and buy hardware. For developers, the service was a game-changer, and in the years that followed, the S3 API essentially became industry standard for object storage.<\/p>\n<p>In those years as well, other brands (That\u2019s us!) entered the market. AWS was no longer the only game in town. Many customers wanted to move from Amazon S3 to Backblaze B2, but didn\u2019t want to rewrite code that already worked with the S3 API.<\/p>\n<p>The Backblaze S3 Compatible API does the same thing as the B2 Native API\u2014it allows you to interact with B2 Cloud Storage\u2014but it follows the S3 syntax. With the S3 Compatible API, if your application is already written to use the S3 API, B2 Cloud Storage will just work, with minimal code changes on your end. The launch of the S3 Compatible API provides developers with a number of benefits:<\/p>\n<ul>\n<li>You don\u2019t have to learn a new API.<\/li>\n<li>You can use your existing tools that are written to the S3 API.<\/li>\n<li>Performance will be just as good and you\u2019ll get all the benefits of B2 Cloud Storage.<\/li>\n<\/ul>\n<p>To get started, create a Backblaze account and head to the App Keys page. The Master Application Key will not be S3 compatible, so you\u2019ll want to create a new key and key ID by clicking the \u201cAdd a New Application Key\u201d button. Your new key and key ID will work with both the B2 Native API and S3 Compatible API. Just plug this information into your application to connect it to Backblaze B2.<\/p>\n<figure id=\"attachment_103131\" aria-describedby=\"caption-attachment-103131\" style=\"width: 1024px\" class=\"wp-caption aligncenter\"><img loading=\"lazy\" decoding=\"async\" class=\"size-large wp-image-103131\" src=\"https:\/\/www.backblaze.com\/blog\/wp-content\/uploads\/2021\/10\/image2-1024x997.png\" alt=\"\" width=\"1024\" height=\"997\" srcset=\"https:\/\/backblazeprod.wpenginepowered.com\/wp-content\/uploads\/2021\/10\/image2-1024x997.png 1024w, https:\/\/backblazeprod.wpenginepowered.com\/wp-content\/uploads\/2021\/10\/image2-300x292.png 300w, https:\/\/backblazeprod.wpenginepowered.com\/wp-content\/uploads\/2021\/10\/image2-768x747.png 768w, https:\/\/backblazeprod.wpenginepowered.com\/wp-content\/uploads\/2021\/10\/image2-560x545.png 560w, https:\/\/backblazeprod.wpenginepowered.com\/wp-content\/uploads\/2021\/10\/image2.png 1194w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><figcaption id=\"caption-attachment-103131\" class=\"wp-caption-text\">Find the App Keys page in your Backblaze account to create your S3-compatible key and key ID.<\/figcaption><\/figure>\n<p>If your existing tools are written to the S3 API\u2014for example, tools like Cohesity,<a href=\"https:\/\/www.backblaze.com\/cloud-storage\/integrations\/rclone\"> rclone<\/a>, and <a href=\"https:\/\/www.backblaze.com\/cloud-storage\/integrations\/veeam\">Veeam<\/a>\u2014they\u2019ll work automatically once you enter this information. Additionally, many tools\u2014like Arq, Synology, and MSP360\u2014were already integrated with Backblaze B2 via the B2 Native API, but now customers can choose to connect with them via either API suite.<\/p>\n<h2><strong>B2 Native and S3 Compatible APIs: How Do They Compare?<\/strong><\/h2>\n<p>Beyond the syntax, there are a few key differences between the B2 Native and Backblaze S3 Compatible APIs, including:<\/p>\n<ul>\n<li>Key management.<\/li>\n<li>SDKs.<\/li>\n<li>Pre-signed URLs.<\/li>\n<li>File uploads.<\/li>\n<\/ul>\n<h3><strong>Key Management<\/strong><\/h3>\n<p>Key management is unique to the B2 Native API. The S3 Compatible API does not support key management. With key management, you can create, delete, and list keys using the following calls:<\/p>\n<ul>\n<li><code>b2_create_key<\/code><\/li>\n<li><code>b2_delete_key<\/code><\/li>\n<li><code>b2_list_keys<\/code><\/li>\n<\/ul>\n<h3><strong>SDKs<\/strong><\/h3>\n<p>Some of our Alliance Partners asked us if we had an SDK they could use. To answer that request, we developed an official <a href=\"https:\/\/github.com\/Backblaze\/b2-sdk-java\" target=\"_blank\" rel=\"noopener\">Java SDK<\/a> and <a href=\"https:\/\/github.com\/Backblaze\/b2-sdk-python\" target=\"_blank\" rel=\"noopener\">Python SDK<\/a> on GitHub so you can manage and configure your cloud resources via the B2 Native API.<\/p>\n<p>Meanwhile, long-standing, open-sourced SDKs for S3 Compatible APIs are available in any language including <a href=\"https:\/\/help.backblaze.com\/hc\/en-us\/articles\/360047629713-Using-the-AWS-Go-SDK-with-B2\" target=\"_blank\" rel=\"noopener\">Go<\/a>, <a href=\"https:\/\/help.backblaze.com\/hc\/en-us\/articles\/360046980814-Using-the-AWS-SDK-for-PHP-with-Backblaze-B2-Cloud-Storage\" target=\"_blank\" rel=\"noopener\">PHP<\/a>, <a href=\"https:\/\/help.backblaze.com\/hc\/en-us\/articles\/360046980734-How-to-use-the-AWS-SDK-for-JavaScript-with-B2\" target=\"_blank\" rel=\"noopener\">Javascript<\/a>, <a href=\"https:\/\/help.backblaze.com\/hc\/en-us\/articles\/360047629753-Using-the-AWS-SDK-for-Ruby-with-B2\" target=\"_blank\" rel=\"noopener\">Ruby<\/a>, etc. These SDKs make it easy to integrate your application no matter what language it\u2019s written in.<\/p>\n<div class=\"abstract\" style=\"line-height: 1.8; margin: 24px 12px; padding: 24px 12px 10px 12px;\">\n<p><strong>What Is an SDK?<\/strong>SDK stands for software development kit. It is a set of software development tools, documentation, libraries, code snippets, and guides that come in one package developers can install. Developers use SDKs to build applications for the specific platform, programming language, or system the SDK serves.<\/p>\n<\/div>\n<h3><strong>Pre-signed URLs<\/strong><\/h3>\n<p>By default, access to private buckets is restricted to the account owner. If you want to grant access to a specific object in that bucket to anyone else\u2014for example, a user or a different application or service\u2014they need proper authorization. The S3 Compatible API and the B2 Native API handle access to private buckets differently.<\/p>\n<p>The S3 Compatible API handles authorization using pre-signed URLs. It requires the user to calculate a signature (code that says you are who you say you are) before sending the request. Using the URL, a user can either <code>read<\/code> an object, <code>write<\/code> an object, or update an existing object. The URL also contains specific parameters like limitations or expiration dates to manage their usage.<\/p>\n<p>The S3 Compatible API supports pre-signed URLs for downloading and uploading. Pre-signed URLs are built into AWS SDKs. They can also be generated in a number of other ways including the AWS CLI and AWS Tools for PowerShell. You can find guides for configuring those tools <a href=\"https:\/\/help.backblaze.com\/hc\/en-us\/articles\/360047815993-Does-the-B2-S3-Compatible-API-support-Pre-Signed-URLs-\" target=\"_blank\" rel=\"noopener\">here<\/a>. Many integrations, for example, Cyberduck, also offer a simple share functionality that makes providing temporary access possible utilizing the underlying pre-signed URL.<\/p>\n<p>The B2 Native API figures out the signature for you. Instead of a pre-signed URL, the B2 Native API requires an authorization token to be part of the API request itself. The <code>b2_authorize_account<\/code> request gets the authorization token that you can then use for account-level operations. If you only want to authorize downloads instead of all account-level operations, you can use the request <code>b2_get_download_authorization<\/code> to generate an authorization token, which can then be used in the URL to authenticate the request.<\/p>\n<h3><strong>Uploading Files<\/strong><\/h3>\n<p>With the S3 Compatible API, you upload files to a static URL that never changes. Our servers automatically pick the best route for you that delivers the best possible performance on our backend.<\/p>\n<p>The B2 Native API requires a separate call to get an upload URL. This URL can be used until it <a href=\"\/blog\/b2-503-500-server-error\/\" target=\"_blank\" rel=\"noopener\">goes stale (i.e. returns a 50X error)<\/a>, at which point another upload URL must be requested. In the event of a 50X error, you simply need to retry the request with the new URL. The S3 Compatible API does this for you in the background on our servers, which makes the experience of using the S3 Compatible API smoother.<\/p>\n<p>This difference in the upload process is what enabled Backblaze B2 to offer substantially lower prices at the expense of a little bit more complexity. You can read more about that <a href=\"\/blog\/design-thinking-b2-apis-the-hidden-costs-of-s3-compatibility\/\" target=\"_blank\" rel=\"noopener\">here<\/a>.<\/p>\n<h2><strong>Try It Out for Yourself<\/strong><\/h2>\n<p>So, which API should you use? In a nutshell, if your app is already written to work with S3, if you&#8217;re using tools that are written to S3, or if you&#8217;re just unsure, the S3 Compatible API is a good choice. If you&#8217;re looking for more control over access and key management, the B2 Native API is the way to go. Either way, now that you understand the differences between the two APIs you can use to work with B2 Cloud Storage, you can align your use cases to the functionality that best suits them and get started with the API that works best for you.<\/p>\n<p>If you\u2019re ready to try out the B2 Native or S3 Compatible APIs for yourself, check out our documentation:<\/p>\n<ul>\n<li><a href=\"https:\/\/www.backblaze.com\/b2\/docs\/\" target=\"_blank\" rel=\"noopener\">B2 Native API Documentation.<\/a><\/li>\n<li><a href=\"https:\/\/www.backblaze.comhttps:\/\/www.backblaze.com\/docs\/en\/cloud-storage-s3-compatible-api\" target=\"_blank\" rel=\"noopener\">S3 Compatible API Documentation.<\/a><\/li>\n<\/ul>\n<p>Of course, if you have any questions, fire away in the comments or <a href=\"https:\/\/www.backblaze.com\/b2\/contact-sales.html\" target=\"_blank\" rel=\"noopener\">reach out to our Sales team<\/a>. And if you\u2019re interested in trying Backblaze, <a href=\"https:\/\/www.backblaze.com\/b2\/sign-up.html?referrer=nopref\" target=\"_blank\" rel=\"noopener\">get started today<\/a> and your first 10GB of storage are free.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>If you&#8217;re just getting started with B2 Cloud Storage, this post will explain the differences between the Backblaze S3 Compatible API and the B2 Native API, and which is best for your use case.<\/p>\n","protected":false},"author":159,"featured_media":103157,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"content-type":"","footnotes":""},"categories":[7],"tags":[468],"class_list":["post-103127","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-cloud-storage","tag-b2cloud","entry"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.6 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>What\u2019s the Diff: Backblaze S3 Compatible API vs. B2 Native API<\/title>\n<meta name=\"description\" content=\"Backblaze offers two different API suites: B2 Native API and S3 Compatible API. What\u2019s the difference between the two, and which one should you be using?\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.backblaze.com\/blog\/whats-the-diff-backblaze-s3-compatible-api-vs-b2-native-api\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"What\u2019s the Diff: Backblaze S3 Compatible API vs. B2 Native API\" \/>\n<meta property=\"og:description\" content=\"Backblaze offers two different API suites: B2 Native API and S3 Compatible API. What\u2019s the difference between the two, and which one should you be using?\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.backblaze.com\/blog\/whats-the-diff-backblaze-s3-compatible-api-vs-b2-native-api\/\" \/>\n<meta property=\"og:site_name\" content=\"Backblaze Blog | Cloud Storage &amp; Cloud Backup\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/backblaze\" \/>\n<meta property=\"article:published_time\" content=\"2021-10-08T15:48:42+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-08-24T00:12:46+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.backblaze.com\/blog\/wp-content\/uploads\/2021\/10\/13ead90ec7c7b8f31b6faecb85dd9c40.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1440\" \/>\n\t<meta property=\"og:image:height\" content=\"820\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Molly Clancy\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@backblaze\" \/>\n<meta name=\"twitter:site\" content=\"@backblaze\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Molly Clancy\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"8 minutes\" \/>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"What\u2019s the Diff: Backblaze S3 Compatible API vs. B2 Native API","description":"Backblaze offers two different API suites: B2 Native API and S3 Compatible API. What\u2019s the difference between the two, and which one should you be using?","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:\/\/www.backblaze.com\/blog\/whats-the-diff-backblaze-s3-compatible-api-vs-b2-native-api\/","og_locale":"en_US","og_type":"article","og_title":"What\u2019s the Diff: Backblaze S3 Compatible API vs. B2 Native API","og_description":"Backblaze offers two different API suites: B2 Native API and S3 Compatible API. What\u2019s the difference between the two, and which one should you be using?","og_url":"https:\/\/www.backblaze.com\/blog\/whats-the-diff-backblaze-s3-compatible-api-vs-b2-native-api\/","og_site_name":"Backblaze Blog | Cloud Storage &amp; Cloud Backup","article_publisher":"https:\/\/www.facebook.com\/backblaze","article_published_time":"2021-10-08T15:48:42+00:00","article_modified_time":"2024-08-24T00:12:46+00:00","og_image":[{"width":1440,"height":820,"url":"https:\/\/www.backblaze.com\/blog\/wp-content\/uploads\/2021\/10\/13ead90ec7c7b8f31b6faecb85dd9c40.jpg","type":"image\/jpeg"}],"author":"Molly Clancy","twitter_card":"summary_large_image","twitter_creator":"@backblaze","twitter_site":"@backblaze","twitter_misc":{"Written by":"Molly Clancy","Est. reading time":"8 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.backblaze.com\/blog\/whats-the-diff-backblaze-s3-compatible-api-vs-b2-native-api\/#article","isPartOf":{"@id":"https:\/\/www.backblaze.com\/blog\/whats-the-diff-backblaze-s3-compatible-api-vs-b2-native-api\/"},"author":{"name":"Molly Clancy","@id":"https:\/\/backblazeprod.wpenginepowered.com\/blog\/#\/schema\/person\/a92e54b3011e599a575611dbbb443b5c"},"headline":"What\u2019s the Diff: Backblaze S3 Compatible API vs. B2 Native API","datePublished":"2021-10-08T15:48:42+00:00","dateModified":"2024-08-24T00:12:46+00:00","mainEntityOfPage":{"@id":"https:\/\/www.backblaze.com\/blog\/whats-the-diff-backblaze-s3-compatible-api-vs-b2-native-api\/"},"wordCount":1672,"commentCount":3,"publisher":{"@id":"https:\/\/backblazeprod.wpenginepowered.com\/blog\/#organization"},"image":{"@id":"https:\/\/www.backblaze.com\/blog\/whats-the-diff-backblaze-s3-compatible-api-vs-b2-native-api\/#primaryimage"},"thumbnailUrl":"https:\/\/backblazeprod.wpenginepowered.com\/wp-content\/uploads\/2021\/10\/13ead90ec7c7b8f31b6faecb85dd9c40.jpg","keywords":["B2Cloud"],"articleSection":["Cloud Storage"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.backblaze.com\/blog\/whats-the-diff-backblaze-s3-compatible-api-vs-b2-native-api\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.backblaze.com\/blog\/whats-the-diff-backblaze-s3-compatible-api-vs-b2-native-api\/","url":"https:\/\/www.backblaze.com\/blog\/whats-the-diff-backblaze-s3-compatible-api-vs-b2-native-api\/","name":"What\u2019s the Diff: Backblaze S3 Compatible API vs. B2 Native API","isPartOf":{"@id":"https:\/\/backblazeprod.wpenginepowered.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.backblaze.com\/blog\/whats-the-diff-backblaze-s3-compatible-api-vs-b2-native-api\/#primaryimage"},"image":{"@id":"https:\/\/www.backblaze.com\/blog\/whats-the-diff-backblaze-s3-compatible-api-vs-b2-native-api\/#primaryimage"},"thumbnailUrl":"https:\/\/backblazeprod.wpenginepowered.com\/wp-content\/uploads\/2021\/10\/13ead90ec7c7b8f31b6faecb85dd9c40.jpg","datePublished":"2021-10-08T15:48:42+00:00","dateModified":"2024-08-24T00:12:46+00:00","description":"Backblaze offers two different API suites: B2 Native API and S3 Compatible API. What\u2019s the difference between the two, and which one should you be using?","breadcrumb":{"@id":"https:\/\/www.backblaze.com\/blog\/whats-the-diff-backblaze-s3-compatible-api-vs-b2-native-api\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.backblaze.com\/blog\/whats-the-diff-backblaze-s3-compatible-api-vs-b2-native-api\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.backblaze.com\/blog\/whats-the-diff-backblaze-s3-compatible-api-vs-b2-native-api\/#primaryimage","url":"https:\/\/backblazeprod.wpenginepowered.com\/wp-content\/uploads\/2021\/10\/13ead90ec7c7b8f31b6faecb85dd9c40.jpg","contentUrl":"https:\/\/backblazeprod.wpenginepowered.com\/wp-content\/uploads\/2021\/10\/13ead90ec7c7b8f31b6faecb85dd9c40.jpg","width":1440,"height":820},{"@type":"BreadcrumbList","@id":"https:\/\/www.backblaze.com\/blog\/whats-the-diff-backblaze-s3-compatible-api-vs-b2-native-api\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/backblazeprod.wpenginepowered.com\/blog\/"},{"@type":"ListItem","position":2,"name":"What\u2019s the Diff: Backblaze S3 Compatible API vs. B2 Native API"}]},{"@type":"WebSite","@id":"https:\/\/backblazeprod.wpenginepowered.com\/blog\/#website","url":"https:\/\/backblazeprod.wpenginepowered.com\/blog\/","name":"Backblaze Cloud Solutions Blog","description":"Cloud Storage &amp; Cloud Backup","publisher":{"@id":"https:\/\/backblazeprod.wpenginepowered.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/backblazeprod.wpenginepowered.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/backblazeprod.wpenginepowered.com\/blog\/#organization","name":"Backblaze","url":"https:\/\/backblazeprod.wpenginepowered.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/backblazeprod.wpenginepowered.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/i0.wp.com\/www.backblaze.com\/blog\/wp-content\/uploads\/2017\/12\/backblaze_icon_transparent.png?fit=512%2C512&ssl=1","contentUrl":"https:\/\/i0.wp.com\/www.backblaze.com\/blog\/wp-content\/uploads\/2017\/12\/backblaze_icon_transparent.png?fit=512%2C512&ssl=1","width":512,"height":512,"caption":"Backblaze"},"image":{"@id":"https:\/\/backblazeprod.wpenginepowered.com\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/backblaze","https:\/\/x.com\/backblaze","https:\/\/www.youtube.com\/user\/Backblaze","https:\/\/en.wikipedia.org\/wiki\/Backblaze"]},{"@type":"Person","@id":"https:\/\/backblazeprod.wpenginepowered.com\/blog\/#\/schema\/person\/a92e54b3011e599a575611dbbb443b5c","name":"Molly Clancy","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/backblazeprod.wpenginepowered.com\/wp-content\/uploads\/2021\/02\/ClancyMolly_Headshot_reduced-150x150.png","url":"https:\/\/backblazeprod.wpenginepowered.com\/wp-content\/uploads\/2021\/02\/ClancyMolly_Headshot_reduced-150x150.png","contentUrl":"https:\/\/backblazeprod.wpenginepowered.com\/wp-content\/uploads\/2021\/02\/ClancyMolly_Headshot_reduced-150x150.png","caption":"Molly Clancy"},"description":"Molly Clancy is a content writer who specializes in explaining tech concepts in an easy, approachable way. With more than 15 years of experience, she has a broad background in industries ranging from B2B tech to engineering to luxury travel. A deep curiosity drives her repeated success explaining what terms like OS kernel and preflight request mean so that anyone can understand them.","url":"https:\/\/backblazeprod.wpenginepowered.com\/blog\/author\/molly\/"}]}},"jetpack_featured_media_url":"https:\/\/backblazeprod.wpenginepowered.com\/wp-content\/uploads\/2021\/10\/13ead90ec7c7b8f31b6faecb85dd9c40.jpg","_links":{"self":[{"href":"https:\/\/backblazeprod.wpenginepowered.com\/blog\/wp-json\/wp\/v2\/posts\/103127","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/backblazeprod.wpenginepowered.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/backblazeprod.wpenginepowered.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/backblazeprod.wpenginepowered.com\/blog\/wp-json\/wp\/v2\/users\/159"}],"replies":[{"embeddable":true,"href":"https:\/\/backblazeprod.wpenginepowered.com\/blog\/wp-json\/wp\/v2\/comments?post=103127"}],"version-history":[{"count":0,"href":"https:\/\/backblazeprod.wpenginepowered.com\/blog\/wp-json\/wp\/v2\/posts\/103127\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/backblazeprod.wpenginepowered.com\/blog\/wp-json\/wp\/v2\/media\/103157"}],"wp:attachment":[{"href":"https:\/\/backblazeprod.wpenginepowered.com\/blog\/wp-json\/wp\/v2\/media?parent=103127"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/backblazeprod.wpenginepowered.com\/blog\/wp-json\/wp\/v2\/categories?post=103127"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/backblazeprod.wpenginepowered.com\/blog\/wp-json\/wp\/v2\/tags?post=103127"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}