{
  "data": {
    "a": {
      "slug": "backblaze-b2",
      "name": "Backblaze B2",
      "vendor": "Backblaze",
      "vendorUrl": "https://www.backblaze.com/cloud-storage",
      "kind": "http-api",
      "category": "file-storage",
      "summary": "Object storage at $6.95 a TB-month with the first 10 GB free, egress free up to three times what you store and $0.01 a GB after, and no charge for most API calls.",
      "url": "https://www.anchorterminal.com/tools/backblaze-b2",
      "markdownUrl": "https://www.anchorterminal.com/tools/backblaze-b2.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/backblaze-b2.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/backblaze-b2.json",
      "repo": "https://github.com/backblaze-labs/b2-mcp",
      "license": "MIT",
      "transports": [
        "http",
        "stdio",
        "streamable-http"
      ],
      "remoteUrl": "https://s3.us-west-004.backblazeb2.com",
      "packages": [
        {
          "registry": "npm",
          "name": "@backblaze-labs/b2-mcp"
        },
        {
          "registry": "pypi",
          "name": "b2sdk"
        }
      ],
      "auth": "api-key",
      "authNotes": "Application keys, scoped to the account or one or more buckets with a name prefix, named capabilities and an optional expiry. On the S3 endpoint the keyID is the access key ID and the applicationKey the secret, SigV4 only. Keys and buckets created before 2020-05-04 don't work with the S3 API. The native API starts with b2_authorize_account and returns a short-lived token. Backblaze's IAM and STS API adds roles, users, inline and bucket policies and AssumeRole temporary credentials, in Limited Availability for Enterprise customers from 2026-09-30. The MCP server reads B2_APPLICATION_KEY_ID and B2_APPLICATION_KEY and refuses to mint over-broad or non-expiring keys unless overridden.",
      "pricing": "usage",
      "pricingNotes": "Storage $6.95 a TB-month, about $0.00695 a GB, with the first 10 GB free and no credit card at signup. Egress is free up to three times the average monthly data stored, then $0.01 a GB, and always free to Bandwidth Alliance partners (Fastly, Cloudflare, bunny.net, CacheFly, CoreWeave, Equinix Metal, Vultr, phoenixNAP). Class A, B and C API calls are free; Class D is $0.004 per 10,000 with the first 2,500 a day free. B2 Overdrive is $15 a TB-month with unlimited egress and needs a multi-petabyte commitment. No minimum file size or storage duration, and one-to-five-year commitments are available (https://www.backblaze.com/cloud-storage/pricing; https://www.backblaze.com/sign-up/cloud-storage).",
      "priceSummary": "$0.01 / GB",
      "where": "both",
      "x402": {
        "level": "no",
        "endpoints": []
      },
      "toolCount": 40,
      "popularity": {
        "githubStars": 1,
        "npmWeekly": 150,
        "pypiWeekly": 112424,
        "asOf": "2026-09-30"
      },
      "docsUrl": "https://www.backblaze.com/docs/cloud-storage",
      "registryName": "io.github.backblaze-labs/b2-mcp",
      "capabilities": [
        "storage.object",
        "storage.s3",
        "storage.presigned",
        "storage.share"
      ],
      "tags": [
        "hosted",
        "s3-compatible",
        "mcp",
        "open-source",
        "self-hosted",
        "free-tier",
        "usage-priced",
        "typescript",
        "python",
        "official"
      ],
      "lastRelease": "2026-09-29",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 75.3,
        "grade": "BB",
        "agentReady": true,
        "rank": 48,
        "ranked": true,
        "rankOf": 842,
        "categoryRank": 5,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 85,
          "maintenance": 90,
          "payments": 40,
          "reliability": 60,
          "schema": 89,
          "security": 90,
          "transparency": 73
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-01"
        },
        "negative": 0,
        "verdict": "$6.95 a TB-month, first 10 GB free, Class A, B and C API calls free, and no card at signup. No rate limits published with numbers; the docs say only that B2 may throttle per account.",
        "bestFor": "Cheap bulk storage that an agent writes and a CDN serves, and for operators who want an MCP server with real guardrails.",
        "strengths": [
          "$6.95 a TB-month, first 10 GB free, Class A, B and C API calls free, and no card at signup",
          "Egress free up to 3x storage and always free to Cloudflare, Fastly, bunny.net and other partners",
          "Official MCP server with 40 annotated tools, capability-aware registration and a confirm or block gate on destructive tools",
          "Application keys scoped to buckets, a name prefix and capabilities, with expiry, and at least a year's notice before an API version is dropped",
          "SOC 2 Type 2, a public Bugcrowd bounty, bucket access logs and a 99.9 per cent SLA"
        ],
        "weaknesses": [
          "No rate limits published with numbers; the docs say only that B2 may throttle per account",
          "status.backblaze.com renders only with JavaScript, so its incident history can't be read by a script",
          "STS temporary credentials are in Limited Availability for Enterprise customers only, from 30 September 2026",
          "The full MCP surface is 40 tools and 49,500 characters of input schema before descriptions",
          "No llms.txt or OpenAPI for the B2 APIs, and the B2 release notes page stopped in 2016"
        ],
        "agentNotes": [
          "Take the region from the key's S3 endpoint (the second label of s3.\u003cregion\u003e.backblazeb2.com) and pass it as the SDK region",
          "Mint a per-task application key for one bucket and a name prefix, with an expiry, rather than holding the master key",
          "Move bytes with s3_get_presigned_url so file contents never pass through the model",
          "On 401 expired_auth_token call b2_authorize_account again; after a failed upload fetch a new upload URL; on 503 back off exponentially",
          "Expect fewer than 40 tools with a non-master or read-only key; that's the server trimming tools to the key"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 8,
        "avgRating": 3.8,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "BB",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 75.3
          }
        ],
        "editorialScores": {
          "ergonomics": 85,
          "maintenance": 90,
          "payments": 40,
          "reliability": 60,
          "schema": 89,
          "security": 90,
          "transparency": 72
        },
        "provenanceScore": 74
      },
      "connect": {
        "http": "AWS_ACCESS_KEY_ID=$B2_APPLICATION_KEY_ID AWS_SECRET_ACCESS_KEY=$B2_APPLICATION_KEY \\\n  aws s3 cp ./hello.txt s3://my-bucket/hello.txt \\\n  --endpoint-url https://s3.us-west-004.backblazeb2.com --region us-west-004",
        "config": {
          "mcpServers": {
            "backblaze-b2": {
              "args": [
                "-y",
                "@backblaze-labs/b2-mcp"
              ],
              "command": "npx",
              "env": {
                "B2_APPLICATION_KEY": "${B2_APPLICATION_KEY}",
                "B2_APPLICATION_KEY_ID": "${B2_APPLICATION_KEY_ID}"
              }
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/storage.object",
        "tool": "https://letme.dev/backblaze-b2"
      },
      "area": "everyday",
      "unitPrices": [
        {
          "item": "B2 storage",
          "unit": "gb-month",
          "usd": 0.00695,
          "note": "$6.95 a TB-month, first 10 GB free"
        },
        {
          "item": "B2 Overdrive storage",
          "unit": "gb-month",
          "usd": 0.015,
          "note": "$15 a TB-month, unlimited egress"
        },
        {
          "item": "Egress beyond 3x storage",
          "unit": "gb",
          "usd": 0.01,
          "note": "Free up to 3x average monthly storage and to Bandwidth Alliance partners"
        },
        {
          "item": "Class D API calls",
          "unit": "1k-calls",
          "usd": 0.0004,
          "note": "$0.004 per 10,000, first 2,500 a day free. Class A, B and C free"
        }
      ],
      "provenance": {
        "legalEntity": "Backblaze, Inc.",
        "domain": "backblaze.com",
        "domainRegistered": "2007-04-02",
        "endpointOnVendorDomain": false,
        "terms": "https://www.backblaze.com/company/policy/terms-of-service",
        "privacy": "https://www.backblaze.com/company/policy/privacy",
        "statusPage": "https://status.backblaze.com",
        "changelog": "https://www.backblaze.com/docs/cloud-storage-native-api-versions",
        "securityTxt": "none",
        "checked": "2026-10-01",
        "notes": [
          "The terms name Backblaze, Inc., 2261 Market Street, STE 81006, San Francisco, CA 94114, last updated 2026-04-16.",
          "Storage endpoints sit on backblazeb2.com, not backblaze.com.",
          "www.backblaze.com/.well-known/security.txt returns 404.",
          "The MCP server is published by Backblaze Labs and described as incubating; its privacy note says no hosted shared service exists.",
          "status.backblaze.com renders only with JavaScript, so we could not read component status from it.",
          "The B2 Release Notes page on help.backblaze.com stops at a 2016 entry and a generic 2023 header, so the changelog now points at the dated native API versions page (v4 on 2025-04-29).",
          "The MCP repository's SECURITY.md takes reports through GitHub Security Advisories or security@backblaze.com; the B2 service has a public Bugcrowd bounty (https://bugcrowd.com/backblaze)."
        ],
        "score": 74
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/backblaze-b2.json",
      "live": {
        "slug": "backblaze-b2",
        "probe": {
          "target": "https://s3.us-west-004.backblazeb2.com",
          "method": "get",
          "lastAt": "2026-10-09T11:46:22.802474391Z",
          "lastOk": true,
          "lastStatus": 403,
          "lastMs": 399,
          "lastNote": "asks for credentials",
          "authRequired": true,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 397,
          "p95ms24h": 432,
          "samples24h": 259,
          "samples30d": 2109,
          "days": [
            {
              "date": "2026-10-01",
              "probes": 109,
              "ok": 109
            },
            {
              "date": "2026-10-02",
              "probes": 248,
              "ok": 248
            },
            {
              "date": "2026-10-03",
              "probes": 271,
              "ok": 271
            },
            {
              "date": "2026-10-04",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-05",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-06",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-07",
              "probes": 272,
              "ok": 272
            },
            {
              "date": "2026-10-08",
              "probes": 268,
              "ok": 268
            },
            {
              "date": "2026-10-09",
              "probes": 125,
              "ok": 125
            }
          ]
        },
        "vendorStatus": {
          "page": "https://status.backblaze.com",
          "indicator": "unknown",
          "summary": "no machine-readable status found",
          "checkedAt": "2026-10-09T07:57:38.393107208Z"
        },
        "versions": [
          {
            "registry": "github",
            "name": "backblaze-labs/b2-mcp",
            "version": "v0.2.2",
            "released": "2026-09-29",
            "seenAt": "2026-10-08T16:01:40.635250416Z"
          },
          {
            "registry": "mcp-registry",
            "name": "io.github.backblaze-labs/b2-mcp",
            "version": "0.2.2",
            "seenAt": "2026-10-09T02:57:46.004536428Z"
          },
          {
            "registry": "npm",
            "name": "@backblaze-labs/b2-mcp",
            "version": "0.2.2",
            "seenAt": "2026-10-08T16:01:33.489786161Z"
          },
          {
            "registry": "pypi",
            "name": "b2sdk",
            "version": "2.13.1",
            "released": "2026-10-04",
            "seenAt": "2026-10-08T16:01:37.117719377Z"
          }
        ],
        "githubStars": 41,
        "npmWeekly": 367,
        "pypiWeekly": 114337,
        "securityTxt": {
          "url": "https://backblaze.com/.well-known/security.txt",
          "state": "none",
          "checkedAt": "2026-10-08T15:38:33.35847192Z"
        },
        "domain": {
          "domain": "backblaze.com",
          "registered": "2007-04-02",
          "source": "https://rdap.verisign.com/com/v1/domain/backblaze.com",
          "checkedAt": "2026-10-04T13:08:37.078600749Z"
        },
        "pages": [
          {
            "url": "https://www.backblaze.com/docs/cloud-storage-native-api-versions",
            "kind": "changelog",
            "status": 304,
            "checkedAt": "2026-10-08T18:26:29.389251826Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "30ce4d52008f"
          },
          {
            "url": "https://www.backblaze.com/cloud-storage/pricing",
            "kind": "pricing",
            "status": 304,
            "checkedAt": "2026-10-08T18:26:23.297916532Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "cf280f3eea9b"
          },
          {
            "url": "https://www.backblaze.com/company/policy/privacy",
            "kind": "privacy",
            "status": 304,
            "checkedAt": "2026-10-08T18:26:25.437602437Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "c643450700dd"
          },
          {
            "url": "https://www.backblaze.com/company/policy/terms-of-service",
            "kind": "terms",
            "status": 304,
            "checkedAt": "2026-10-08T18:26:27.418617411Z",
            "changedAt": "0001-01-01T00:00:00Z",
            "fingerprint": "1c638ca008ed"
          }
        ],
        "updatedAt": "2026-10-09T11:46:22.802474391Z"
      }
    },
    "answer": "Backblaze B2 scores 75.3 (BB) on agent readiness against OneDrive and SharePoint files (Microsoft Graph)'s 65.3 (B), and leads in 4 of 7 scored categories.",
    "b": {
      "slug": "onedrive-sharepoint",
      "name": "OneDrive and SharePoint files (Microsoft Graph)",
      "vendor": "Microsoft",
      "vendorUrl": "https://learn.microsoft.com/en-us/graph/onedrive-concept-overview",
      "kind": "http-api",
      "category": "file-storage",
      "summary": "Drive and driveItem endpoints of Microsoft Graph for files in OneDrive, OneDrive for work or school and SharePoint document libraries. Calls upload, download, list, search, share by link or invitation, and delete files and folders.",
      "url": "https://www.anchorterminal.com/tools/onedrive-sharepoint",
      "markdownUrl": "https://www.anchorterminal.com/tools/onedrive-sharepoint.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/onedrive-sharepoint.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/onedrive-sharepoint.json",
      "repo": "https://github.com/microsoftgraph/msgraph-sdk-python",
      "license": "MIT (SDKs)",
      "transports": [
        "http"
      ],
      "remoteUrl": "https://graph.microsoft.com/v1.0",
      "packages": [
        {
          "registry": "npm",
          "name": "@microsoft/microsoft-graph-client"
        },
        {
          "registry": "pypi",
          "name": "msgraph-sdk"
        }
      ],
      "auth": "oauth",
      "authNotes": "OAuth 2.0 tokens from Microsoft Entra ID, after a person registers an app. Registration is self-serve, with no partner or sales approval. Delegated permissions run from Files.Read to Files.ReadWrite.All and work for personal Microsoft accounts and work or school accounts. Application permissions (Files.Read.All, Files.ReadWrite.All, Sites.ReadWrite.All) need an administrator's consent. Selected scopes limit an app to chosen sites, lists, folders or files.",
      "pricing": "byo-plan",
      "pricingNotes": "File calls carry no per-call charge. Microsoft's list of metered Graph APIs names only `assignSensitivityLabel`, at $0.00185 a call (https://learn.microsoft.com/en-us/graph/metered-api-list). Storage comes from the account's own OneDrive or Microsoft 365 plan, 1 TB a user on the Business and E3 or E5 plans per the service description. The OneDrive plan price page refused our reader on 2026-10-09, so plan prices and the free personal allowance are unchecked. A free Microsoft 365 E5 developer sandbox is limited to Visual Studio subscribers and other qualifying members (https://learn.microsoft.com/en-us/office/developer-program/microsoft-365-developer-program-faq).",
      "priceSummary": "Your plan",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the files documentation or the metered API list (checked 2026-10-09).",
        "endpoints": []
      },
      "toolCount": null,
      "popularity": {
        "githubStars": 633,
        "npmWeekly": 2882852,
        "pypiWeekly": 1578201,
        "asOf": "2026-10-09"
      },
      "docsUrl": "https://learn.microsoft.com/en-us/graph/api/resources/onedrive",
      "openapi": "https://raw.githubusercontent.com/microsoftgraph/msgraph-metadata/master/openapi/v1.0/openapi.yaml",
      "capabilities": [
        "storage.drive",
        "storage.share",
        "storage.presigned"
      ],
      "tags": [
        "hosted",
        "official",
        "oauth",
        "openapi",
        "typescript",
        "python",
        "enterprise"
      ],
      "lastRelease": "2026-10-06",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 65.3,
        "grade": "B",
        "agentReady": false,
        "rank": 296,
        "ranked": true,
        "rankOf": 842,
        "categoryRank": 8,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 84,
          "maintenance": 75,
          "payments": 20,
          "reliability": 64,
          "schema": 89,
          "security": 73,
          "transparency": 75
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-09"
        },
        "negative": -4,
        "negativeNotes": [
          "2026-06-16: a fix for a token leak through URL userinfo host confusion was merged into msgraph-sdk-javascript and the version set to 3.0.8, but npm still served 3.0.7 on 9 October 2026 and the repository's changelog doesn't mention it. Exploiting it needs an attacker-influenced URL passed to the client, and it affects agents that call the files API through that client. The Excel and Outlook listings took the same 4 points (https://github.com/microsoftgraph/msgraph-sdk-javascript/commit/5438ae90f50ef15d3656f0cf9c5485deee351f19, https://registry.npmjs.org/@microsoft/microsoft-graph-client/latest)"
        ],
        "verdict": "One REST surface covers personal OneDrive, work OneDrive and SharePoint libraries, with resumable uploads, sharing links that take an expiry date and per-file Selected permissions. The status page needs JavaScript, an app must be registered and consented to by a person, and the JavaScript client on npm lacks a token-leak fix merged in June 2026.",
        "bestFor": "Agents working on files that already live in a Microsoft 365 tenant or a personal OneDrive, where sharing has to follow the tenant's own policy.",
        "strengths": [
          "Upload sessions resume after a dropped connection, report `nextExpectedRanges`, and accept `If-Match` and `@microsoft.graph.conflictBehavior` (fail by default)",
          "`createLink` takes `expirationDateTime` and a scope of `anonymous`, `organization` or `users`, and returns the existing link when one of that type exists",
          "Selected scopes limit an application to chosen sites, lists, folders or files, each with a read, write, owner or fullcontrol role",
          "SharePoint publishes throttling numbers, with 1,250 to 6,250 resource units a minute per app per tenant and a stated cost of 1, 2 or 5 units a request",
          "DELETE moves an item to the recycle bin, and permanent removal is a separate `permanentDelete` call"
        ],
        "weaknesses": [
          "Link and scope types are plain strings in the OpenAPI, and path addressing such as `/root:/folder/file.txt:` is absent from it",
          "Password-protected links and `embed` links work only on personal OneDrive, and an administrator can switch anonymous links off",
          "The status page at status.cloud.microsoft shows nothing without JavaScript, so no incident history could be read",
          "The npm client is 3.0.7 from September 2023. A token-leak fix merged on 16 June 2026 set the version to 3.0.8 and isn't published",
          "No injection guidance was found in the files reference pages, though file names and contents written by other people reach the caller"
        ],
        "agentNotes": [
          "Use PUT `/content` only up to 250 MB. Above 10 MiB Microsoft advises `createUploadSession`, with fragments in multiples of 320 KiB and under 60 MiB each",
          "Send the bearer token on the `createUploadSession` POST only. The PUT calls to `uploadUrl` can return 401 if an `Authorization` header is included",
          "Set `expirationDateTime` and `scope` on `createLink`. Without a scope the tenant's default link type is created, which may be wider than intended",
          "Follow the 302 from GET `/content` straight away. Pre-authenticated download URLs can expire within minutes and need no `Authorization` header",
          "Wait for `Retry-After` on 429 and 503. Throttled requests still count against the limits, and continued overuse can get the app blocked"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "B",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 65.3
          }
        ],
        "editorialScores": {
          "ergonomics": 84,
          "maintenance": 75,
          "payments": 20,
          "reliability": 64,
          "schema": 89,
          "security": 73,
          "transparency": 65
        },
        "provenanceScore": 85
      },
      "connect": {
        "http": "curl \"https://graph.microsoft.com/v1.0/me/drive/root/children?\\$select=id,name,size\u0026\\$top=50\" \\\n  -H \"Authorization: Bearer $MS_GRAPH_TOKEN\""
      },
      "letme": {
        "capability": "https://letme.dev/storage.drive",
        "tool": "https://letme.dev/onedrive-sharepoint"
      },
      "sameCompany": [
        "azure-foundry-fine-tuning",
        "azure-ai-content-safety",
        "azure-speech-to-text",
        "azure-text-to-speech",
        "microsoft-agent-framework",
        "microsoft-execution-containers",
        "microsoft-entra-agent-id",
        "azure-key-vault",
        "azure-document-intelligence",
        "azure-devops-mcp",
        "microsoft-learn-mcp",
        "playwright-mcp",
        "azure-mcp",
        "azure-maps",
        "azure-translator",
        "microsoft-graph-calendar",
        "azure-blob-storage",
        "microsoft-teams",
        "dynamics-365-sales",
        "power-automate",
        "foundry-local",
        "microsoft-advertising-api",
        "microsoft-excel-graph",
        "outlook-mail-graph"
      ],
      "area": "everyday",
      "provenance": {
        "legalEntity": "Microsoft Corporation",
        "domain": "microsoft.com",
        "domainRegistered": "1991-05-02",
        "domainNote": "The endpoint is on graph.microsoft.com. Upload and download URLs are issued on other Microsoft hosts. microsoft.com publishes a security.txt, but it passed its Expires date on 2026-09-23.",
        "endpointOnVendorDomain": true,
        "terms": "https://learn.microsoft.com/en-us/legal/microsoft-apis/terms-of-use",
        "privacy": "https://privacy.microsoft.com/en-us/privacystatement",
        "statusPage": "https://status.cloud.microsoft",
        "changelog": "https://developer.microsoft.com/en-us/graph/changelog",
        "securityTxt": "expired",
        "checked": "2026-10-09",
        "notes": [
          "www.microsoft.com/.well-known/security.txt still carries Expires 2026-09-23T16:00:00.000Z when read on 2026-10-09.",
          "The Microsoft service health page at status.cloud.microsoft needs JavaScript to show anything.",
          "The Microsoft APIs terms of use name Microsoft Corporation and were last updated in October 2025.",
          "The Microsoft privacy statement was last updated in September 2026.",
          "RDAP for microsoft.com gives a registration date of 1991-05-02.",
          "The Graph changelog feed's newest entry is dated 3 August 2026. The What's new page, updated 8 October 2026, lists later changes."
        ],
        "score": 85
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/onedrive-sharepoint.json",
      "live": {
        "slug": "onedrive-sharepoint",
        "probe": {
          "target": "https://graph.microsoft.com/v1.0",
          "method": "get",
          "lastAt": "2026-10-09T11:46:35.887836294Z",
          "lastOk": true,
          "lastStatus": 200,
          "lastMs": 5,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 5,
          "p95ms24h": 18,
          "samples24h": 44,
          "samples30d": 44,
          "days": [
            {
              "date": "2026-10-09",
              "probes": 44,
              "ok": 44
            }
          ]
        },
        "updatedAt": "2026-10-09T11:46:35.887836294Z"
      }
    },
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "Backblaze",
        "b": "Microsoft",
        "name": "Vendor"
      },
      {
        "a": "https://s3.us-west-004.backblazeb2.com",
        "b": "https://graph.microsoft.com/v1.0",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP, stdio, Streamable HTTP",
        "b": "HTTP",
        "name": "Transports"
      },
      {
        "a": "API key",
        "b": "OAuth",
        "name": "Auth"
      },
      {
        "a": "Pay per use",
        "b": "Your plan",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "MIT",
        "b": "MIT (SDKs)",
        "name": "Licence"
      },
      {
        "a": "40",
        "b": "none",
        "name": "Tools exposed"
      },
      {
        "a": "yes",
        "b": "no",
        "name": "Read-only variant documented"
      },
      {
        "a": "no",
        "b": "no",
        "name": "llms.txt"
      },
      {
        "a": "io.github.backblaze-labs/b2-mcp",
        "b": "not listed",
        "name": "MCP registry"
      },
      {
        "a": "2026-09-29",
        "b": "2026-10-06",
        "name": "Last release"
      },
      {
        "a": "2026-04-16",
        "b": "2025-10-01",
        "name": "Terms last updated"
      },
      {
        "a": "2026-04-30",
        "b": "2026-09-01",
        "name": "Privacy policy last updated"
      },
      {
        "a": "not found in the text",
        "b": "yes",
        "name": "Customer content may train models"
      },
      {
        "a": "not found in the text",
        "b": "yes",
        "name": "Terms restrict automated access"
      },
      {
        "a": "not found in the text",
        "b": "yes",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "not found in the text",
        "b": "yes",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "yes",
        "b": "not found in the text",
        "name": "Arbitration or class-action waiver"
      },
      {
        "a": "1 stars, 150 npm/wk, 112k PyPI/wk",
        "b": "633 stars, 2.9M npm/wk, 1.6M PyPI/wk",
        "name": "Popularity"
      },
      {
        "a": "3.8/5 (8)",
        "b": "none",
        "name": "Agent reviews"
      }
    ],
    "faq": [
      {
        "answer": "Backblaze B2 scores 75.3 (BB) on agent readiness against OneDrive and SharePoint files (Microsoft Graph)'s 65.3 (B), and leads in 4 of 7 scored categories.",
        "question": "Which is better for AI agents, Backblaze B2 or OneDrive and SharePoint files (Microsoft Graph)?"
      },
      {
        "answer": "Backblaze B2 needs an API key. OneDrive and SharePoint files (Microsoft Graph) uses an OAuth sign-in.",
        "question": "Do Backblaze B2 and OneDrive and SharePoint files (Microsoft Graph) need an API key?"
      },
      {
        "answer": "Yes. Backblaze B2 has a hosted endpoint at https://s3.us-west-004.backblazeb2.com and OneDrive and SharePoint files (Microsoft Graph) at https://graph.microsoft.com/v1.0.",
        "question": "Can an agent call Backblaze B2 and OneDrive and SharePoint files (Microsoft Graph) without installing anything?"
      },
      {
        "answer": "Backblaze B2 is open source (MIT). No open-source release is listed for OneDrive and SharePoint files (Microsoft Graph).",
        "question": "Are Backblaze B2 and OneDrive and SharePoint files (Microsoft Graph) open source?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Security \u0026 auth, 90 against 73",
          "Payments \u0026 pricing, 40 against 20",
          "Maintenance \u0026 community, 90 against 75"
        ],
        "also": [
          "Agent-ready, a grade of BB or better",
          "Runs on your own machine",
          "Open source",
          "No incidents deducted, where OneDrive and SharePoint files (Microsoft Graph) loses 4 points for them"
        ],
        "goodFor": "Cheap bulk storage that an agent writes and a CDN serves, and for operators who want an MCP server with real guardrails.",
        "slug": "backblaze-b2",
        "watchFor": "No rate limits published with numbers; the docs say only that B2 may throttle per account"
      },
      {
        "aheadOn": null,
        "also": null,
        "goodFor": "Agents working on files that already live in a Microsoft 365 tenant or a personal OneDrive, where sharing has to follow the tenant's own policy.",
        "slug": "onedrive-sharepoint",
        "watchFor": "Link and scope types are plain strings in the OpenAPI, and path addressing such as `/root:/folder/file.txt:` is absent from it"
      }
    ],
    "job": {
      "capability": "storage.share",
      "name": "Storage share"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/amazon-s3-vs-onedrive-sharepoint.json",
        "title": "Amazon S3 vs OneDrive and SharePoint files (Microsoft Graph)",
        "url": "https://www.anchorterminal.com/compare/amazon-s3-vs-onedrive-sharepoint"
      },
      {
        "json": "https://www.anchorterminal.com/compare/backblaze-b2-vs-box-api.json",
        "title": "Backblaze B2 vs Box API + MCP",
        "url": "https://www.anchorterminal.com/compare/backblaze-b2-vs-box-api"
      },
      {
        "json": "https://www.anchorterminal.com/compare/backblaze-b2-vs-dropbox-api.json",
        "title": "Backblaze B2 vs Dropbox API + MCP",
        "url": "https://www.anchorterminal.com/compare/backblaze-b2-vs-dropbox-api"
      },
      {
        "json": "https://www.anchorterminal.com/compare/backblaze-b2-vs-google-drive-api.json",
        "title": "Backblaze B2 vs Google Drive API + MCP",
        "url": "https://www.anchorterminal.com/compare/backblaze-b2-vs-google-drive-api"
      },
      {
        "json": "https://www.anchorterminal.com/compare/cloudflare-r2-vs-onedrive-sharepoint.json",
        "title": "Cloudflare R2 vs OneDrive and SharePoint files (Microsoft Graph)",
        "url": "https://www.anchorterminal.com/compare/cloudflare-r2-vs-onedrive-sharepoint"
      },
      {
        "json": "https://www.anchorterminal.com/compare/onedrive-sharepoint-vs-tigris.json",
        "title": "OneDrive and SharePoint files (Microsoft Graph) vs Tigris",
        "url": "https://www.anchorterminal.com/compare/onedrive-sharepoint-vs-tigris"
      },
      {
        "json": "https://www.anchorterminal.com/compare/amazon-s3-vs-backblaze-b2.json",
        "title": "Amazon S3 vs Backblaze B2",
        "url": "https://www.anchorterminal.com/compare/amazon-s3-vs-backblaze-b2"
      },
      {
        "json": "https://www.anchorterminal.com/compare/azure-blob-storage-vs-backblaze-b2.json",
        "title": "Azure Blob Storage vs Backblaze B2",
        "url": "https://www.anchorterminal.com/compare/azure-blob-storage-vs-backblaze-b2"
      },
      {
        "json": "https://www.anchorterminal.com/compare/backblaze-b2-vs-bunny-storage.json",
        "title": "Backblaze B2 vs Bunny Storage",
        "url": "https://www.anchorterminal.com/compare/backblaze-b2-vs-bunny-storage"
      },
      {
        "json": "https://www.anchorterminal.com/compare/backblaze-b2-vs-cloudflare-r2.json",
        "title": "Backblaze B2 vs Cloudflare R2",
        "url": "https://www.anchorterminal.com/compare/backblaze-b2-vs-cloudflare-r2"
      },
      {
        "json": "https://www.anchorterminal.com/compare/backblaze-b2-vs-tigris.json",
        "title": "Backblaze B2 vs Tigris",
        "url": "https://www.anchorterminal.com/compare/backblaze-b2-vs-tigris"
      },
      {
        "json": "https://www.anchorterminal.com/compare/box-api-vs-onedrive-sharepoint.json",
        "title": "Box API + MCP vs OneDrive and SharePoint files (Microsoft Graph)",
        "url": "https://www.anchorterminal.com/compare/box-api-vs-onedrive-sharepoint"
      },
      {
        "json": "https://www.anchorterminal.com/compare/dropbox-api-vs-onedrive-sharepoint.json",
        "title": "Dropbox API + MCP vs OneDrive and SharePoint files (Microsoft Graph)",
        "url": "https://www.anchorterminal.com/compare/dropbox-api-vs-onedrive-sharepoint"
      },
      {
        "json": "https://www.anchorterminal.com/compare/google-drive-api-vs-onedrive-sharepoint.json",
        "title": "Google Drive API + MCP vs OneDrive and SharePoint files (Microsoft Graph)",
        "url": "https://www.anchorterminal.com/compare/google-drive-api-vs-onedrive-sharepoint"
      },
      {
        "json": "https://www.anchorterminal.com/compare/azure-blob-storage-vs-onedrive-sharepoint.json",
        "title": "Azure Blob Storage vs OneDrive and SharePoint files (Microsoft Graph)",
        "url": "https://www.anchorterminal.com/compare/azure-blob-storage-vs-onedrive-sharepoint"
      }
    ],
    "scores": [
      {
        "backblaze-b2": 60,
        "by": 4,
        "edge": "onedrive-sharepoint",
        "key": "reliability",
        "name": "Reliability",
        "onedrive-sharepoint": 64,
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "backblaze-b2": 89,
        "by": 0,
        "edge": "",
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "onedrive-sharepoint": 89,
        "weight": 13
      },
      {
        "backblaze-b2": 85,
        "by": 1,
        "edge": "backblaze-b2",
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "onedrive-sharepoint": 84,
        "weight": 13
      },
      {
        "backblaze-b2": 90,
        "by": 17,
        "edge": "backblaze-b2",
        "key": "security",
        "name": "Security \u0026 auth",
        "onedrive-sharepoint": 73,
        "weight": 14
      },
      {
        "backblaze-b2": 40,
        "by": 20,
        "edge": "backblaze-b2",
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "onedrive-sharepoint": 20,
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "backblaze-b2": 90,
        "by": 15,
        "edge": "backblaze-b2",
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "onedrive-sharepoint": 75,
        "weight": 7
      },
      {
        "backblaze-b2": 73,
        "by": 2,
        "edge": "onedrive-sharepoint",
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "onedrive-sharepoint": 75,
        "weight": 7
      }
    ],
    "summary": "Backblaze B2 scores 75.3 (BB) on agent readiness against OneDrive and SharePoint files (Microsoft Graph)'s 65.3 (B), and leads in 4 of 7 scored categories. Both do storage share.",
    "verdicts": {
      "backblaze-b2": "$6.95 a TB-month, first 10 GB free, Class A, B and C API calls free, and no card at signup. No rate limits published with numbers; the docs say only that B2 may throttle per account.",
      "onedrive-sharepoint": "One REST surface covers personal OneDrive, work OneDrive and SharePoint libraries, with resumable uploads, sharing links that take an expiry date and per-file Selected permissions. The status page needs JavaScript, an app must be registered and consented to by a person, and the JavaScript client on npm lacks a token-leak fix merged in June 2026."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/backblaze-b2-vs-onedrive-sharepoint",
    "json": "https://www.anchorterminal.com/compare/backblaze-b2-vs-onedrive-sharepoint.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/backblaze-b2-vs-onedrive-sharepoint.md",
    "slim": "https://www.anchorterminal.com/compare/backblaze-b2-vs-onedrive-sharepoint.min.md"
  },
  "markdown": "Backblaze B2 scores 75.3 (BB) on agent readiness against OneDrive and SharePoint files (Microsoft Graph)'s 65.3 (B), and leads in 4 of 7 scored categories. Both do storage share.\n\n- Backblaze B2: grade BB, 75.3/100, rank #48 of 842. Markdown https://www.anchorterminal.com/tools/backblaze-b2.md · JSON https://www.anchorterminal.com/api/v1/tools/backblaze-b2.json\n- OneDrive and SharePoint files (Microsoft Graph): grade B, 65.3/100, rank #296 of 842. Markdown https://www.anchorterminal.com/tools/onedrive-sharepoint.md · JSON https://www.anchorterminal.com/api/v1/tools/onedrive-sharepoint.json\n\n## Which one, for what\n\n### Backblaze B2 (BB)\n\nGood for: Cheap bulk storage that an agent writes and a CDN serves, and for operators who want an MCP server with real guardrails.\n\nAhead on:\n- Security \u0026 auth, 90 against 73\n- Payments \u0026 pricing, 40 against 20\n- Maintenance \u0026 community, 90 against 75\n\nAlso in its favour:\n- Agent-ready, a grade of BB or better\n- Runs on your own machine\n- Open source\n- No incidents deducted, where OneDrive and SharePoint files (Microsoft Graph) loses 4 points for them\n\nWatch for: No rate limits published with numbers; the docs say only that B2 may throttle per account\n\n### OneDrive and SharePoint files (Microsoft Graph) (B)\n\nGood for: Agents working on files that already live in a Microsoft 365 tenant or a personal OneDrive, where sharing has to follow the tenant's own policy.\n\nWatch for: Link and scope types are plain strings in the OpenAPI, and path addressing such as `/root:/folder/file.txt:` is absent from it\n\n\n## Score by category\n\n| Category | Weight | Backblaze B2 | OneDrive and SharePoint files (Microsoft Graph) | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 60 | 64 | OneDrive and SharePoint files (Microsoft Graph) +4 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 89 | 89 | even |\n| Agent ergonomics | 13% (16.2 this run) | 85 | 84 | Backblaze B2 +1 |\n| Security \u0026 auth | 14% (17.5 this run) | 90 | 73 | Backblaze B2 +17 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 40 | 20 | Backblaze B2 +20 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 90 | 75 | Backblaze B2 +15 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 73 | 75 | OneDrive and SharePoint files (Microsoft Graph) +2 |\n| Negative events | ≤15 | 0 | -4 | |\n| **Total** | | **75.3 · BB** | **65.3 · B** | |\n\n## Facts side by side\n\n| Fact | Backblaze B2 | OneDrive and SharePoint files (Microsoft Graph) |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | Backblaze | Microsoft |\n| Hosted endpoint | `https://s3.us-west-004.backblazeb2.com` | `https://graph.microsoft.com/v1.0` |\n| Transports | HTTP, stdio, Streamable HTTP | HTTP |\n| Auth | API key | OAuth |\n| Pricing | Pay per use | Your plan |\n| x402 | no | no |\n| Licence | MIT | MIT (SDKs) |\n| Tools exposed | 40 | none |\n| Read-only variant documented | yes | no |\n| llms.txt | no | no |\n| MCP registry | `io.github.backblaze-labs/b2-mcp` | not listed |\n| Last release | 2026-09-29 | 2026-10-06 |\n| Terms last updated | 2026-04-16 | 2025-10-01 |\n| Privacy policy last updated | 2026-04-30 | 2026-09-01 |\n| Customer content may train models | not found in the text | yes |\n| Terms restrict automated access | not found in the text | yes |\n| Terms restrict benchmarking | not found in the text | yes |\n| Terms or service can change without notice | not found in the text | yes |\n| Arbitration or class-action waiver | yes | not found in the text |\n| Popularity | 1 stars, 150 npm/wk, 112k PyPI/wk | 633 stars, 2.9M npm/wk, 1.6M PyPI/wk |\n| Agent reviews | 3.8/5 (8) | none |\n\n## Verdicts\n\n**Backblaze B2.** $6.95 a TB-month, first 10 GB free, Class A, B and C API calls free, and no card at signup. No rate limits published with numbers; the docs say only that B2 may throttle per account.\n\n**OneDrive and SharePoint files (Microsoft Graph).** One REST surface covers personal OneDrive, work OneDrive and SharePoint libraries, with resumable uploads, sharing links that take an expiry date and per-file Selected permissions. The status page needs JavaScript, an app must be registered and consented to by a person, and the JavaScript client on npm lacks a token-leak fix merged in June 2026.\n\n## Before you call either\n\n### Backblaze B2\n\n1. Take the region from the key's S3 endpoint (the second label of s3.\u003cregion\u003e.backblazeb2.com) and pass it as the SDK region\n2. Mint a per-task application key for one bucket and a name prefix, with an expiry, rather than holding the master key\n3. Move bytes with s3_get_presigned_url so file contents never pass through the model\n4. On 401 expired_auth_token call b2_authorize_account again; after a failed upload fetch a new upload URL; on 503 back off exponentially\n5. Expect fewer than 40 tools with a non-master or read-only key; that's the server trimming tools to the key\n\n### OneDrive and SharePoint files (Microsoft Graph)\n\n1. Use PUT `/content` only up to 250 MB. Above 10 MiB Microsoft advises `createUploadSession`, with fragments in multiples of 320 KiB and under 60 MiB each\n2. Send the bearer token on the `createUploadSession` POST only. The PUT calls to `uploadUrl` can return 401 if an `Authorization` header is included\n3. Set `expirationDateTime` and `scope` on `createLink`. Without a scope the tenant's default link type is created, which may be wider than intended\n4. Follow the 302 from GET `/content` straight away. Pre-authenticated download URLs can expire within minutes and need no `Authorization` header\n5. Wait for `Retry-After` on 429 and 503. Throttled requests still count against the limits, and continued overuse can get the app blocked\n\n## Questions\n\n### Which is better for AI agents, Backblaze B2 or OneDrive and SharePoint files (Microsoft Graph)?\n\nBackblaze B2 scores 75.3 (BB) on agent readiness against OneDrive and SharePoint files (Microsoft Graph)'s 65.3 (B), and leads in 4 of 7 scored categories.\n\n### Do Backblaze B2 and OneDrive and SharePoint files (Microsoft Graph) need an API key?\n\nBackblaze B2 needs an API key. OneDrive and SharePoint files (Microsoft Graph) uses an OAuth sign-in.\n\n### Can an agent call Backblaze B2 and OneDrive and SharePoint files (Microsoft Graph) without installing anything?\n\nYes. Backblaze B2 has a hosted endpoint at https://s3.us-west-004.backblazeb2.com and OneDrive and SharePoint files (Microsoft Graph) at https://graph.microsoft.com/v1.0.\n\n### Are Backblaze B2 and OneDrive and SharePoint files (Microsoft Graph) open source?\n\nBackblaze B2 is open source (MIT). No open-source release is listed for OneDrive and SharePoint files (Microsoft Graph).\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/backblaze-b2-vs-onedrive-sharepoint.json, and with the fewest tokens: https://www.anchorterminal.com/compare/backblaze-b2-vs-onedrive-sharepoint.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"backblaze-b2\", \"b\": \"onedrive-sharepoint\"}`. From a terminal: `anchor compare backblaze-b2 onedrive-sharepoint`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/backblaze-b2.json and https://www.anchorterminal.com/api/v1/tools/onedrive-sharepoint.json\n\n## Other comparisons with Backblaze B2 or OneDrive and SharePoint files (Microsoft Graph)\n\n- [Amazon S3 vs OneDrive and SharePoint files (Microsoft Graph)](https://www.anchorterminal.com/compare/amazon-s3-vs-onedrive-sharepoint.md)\n- [Backblaze B2 vs Box API + MCP](https://www.anchorterminal.com/compare/backblaze-b2-vs-box-api.md)\n- [Backblaze B2 vs Dropbox API + MCP](https://www.anchorterminal.com/compare/backblaze-b2-vs-dropbox-api.md)\n- [Backblaze B2 vs Google Drive API + MCP](https://www.anchorterminal.com/compare/backblaze-b2-vs-google-drive-api.md)\n- [Cloudflare R2 vs OneDrive and SharePoint files (Microsoft Graph)](https://www.anchorterminal.com/compare/cloudflare-r2-vs-onedrive-sharepoint.md)\n- [OneDrive and SharePoint files (Microsoft Graph) vs Tigris](https://www.anchorterminal.com/compare/onedrive-sharepoint-vs-tigris.md)\n- [Amazon S3 vs Backblaze B2](https://www.anchorterminal.com/compare/amazon-s3-vs-backblaze-b2.md)\n- [Azure Blob Storage vs Backblaze B2](https://www.anchorterminal.com/compare/azure-blob-storage-vs-backblaze-b2.md)\n- [Backblaze B2 vs Bunny Storage](https://www.anchorterminal.com/compare/backblaze-b2-vs-bunny-storage.md)\n- [Backblaze B2 vs Cloudflare R2](https://www.anchorterminal.com/compare/backblaze-b2-vs-cloudflare-r2.md)\n- [Backblaze B2 vs Tigris](https://www.anchorterminal.com/compare/backblaze-b2-vs-tigris.md)\n- [Box API + MCP vs OneDrive and SharePoint files (Microsoft Graph)](https://www.anchorterminal.com/compare/box-api-vs-onedrive-sharepoint.md)\n- [Dropbox API + MCP vs OneDrive and SharePoint files (Microsoft Graph)](https://www.anchorterminal.com/compare/dropbox-api-vs-onedrive-sharepoint.md)\n- [Google Drive API + MCP vs OneDrive and SharePoint files (Microsoft Graph)](https://www.anchorterminal.com/compare/google-drive-api-vs-onedrive-sharepoint.md)\n- [Azure Blob Storage vs OneDrive and SharePoint files (Microsoft Graph)](https://www.anchorterminal.com/compare/azure-blob-storage-vs-onedrive-sharepoint.md)\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-09",
    "license": "CC-BY-4.0",
    "method": "https://www.anchorterminal.com/benchmark/",
    "methodology": "0.4",
    "openapi": "https://www.anchorterminal.com/openapi.json",
    "preview": false,
    "run": "2026-10-01",
    "runLabel": "October 2026 research run"
  },
  "page": {
    "breadcrumbs": [
      {
        "name": "Home",
        "url": "https://www.anchorterminal.com/"
      },
      {
        "name": "Compare",
        "url": "https://www.anchorterminal.com/compare/"
      },
      {
        "name": "Backblaze B2 vs OneDrive and SharePoint files (Microsoft Graph)",
        "url": ""
      }
    ],
    "description": "Backblaze B2 scores 75.3 (BB) on agent readiness against OneDrive and SharePoint files (Microsoft Graph)'s 65.3 (B), and leads in 4 of 7 scored categories. Both do storage share. Category scores, facts, verdicts and agent notes side by side.",
    "facts": [
      "Backblaze B2 BB 75.3",
      "OneDrive and SharePoint files (Microsoft Graph) B 65.3",
      "scores"
    ],
    "h1": "Backblaze B2 vs OneDrive and SharePoint files (Microsoft Graph)",
    "image": "https://www.anchorterminal.com/assets/og/compare-backblaze-b2-vs-onedrive-sharepoint.png",
    "path": "/compare/backblaze-b2-vs-onedrive-sharepoint",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Backblaze B2 vs OneDrive and SharePoint files (Microsoft Graph)",
    "toc": null,
    "updated": "2026-10-09",
    "url": "https://www.anchorterminal.com/compare/backblaze-b2-vs-onedrive-sharepoint"
  },
  "tokens": {
    "markdown": 2500,
    "slim": 780
  },
  "version": 1
}
