{
  "data": {
    "similar": [
      {
        "grade": "C",
        "json": "https://www.anchorterminal.com/tools/tablecheck.json",
        "name": "TableCheck API",
        "score": 57.1,
        "shared": [
          "booking.availability",
          "booking.venue"
        ],
        "slug": "tablecheck"
      },
      {
        "grade": "D",
        "json": "https://www.anchorterminal.com/tools/eat-app.json",
        "name": "Eat App Partner API",
        "score": 53.4,
        "shared": [
          "booking.availability",
          "booking.venue"
        ],
        "slug": "eat-app"
      },
      {
        "grade": "E",
        "json": "https://www.anchorterminal.com/tools/thefork.json",
        "name": "TheFork B2B API",
        "score": 43.6,
        "shared": [
          "booking.availability",
          "booking.venue"
        ],
        "slug": "thefork"
      },
      {
        "grade": "E",
        "json": "https://www.anchorterminal.com/tools/opentable.json",
        "name": "OpenTable APIs",
        "score": 38.6,
        "shared": [
          "booking.availability",
          "booking.venue"
        ],
        "slug": "opentable"
      },
      {
        "grade": "F",
        "json": "https://www.anchorterminal.com/tools/sevenrooms.json",
        "name": "SevenRooms",
        "score": 17.7,
        "shared": [
          "booking.venue",
          "booking.availability"
        ],
        "slug": "sevenrooms"
      },
      {
        "grade": "F",
        "json": "https://www.anchorterminal.com/tools/resy.json",
        "name": "Resy",
        "score": 10.3,
        "shared": [
          "booking.availability",
          "booking.venue"
        ],
        "slug": "resy"
      }
    ],
    "tool": {
      "slug": "square-appointments",
      "name": "Square Appointments (Bookings API)",
      "vendor": "Block, Inc.",
      "vendorUrl": "https://squareup.com/us/en/appointments",
      "kind": "http-api",
      "category": "local-bookings",
      "summary": "Square Appointments is Block's booking product for service businesses. Its Bookings API searches a seller's availability and creates, updates and cancels appointments, with location, team member and business booking profiles and custom attributes.",
      "url": "https://www.anchorterminal.com/tools/square-appointments",
      "markdownUrl": "https://www.anchorterminal.com/tools/square-appointments.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/square-appointments.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/square-appointments.json",
      "repo": "https://github.com/square/connect-api-specification",
      "license": "Proprietary service under the Square Developer Terms of Service. The OpenAPI specification and MCP server are Apache 2.0",
      "transports": [
        "http",
        "streamable-http",
        "stdio"
      ],
      "remoteUrl": "https://connect.squareup.com/v2/bookings",
      "packages": [
        {
          "registry": "npm",
          "name": "square"
        },
        {
          "registry": "pypi",
          "name": "squareup"
        },
        {
          "registry": "npm",
          "name": "square-mcp-server"
        }
      ],
      "auth": "mixed",
      "authNotes": "Self-serve. A Square account and a Developer Console application. OAuth access tokens carry appointment scopes (`APPOINTMENTS_READ`, `APPOINTMENTS_WRITE`, `APPOINTMENTS_ALL_READ`, `APPOINTMENTS_ALL_WRITE`, `APPOINTMENTS_BUSINESS_SETTINGS_READ`), expire after 30 days and can be refreshed and revoked. Personal access tokens are unrestricted for the owner's account. Seller-level permissions see every booking. Buyer-level permissions see only the bookings the app created (https://developer.squareup.com/docs/bookings-api/what-it-is).",
      "pricing": "freemium",
      "pricingNotes": "The API carries no charge. Square Free is $0 a month per location, Plus $49 and Premium $149, and the comparison table lists the Bookings API under Plus and Premium. Seller-level create, update and cancel need Plus or Premium, while buyer-level bookings work on the free plan. Card processing fees apply to payments. The sandbox is free (https://squareup.com/us/en/appointments/pricing, checked 2026-10-14).",
      "priceSummary": "$49 / mo",
      "where": "both",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in developer.squareup.com/llms.txt or the OpenAPI spec (checked 2026-10-14).",
        "endpoints": []
      },
      "toolCount": 3,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-14"
      },
      "docsUrl": "https://developer.squareup.com/docs/bookings-api/what-it-is",
      "llmsTxt": "https://developer.squareup.com/llms.txt",
      "openapi": "https://raw.githubusercontent.com/square/connect-api-specification/master/api.json",
      "capabilities": [
        "booking.appointments",
        "booking.availability",
        "booking.venue"
      ],
      "tags": [
        "hosted",
        "closed-source",
        "rest",
        "oauth",
        "openapi",
        "llms-txt",
        "webhooks",
        "sandbox",
        "mcp",
        "freemium",
        "status-page",
        "bug-bounty",
        "venue-side"
      ],
      "lastRelease": "2026-09-16",
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 68.1,
        "grade": "B",
        "agentReady": false,
        "rank": 242,
        "ranked": true,
        "rankOf": 1076,
        "categoryRank": 1,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 80,
          "maintenance": 71,
          "payments": 40,
          "reliability": 55,
          "schema": 89,
          "security": 70,
          "transparency": 70
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "breakdown": [
          {
            "key": "reliability",
            "name": "Reliability",
            "weight": 16,
            "effectiveWeight": 20,
            "score": 55,
            "points": 11,
            "reason": "Graded on the hosted Bookings API, part of Square's REST API. Status page at issquareup.com with an incident history (20). In the 90 days to 14 October 2026 it lists 15 incidents, all labelled minor, including widespread elevated latency and errors across Square on 27 September that closed after 1 hour 47 minutes. None names Appointments or bookings (10). No numeric limits were found for the REST API (0). The docs describe 429 `RATE_LIMITED`, exponential backoff with jitter, and `idempotency_key` on CreateBooking, UpdateBooking and CancelBooking (15). No SLA found (0). All 24 Bookings and Booking Custom Attributes operations are marked PUBLIC in the 2026-09-16 spec. The MCP server is beta (10). Total 55."
          },
          {
            "key": "performance",
            "name": "Performance",
            "weight": 10,
            "effectiveWeight": 0,
            "pending": true,
            "points": 0,
            "reason": "Pending. Latency is measured per call by our probes, which haven't run yet, so this run doesn't score it. Its weight is shared across the assessed categories until the first probe window closes."
          },
          {
            "key": "schema",
            "name": "Schema \u0026 documentation",
            "weight": 13,
            "effectiveWeight": 16.25,
            "score": 89,
            "points": 14.46,
            "reason": "Public OpenAPI 3.0 spec in square/connect-api-specification covering all 24 booking operations (25). developer.squareup.com/llms.txt indexes the docs, and guide pages answer in Markdown with `.md` (10). Operation descriptions state purpose, and the guides explain seller-level and buyer-level access and what fails without a paid plan (15). Booking request schemas are typed with required fields and enums for status and location type (13). Guides carry request and response examples and the 403 body returned when a seller's plan doesn't allow writes. Errors share Square's category, code and detail format (11). Dated API versions set by `Square-Version` and monthly release notes (15). Total 89."
          },
          {
            "key": "ergonomics",
            "name": "Agent ergonomics",
            "weight": 13,
            "effectiveWeight": 16.25,
            "score": 80,
            "points": 13,
            "reason": "ListBookings takes `limit` and a cursor, and SearchAvailability takes a time range and segment filters. No field selection outside GraphQL (18). Cursor pagination, filters by location, team member and customer, and bulk retrieve (18). Errors carry a category, a code and the field at fault (18). `idempotency_key` on create, update and cancel, and `booking_version` for optimistic locking. The MCP tools carry no readOnlyHint or destructiveHint annotations (15). Seven official SDKs. A booking needs the location, a bookable team member, a service variation ID and version and a customer, each fetched from another API first (11). Total 80."
          },
          {
            "key": "security",
            "name": "Security \u0026 auth",
            "weight": 14,
            "effectiveWeight": 17.5,
            "score": 70,
            "points": 12.25,
            "reason": "OAuth with read and write scopes for appointments (`APPOINTMENTS_READ`, `APPOINTMENTS_WRITE`, `APPOINTMENTS_ALL_READ`, `APPOINTMENTS_ALL_WRITE`, `APPOINTMENTS_BUSINESS_SETTINGS_READ`), 30-day access tokens, refresh and revocation. Personal access tokens are unrestricted (26). Buyer-level permissions confine an app to the bookings it created, and read scopes exist. No confirmation step for cancellation (15). Booking notes and customer notes are free text. No prompt-injection guidance found (3). API Logs keep each request for 28 days (12). Bugcrowd programme linked from the security page, ISO 27001 and PCI stated, no security.txt (14). Total 70."
          },
          {
            "key": "payments",
            "name": "Payments \u0026 pricing",
            "weight": 10,
            "effectiveWeight": 12.5,
            "score": 40,
            "points": 5,
            "reason": "No x402, MPP or L402 (0). Prices are public without login. Square Free is $0 a month per location, Plus $49 and Premium $149, and the comparison table lists the Bookings API under Plus and Premium (20). The sandbox is free, and buyer-level bookings work on the free Appointments plan (20). A person creates a Square account and a Developer Console application, or approves OAuth in a browser (0). Total 40."
          },
          {
            "key": "tasks",
            "name": "Task success",
            "weight": 10,
            "effectiveWeight": 0,
            "pending": true,
            "points": 0,
            "reason": "Pending. Task success needs the category task suites run through each tool, which haven't run yet, so this run doesn't score it. Its weight is shared across the assessed categories until then. A data provider's data-quality score is published on its listing now and becomes half of this category when it's scored."
          },
          {
            "key": "maintenance",
            "name": "Maintenance \u0026 community",
            "weight": 7,
            "effectiveWeight": 8.75,
            "score": 71,
            "points": 6.21,
            "reason": "Square released API version 2026-09-16 on 16 September 2026, and the Bookings API is served under it. The changelog index shows no Bookings change since 19 September 2024 (customer address on bookings), so we depart from the 30 for a release within 30 days and give 20. Three dated Square releases in 90 days, 15 July, 19 August and 16 September 2026 (20). Release notes, a developer forum and a Discord community (10). Seven official SDKs regenerated for 2026-09-16, and the MCP server includes `bookings` and `bookingcustomattributes` services, though it is not in the official MCP registry (15). The npm package square-mcp-server is still 0.1.2 from April 2025 (6). Total 71."
          },
          {
            "key": "transparency",
            "name": "Transparency \u0026 trust",
            "weight": 7,
            "effectiveWeight": 8.75,
            "score": 70,
            "points": 6.13,
            "note": "editorial 56, provenance 84",
            "reason": "Closed service under the Square Developer Terms (updated 10 September 2026). The API spec and MCP server are Apache 2.0 (15). The privacy notice of 15 September 2026 gives no retention periods, and no public DPA was found (13). APIs are typically retired at least 12 months after deprecation, with dated notices (20). Service providers by category, processing in the US, Japan, the UK and the EU, no named list (8). Total 56, matching the Square listing, which shares these documents."
          }
        ],
        "assessment": {
          "date": "2026-10-14",
          "basis": "public evidence",
          "confidence": "medium",
          "notes": {
            "ergonomics": "ListBookings takes `limit` and a cursor, and SearchAvailability takes a time range and segment filters. No field selection outside GraphQL (18). Cursor pagination, filters by location, team member and customer, and bulk retrieve (18). Errors carry a category, a code and the field at fault (18). `idempotency_key` on create, update and cancel, and `booking_version` for optimistic locking. The MCP tools carry no readOnlyHint or destructiveHint annotations (15). Seven official SDKs. A booking needs the location, a bookable team member, a service variation ID and version and a customer, each fetched from another API first (11). Total 80.",
            "maintenance": "Square released API version 2026-09-16 on 16 September 2026, and the Bookings API is served under it. The changelog index shows no Bookings change since 19 September 2024 (customer address on bookings), so we depart from the 30 for a release within 30 days and give 20. Three dated Square releases in 90 days, 15 July, 19 August and 16 September 2026 (20). Release notes, a developer forum and a Discord community (10). Seven official SDKs regenerated for 2026-09-16, and the MCP server includes `bookings` and `bookingcustomattributes` services, though it is not in the official MCP registry (15). The npm package square-mcp-server is still 0.1.2 from April 2025 (6). Total 71.",
            "payments": "No x402, MPP or L402 (0). Prices are public without login. Square Free is $0 a month per location, Plus $49 and Premium $149, and the comparison table lists the Bookings API under Plus and Premium (20). The sandbox is free, and buyer-level bookings work on the free Appointments plan (20). A person creates a Square account and a Developer Console application, or approves OAuth in a browser (0). Total 40.",
            "reliability": "Graded on the hosted Bookings API, part of Square's REST API. Status page at issquareup.com with an incident history (20). In the 90 days to 14 October 2026 it lists 15 incidents, all labelled minor, including widespread elevated latency and errors across Square on 27 September that closed after 1 hour 47 minutes. None names Appointments or bookings (10). No numeric limits were found for the REST API (0). The docs describe 429 `RATE_LIMITED`, exponential backoff with jitter, and `idempotency_key` on CreateBooking, UpdateBooking and CancelBooking (15). No SLA found (0). All 24 Bookings and Booking Custom Attributes operations are marked PUBLIC in the 2026-09-16 spec. The MCP server is beta (10). Total 55.",
            "schema": "Public OpenAPI 3.0 spec in square/connect-api-specification covering all 24 booking operations (25). developer.squareup.com/llms.txt indexes the docs, and guide pages answer in Markdown with `.md` (10). Operation descriptions state purpose, and the guides explain seller-level and buyer-level access and what fails without a paid plan (15). Booking request schemas are typed with required fields and enums for status and location type (13). Guides carry request and response examples and the 403 body returned when a seller's plan doesn't allow writes. Errors share Square's category, code and detail format (11). Dated API versions set by `Square-Version` and monthly release notes (15). Total 89.",
            "security": "OAuth with read and write scopes for appointments (`APPOINTMENTS_READ`, `APPOINTMENTS_WRITE`, `APPOINTMENTS_ALL_READ`, `APPOINTMENTS_ALL_WRITE`, `APPOINTMENTS_BUSINESS_SETTINGS_READ`), 30-day access tokens, refresh and revocation. Personal access tokens are unrestricted (26). Buyer-level permissions confine an app to the bookings it created, and read scopes exist. No confirmation step for cancellation (15). Booking notes and customer notes are free text. No prompt-injection guidance found (3). API Logs keep each request for 28 days (12). Bugcrowd programme linked from the security page, ISO 27001 and PCI stated, no security.txt (14). Total 70.",
            "transparency": "Closed service under the Square Developer Terms (updated 10 September 2026). The API spec and MCP server are Apache 2.0 (15). The privacy notice of 15 September 2026 gives no retention periods, and no public DPA was found (13). APIs are typically retired at least 12 months after deprecation, with dated notices (20). Service providers by category, processing in the US, Japan, the UK and the EU, no named list (8). Total 56, matching the Square listing, which shares these documents."
          },
          "sources": [
            {
              "what": "Bookings API overview",
              "url": "https://developer.squareup.com/docs/bookings-api/what-it-is.md",
              "seen": "2026-10-14"
            },
            {
              "what": "Bookings concepts",
              "url": "https://developer.squareup.com/docs/bookings-api/get-ready-to-use-the-api.md",
              "seen": "2026-10-14"
            },
            {
              "what": "onboarding to Appointments",
              "url": "https://developer.squareup.com/docs/bookings-api/onboard-to-the-api.md",
              "seen": "2026-10-14"
            },
            {
              "what": "create and manage bookings",
              "url": "https://developer.squareup.com/docs/bookings-api/use-the-api.md",
              "seen": "2026-10-14"
            },
            {
              "what": "bookings webhooks",
              "url": "https://developer.squareup.com/docs/bookings-api/use-webhooks.md",
              "seen": "2026-10-14"
            },
            {
              "what": "OpenAPI spec",
              "url": "https://raw.githubusercontent.com/square/connect-api-specification/master/api.json",
              "seen": "2026-10-14"
            },
            {
              "what": "llms.txt",
              "url": "https://developer.squareup.com/llms.txt",
              "seen": "2026-10-14"
            },
            {
              "what": "release notes index",
              "url": "https://developer.squareup.com/docs/changelog/connect",
              "seen": "2026-10-14"
            },
            {
              "what": "release 2024-09-19",
              "url": "https://developer.squareup.com/docs/changelog/connect-logs/2024-09-19",
              "seen": "2026-10-14"
            },
            {
              "what": "status incidents",
              "url": "https://www.issquareup.com/api/v2/incidents.json",
              "seen": "2026-10-14"
            },
            {
              "what": "Appointments pricing",
              "url": "https://squareup.com/us/en/appointments/pricing",
              "seen": "2026-10-14"
            },
            {
              "what": "MCP server source",
              "url": "https://github.com/square/square-mcp-server",
              "seen": "2026-10-14"
            },
            {
              "what": "developer terms",
              "url": "https://squareup.com/us/en/legal/general/developers",
              "seen": "2026-10-14"
            },
            {
              "what": "privacy notice",
              "url": "https://squareup.com/us/en/legal/general/privacy",
              "seen": "2026-10-14"
            }
          ],
          "openQuestions": [
            "The pricing table lists the Bookings API under Plus and Premium only, while the developer docs say buyer-level access works for every seller, including the free plan. Both are recorded",
            "No numeric REST rate limits and no SLA were found in the reviewed documentation",
            "unchecked: the remote MCP server's live tool list, which needs OAuth. The bookings service is read from the open-source server",
            "unchecked: the trial length for Plus and Premium, which the pricing page renders with JavaScript",
            "Square is listed separately as `square` in commerce. This listing covers only the Bookings API and Square Appointments"
          ]
        },
        "negative": 0,
        "verdict": "The Bookings API lets an agent working for a Square seller search availability and create, change and cancel appointments, with a public OpenAPI spec, appointment OAuth scopes and idempotency keys. It acts for the venue. Seller-level writes need Plus or Premium, services with a no-show fee can't be booked through it, and it hasn't changed since September 2024.",
        "bestFor": "Venue-side appointment booking for salons, clinics and other service businesses already on Square.",
        "strengths": [
          "Availability search, create, update and cancel are separate documented operations, all generally available",
          "Five appointment OAuth scopes separate reading, writing and business settings",
          "`idempotency_key` on create, update and cancel, and `booking_version` for optimistic locking",
          "Buyer-level permissions work on the free Appointments plan and limit an app to its own bookings",
          "Free sandbox, and Square's MCP server includes the bookings service"
        ],
        "weaknesses": [
          "Seller-level create, update and cancel fail with 403 unless the seller pays for Plus ($49) or Premium ($149) per location",
          "Services with a non-zero no-show fee cannot be booked through the API, and the fee can't be set through it",
          "No Bookings API change in the changelog since 19 September 2024",
          "No numeric REST rate limits or SLA were found",
          "Bookable team members can only be set in the Square Dashboard"
        ],
        "agentNotes": [
          "Act for the seller. This API books into one Square seller's calendar, not across businesses",
          "Call RetrieveBusinessBookingProfile and check `support_seller_level_writes` before trying to create or cancel a seller-level booking",
          "Call SearchAvailability first, then CreateBooking with the service variation ID and version, team member, location and customer",
          "Send a fresh `idempotency_key` on each create, update or cancel, and pass `booking_version` when cancelling",
          "Check `no_show_fee` on the service. A service with a non-zero fee must be booked by the customer elsewhere"
        ],
        "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": 68.1
          }
        ],
        "editorialScores": {
          "ergonomics": 80,
          "maintenance": 71,
          "payments": 40,
          "reliability": 55,
          "schema": 89,
          "security": 70,
          "transparency": 56
        },
        "provenanceScore": 84
      },
      "connect": {
        "install": "npx square-mcp-server start",
        "http": "curl https://connect.squareupsandbox.com/v2/bookings/availability/search \\\n  -X POST \\\n  -H 'Square-Version: 2026-09-16' \\\n  -H 'Authorization: Bearer {SANDBOX_ACCESS_TOKEN}' \\\n  -H 'Content-Type: application/json' \\\n  -d '{\"query\": {\"filter\": {\"start_at_range\": {\"start_at\": \"2026-10-20T09:00:00Z\", \"end_at\": \"2026-10-21T09:00:00Z\"}, \"location_id\": \"{LOCATION_ID}\"}}}'"
      },
      "letme": {
        "capability": "https://letme.dev/booking.appointments",
        "tool": "https://letme.dev/square-appointments"
      },
      "sameCompany": [
        "square"
      ],
      "notable": [
        "24 operations under /v2/bookings in the 2026-09-16 spec, all marked PUBLIC, including SearchAvailability, CreateBooking, UpdateBooking and CancelBooking (https://github.com/square/connect-api-specification)",
        "Seller-level writes fail with 403 \"Merchant subscription does not support write operations\" unless the seller has Appointments Plus or Premium (https://developer.squareup.com/docs/bookings-api/what-it-is)",
        "A service with a non-zero `no_show_fee` cannot be booked through the Bookings API, and the fee can only be set in the Square Dashboard (https://developer.squareup.com/docs/bookings-api/use-the-api)",
        "Once a deposit has been paid, a booking's appointment segments cannot be updated (https://developer.squareup.com/docs/bookings-api/use-the-api)",
        "The last Bookings API change in the release notes is 19 September 2024, which added a customer address for bookings at the customer's location (https://developer.squareup.com/docs/changelog/connect-logs/2024-09-19)",
        "Square's open-source MCP server includes `bookings` and `bookingcustomattributes` among its services (https://github.com/square/square-mcp-server)"
      ],
      "area": "everyday",
      "details": [
        {
          "label": "Surface graded",
          "value": "The Bookings API and Booking Custom Attributes API at https://connect.squareup.com/v2/bookings, read from the guides, the OpenAPI spec and the pricing page on 14 October 2026"
        },
        {
          "label": "Acts for",
          "value": "The venue (a Square seller). Buyer-level permissions let an app book for the seller's customers, limited to bookings the app created"
        },
        {
          "label": "Booking cycle",
          "value": "SearchAvailability, CreateBooking, UpdateBooking, CancelBooking, RetrieveBooking and ListBookings, plus location, team member and business booking profiles"
        },
        {
          "label": "Plans",
          "value": "Seller-level writes need Appointments Plus or Premium. Buyer-level bookings and seller-level reads work on the free plan"
        },
        {
          "label": "Deposits and fees",
          "value": "Services with a non-zero no-show fee can't be booked through the API. Segments of a booking with a paid deposit can't be updated"
        },
        {
          "label": "Webhooks",
          "value": "booking.created and booking.updated. Buyer-level apps get events only for bookings they created"
        },
        {
          "label": "Rate limits",
          "value": "No numbers published for REST. 429 `RATE_LIMITED`, with exponential backoff and jitter advised"
        }
      ],
      "unitPrices": [
        {
          "item": "Square Free",
          "unit": "month",
          "usd": 0,
          "note": "per location, buyer-level bookings only"
        },
        {
          "item": "Square Plus",
          "unit": "month",
          "usd": 49,
          "note": "per location, Bookings API seller-level writes"
        },
        {
          "item": "Square Premium",
          "unit": "month",
          "usd": 149,
          "note": "per location"
        }
      ],
      "provenance": {
        "legalEntity": "Block, Inc.",
        "domain": "squareup.com",
        "domainRegistered": "2007-05-26",
        "endpointOnVendorDomain": true,
        "terms": "https://squareup.com/us/en/legal/general/developers",
        "privacy": "https://squareup.com/us/en/legal/general/privacy",
        "statusPage": "https://www.issquareup.com",
        "changelog": "https://developer.squareup.com/docs/changelog/connect",
        "securityTxt": "none",
        "checked": "2026-10-14",
        "notes": [
          "The Square Developer Terms (updated 10 September 2026) are an agreement with Block, Inc. and govern the APIs, as recorded for the Square listing on 8 October 2026.",
          "The privacy notice (updated 15 September 2026) names Block, Inc., 1955 Broadway, Suite 600, Oakland, CA 94612 for US sellers.",
          "squareup.com/.well-known/security.txt returned 404 on 8 October 2026, and developer.squareup.com disallows /.well-known/ in robots.txt.",
          "RDAP gives a registration date of 2007-05-26 for squareup.com."
        ],
        "score": 84,
        "checks": [
          {
            "check": "Legal entity named",
            "value": "Block, Inc.",
            "points": 20,
            "max": 20,
            "state": "ok"
          },
          {
            "check": "Domain age",
            "value": "squareup.com, registered 2007-05-26 (19 years)",
            "points": 15,
            "max": 15,
            "state": "ok"
          },
          {
            "check": "Endpoint on the vendor's domain",
            "value": "connect.squareup.com",
            "points": 15,
            "max": 15,
            "state": "ok"
          },
          {
            "check": "Terms of service",
            "value": "read, states 6 of the 7 things a reader expects, and has 2 clauses that cost points",
            "points": 5.1,
            "max": 10,
            "state": "part"
          },
          {
            "check": "Privacy policy",
            "value": "read, states 7 of the 8 things a reader expects",
            "points": 9.3,
            "max": 10,
            "state": "part"
          },
          {
            "check": "Status page",
            "value": "www.issquareup.com",
            "points": 10,
            "max": 10,
            "state": "ok"
          },
          {
            "check": "Changelog",
            "value": "published",
            "points": 10,
            "max": 10,
            "state": "ok"
          },
          {
            "check": "security.txt",
            "value": "not found",
            "points": 0,
            "max": 10,
            "state": "no"
          }
        ],
        "policies": [
          {
            "kind": "terms",
            "url": "https://squareup.com/us/en/legal/general/developers",
            "state": "read",
            "readAt": "2026-10-08",
            "statedDate": "2026-09-10",
            "words": 9322,
            "points": 5.1,
            "max": 10,
            "expected": [
              {
                "key": "terms.date",
                "label": "Gives the date it was last updated",
                "found": true,
                "quote": "Last updated: September 10, 2026",
                "says": "Last updated 2026-09-10"
              },
              {
                "key": "terms.law",
                "label": "Names the governing law or courts",
                "found": true,
                "quote": "Our relationship is governed by the laws of California, federal law, or both.",
                "says": "The law of California"
              },
              {
                "key": "terms.liability",
                "label": "States a limit on its liability",
                "found": true,
                "quote": "TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW, THE TOTAL LIABILITY OF SQUARE IS LIMITED TO THE GREATER OF (A) THE AMOUNT OF FEES EARNED BY US IN CONNECTION WITH YOUR USE OF THE SERVICES DURING THE THREE (3) MONTH PERIOD IMMEDIATELY PRECEEDING THE EVENT GIVING RISE TO THE CLAIM FOR LIABILITY OR (B) $500.",
                "says": "Capped at $500"
              },
              {
                "key": "terms.termination",
                "label": "Says how the agreement or account can be ended",
                "found": true,
                "quote": "If you revoke this license, your access to the Developer Tools and Content will immediately terminate."
              },
              {
                "key": "terms.changes",
                "label": "Says how changes to the terms are announced",
                "found": true,
                "quote": "We may amend these Developer Terms and the documentation and guidelines accompanying the applicable Developer Tools, at any time with notice that we deem to be reasonable in the circumstances, by posting the revised version on our website or communicating it to you through your Square account (each a “Revised Version”…",
                "says": "Says it gives notice of a change"
              },
              {
                "key": "terms.use",
                "label": "Lists what users may not do",
                "found": true,
                "quote": "You will not misrepresent or mask either your identity or Your Service’s identity when using the Developer Tools or developer accounts."
              },
              {
                "key": "terms.sla",
                "label": "Refers to a service level or uptime commitment",
                "found": false
              }
            ],
            "toKnow": [
              {
                "key": "terms.automated",
                "label": "Restricts automated access",
                "found": true,
                "quote": "scrape, access, download, store, build databases or otherwise create permanent copies of any Square Seller’s Content, including Content related to or provided by any customer of any Square Seller;",
                "costsPoints": true
              },
              {
                "key": "terms.benchmark",
                "label": "Restricts benchmarking or competitive use",
                "found": true,
                "quote": "create a service that functions substantially the same as the Developer Tools or any Square service;",
                "costsPoints": true
              },
              {
                "key": "terms.cutoff",
                "label": "Says access can be ended without notice or for any reason",
                "found": true,
                "quote": "We may terminate these Developer Terms, suspend or terminate your Square account at any time for any reason, including, but not limited to, where Your Service allows Square Sellers to migrate from Square to a third party service or platform."
              },
              {
                "key": "terms.arbitration",
                "label": "Requires arbitration or waives class actions",
                "found": true,
                "quote": "YOU WAIVE ANY RIGHT TO HAVE YOUR CASE DECIDED BY A JURY AND YOU WAIVE ANY RIGHT TO PARTICIPATE IN A CLASS ACTION AGAINST SQUARE."
              }
            ],
            "notes": [
              {
                "date": "2026-10-08",
                "text": "Developers may not use Content or other data received from Square to train or enhance any AI System, whether or not the data is anonymised.",
                "quote": "use any Content or other data received from Square (anonymized or not) to train or otherwise enhance any “AI System” (as defined in Section 7)."
              },
              {
                "date": "2026-10-08",
                "text": "Content submitted through the Developer Tools is licensed to Square on a perpetual and irrevocable basis.",
                "quote": "you give Square a perpetual, irrevocable, worldwide, royalty-free, and non-exclusive license to reproduce, adapt, modify, translate, publish, publicly perform, publicly display and distribute such content."
              },
              {
                "date": "2026-10-08",
                "text": "Square's total liability is limited to the greater of the fees it earned from the developer's use in the preceding three months or 500 US dollars.",
                "quote": "THE TOTAL LIABILITY OF SQUARE IS LIMITED TO THE GREATER OF (A) THE AMOUNT OF FEES EARNED BY US IN CONNECTION WITH YOUR USE OF THE SERVICES DURING THE THREE (3) MONTH PERIOD IMMEDIATELY PRECEEDING THE EVENT GIVING RISE TO THE CLAIM FOR LIABILITY OR (B) $500."
              }
            ]
          },
          {
            "kind": "privacy",
            "url": "https://squareup.com/us/en/legal/general/privacy",
            "state": "read",
            "readAt": "2026-10-08",
            "statedDate": "2026-09-15",
            "words": 9443,
            "points": 9.3,
            "max": 10,
            "expected": [
              {
                "key": "privacy.date",
                "label": "Gives the date it was last updated",
                "found": true,
                "quote": "Last Updated: September 15, 2026",
                "says": "Last updated 2026-09-15"
              },
              {
                "key": "privacy.collected",
                "label": "Says what personal data is collected",
                "found": true,
                "quote": "We collect information about you in three ways: (i) when you provide it to us directly;"
              },
              {
                "key": "privacy.retention",
                "label": "Says how long data is kept",
                "found": true,
                "quote": "We store your information for as long as is necessary for the purposes identified in this Privacy Notice, including to provide our Services, to comply with legal obligations, to enforce and prevent violations of our Terms of Services, to protect against fraudulent activity, and to defend our legal rights, property and…",
                "says": "For as long as needed, with no period named"
              },
              {
                "key": "privacy.processors",
                "label": "Says who else receives the data",
                "found": true,
                "quote": "…\"log-in\" and \"log-out\" information, browser type and language, the domain name of your internet service provider, other attributes about your browser, any specific page you visit on our platform, content you view, features you use, the date and time of your use of the Services, your search terms, and the website you v…"
              },
              {
                "key": "privacy.sale",
                "label": "Says whether personal data is sold or shared for advertising",
                "found": true,
                "quote": "While we do not sell personal information as that term is commonly understood, we have, “sold or shared” over the last 12 months Usage Data for the purpose of interest-based advertising (or “targeted advertising”) as described below.",
                "says": "Says it does not sell personal data"
              },
              {
                "key": "privacy.rights",
                "label": "Says what rights people have over their data",
                "found": true,
                "quote": "You can exercise your right to opt-out of targeted advertising by clicking the \"Your Privacy Choices\" link in the footer of any page on our browser site, or by enabling the Global Privacy Control or a similar opt-out preference setting within the browser you use to access our website."
              },
              {
                "key": "privacy.contact",
                "label": "Gives a privacy contact",
                "found": false
              },
              {
                "key": "privacy.transfers",
                "label": "Says where data is transferred or stored",
                "found": true,
                "quote": "When we transfer your personal data to our affiliates and/or service providers outside the EU, we make use of standard contractual clauses (which have been approved by the European Commission) to help ensure your information is afforded a high standard of protection, and that your privacy rights can be vindicated.",
                "says": "Relies on standard contractual clauses"
              }
            ],
            "toKnow": [
              {
                "key": "privacy.sells",
                "label": "Says it sells personal data or shares it for advertising",
                "found": true,
                "quote": "These disclosures may qualify as “sales” or “sharing” of personal information as defined under CCPA."
              }
            ],
            "notes": [
              {
                "date": "2026-10-08",
                "text": "Square shares account holders' information with other Block business units and affiliates, naming Cash App, Afterpay/Clearpay and TIDAL.",
                "quote": "With other business units, such as Cash App, and affiliates, including Afterpay/Clearpay and TIDAL and between wholly-owned subsidiaries of Block, Inc., such as Square Financial Services, Inc."
              },
              {
                "date": "2026-10-08",
                "text": "In some circumstances Square processes personal information about a seller's customers on its own behalf as a controller, not only as the seller's processor.",
                "quote": "However, in other circumstances, we also obtain and process personal information from your customers on our own behalf as a “controller” or “business”."
              },
              {
                "date": "2026-10-08",
                "text": "Square may use aggregated and deidentified transaction data in economic indices, research reports and similar publications.",
                "quote": "We may also use aggregated and deidentified transaction data to create economic indices, research reports, and similar publications that do not identify individual customers or merchants."
              }
            ]
          }
        ]
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/square-appointments.json",
      "live": {
        "slug": "square-appointments",
        "probe": {
          "target": "https://connect.squareup.com/v2/bookings",
          "method": "get",
          "lastAt": "2026-10-14T09:42:08.775837061Z",
          "lastOk": true,
          "lastStatus": 401,
          "lastMs": 208,
          "lastNote": "asks for credentials",
          "authRequired": true,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 208,
          "p95ms24h": 362,
          "samples24h": 17,
          "samples30d": 17,
          "days": [
            {
              "date": "2026-10-14",
              "probes": 17,
              "ok": 17
            }
          ]
        },
        "vendorStatus": {
          "page": "https://www.issquareup.com",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-10-14T09:39:42.071528314Z"
        },
        "updatedAt": "2026-10-14T09:42:08.775837061Z"
      }
    },
    "verify": {
      "accepts": "a page on squareup.com or one of its subdomains, or the README of github.com/square/connect-api-specification",
      "badgeUrl": "https://www.anchorterminal.com/badges/square-appointments.svg",
      "body": {
        "slug": "square-appointments",
        "url": "the page with the badge or the link"
      },
      "docs": "https://www.anchorterminal.com/builders/#verify",
      "effect": "none, it never changes a grade, rank or review",
      "endpoint": "https://www.anchorterminal.com/api/v1/verify",
      "listingUrl": "https://www.anchorterminal.com/tools/square-appointments",
      "mcpTool": "verify_listing",
      "recheck": "weekly; two failed checks in a row and it lapses, a later pass restores it",
      "snippets": {
        "html": "\u003ca href=\"https://www.anchorterminal.com/tools/square-appointments\"\u003e\u003cimg src=\"https://www.anchorterminal.com/badges/square-appointments.svg\" alt=\"Square Appointments (Bookings API) on Anchor Terminal\" height=\"20\"\u003e\u003c/a\u003e",
        "markdown": "[![Square Appointments (Bookings API) on Anchor Terminal](https://www.anchorterminal.com/badges/square-appointments.svg)](https://www.anchorterminal.com/tools/square-appointments)",
        "link": "\u003ca href=\"https://www.anchorterminal.com/tools/square-appointments\"\u003eSquare Appointments (Bookings API) on Anchor Terminal\u003c/a\u003e"
      }
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/tools/square-appointments",
    "json": "https://www.anchorterminal.com/tools/square-appointments.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/tools/square-appointments.md",
    "slim": "https://www.anchorterminal.com/tools/square-appointments.min.md"
  },
  "markdown": "## Overview\n\n**Grade B · 68.1/100 · rank #242 of 1076 · #1 in Restaurant \u0026 local bookings · not agent-ready · confidence medium**\n\n\nMore from Block, Inc., listed separately because each is its own product: [Square](https://www.anchorterminal.com/tools/square.md) (Commerce \u0026 checkout).\n\n## Assessment\n\nThe Bookings API lets an agent working for a Square seller search availability and create, change and cancel appointments, with a public OpenAPI spec, appointment OAuth scopes and idempotency keys. It acts for the venue. Seller-level writes need Plus or Premium, services with a no-show fee can't be booked through it, and it hasn't changed since September 2024.\n\n## Facts\n\n| Field | Value |\n| --- | --- |\n| Vendor | Block, Inc. (https://squareup.com/us/en/appointments) |\n| Kind | HTTP API |\n| Category | Restaurant \u0026 local bookings (https://www.anchorterminal.com/categories/local-bookings) |\n| Transport | HTTP, Streamable HTTP, stdio |\n| Endpoint | `https://connect.squareup.com/v2/bookings` |\n| Auth | OAuth or key · Self-serve. A Square account and a Developer Console application. OAuth access tokens carry appointment scopes (`APPOINTMENTS_READ`, `APPOINTMENTS_WRITE`, `APPOINTMENTS_ALL_READ`, `APPOINTMENTS_ALL_WRITE`, `APPOINTMENTS_BUSINESS_SETTINGS_READ`), expire after 30 days and can be refreshed and revoked. Personal access tokens are unrestricted for the owner's account. Seller-level permissions see every booking. Buyer-level permissions see only the bookings the app created (https://developer.squareup.com/docs/bookings-api/what-it-is). |\n| Pricing | Freemium ($49 / mo) · The API carries no charge. Square Free is $0 a month per location, Plus $49 and Premium $149, and the comparison table lists the Bookings API under Plus and Premium. Seller-level create, update and cancel need Plus or Premium, while buyer-level bookings work on the free plan. Card processing fees apply to payments. The sandbox is free (https://squareup.com/us/en/appointments/pricing, checked 2026-10-14). |\n| x402 | No · No x402, MPP or L402 in developer.squareup.com/llms.txt or the OpenAPI spec (checked 2026-10-14). |\n| Licence | Proprietary service under the Square Developer Terms of Service. The OpenAPI specification and MCP server are Apache 2.0 |\n| Tools exposed | 3 |\n| Packages | npm: `square`; pypi: `squareup`; npm: `square-mcp-server` |\n| Source | https://github.com/square/connect-api-specification |\n| Docs | https://developer.squareup.com/docs/bookings-api/what-it-is |\n| llms.txt | https://developer.squareup.com/llms.txt |\n| Last release | 2026-09-16 |\n| Surface graded | The Bookings API and Booking Custom Attributes API at https://connect.squareup.com/v2/bookings, read from the guides, the OpenAPI spec and the pricing page on 14 October 2026 |\n| Acts for | The venue (a Square seller). Buyer-level permissions let an app book for the seller's customers, limited to bookings the app created |\n| Booking cycle | SearchAvailability, CreateBooking, UpdateBooking, CancelBooking, RetrieveBooking and ListBookings, plus location, team member and business booking profiles |\n| Plans | Seller-level writes need Appointments Plus or Premium. Buyer-level bookings and seller-level reads work on the free plan |\n| Deposits and fees | Services with a non-zero no-show fee can't be booked through the API. Segments of a booking with a paid deposit can't be updated |\n| Webhooks | booking.created and booking.updated. Buyer-level apps get events only for bookings they created |\n| Rate limits | No numbers published for REST. 429 `RATE_LIMITED`, with exponential backoff and jitter advised |\n| Capabilities | booking.appointments, booking.availability, booking.venue |\n| Tags | hosted, closed-source, rest, oauth, openapi, llms-txt, webhooks, sandbox, mcp, freemium, status-page, bug-bounty, venue-side |\n| JSON | https://www.anchorterminal.com/api/v1/tools/square-appointments.json |\n\n## Score breakdown (methodology v0.4, October 2026 research run)\n\nAssessed 2026-10-14 from public evidence against the published checklist (https://www.anchorterminal.com/benchmark/#checklist). Confidence: medium. Performance and Task success pending (no score, not in the total); the total is Σ(score × weight) ÷ 80 over the 7 assessed categories. \"This run\" is each category's share of the 100 points.\n\n| Category | Weight | This run | Score (0–100) | Points |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% | 20 | 55 | 11.0 |\n| Performance | 10% | pending | pending | n/a |\n| Schema \u0026 documentation | 13% | 16.2 | 89 | 14.5 |\n| Agent ergonomics | 13% | 16.2 | 80 | 13.0 |\n| Security \u0026 auth | 14% | 17.5 | 70 | 12.2 |\n| Payments \u0026 pricing | 10% | 12.5 | 40 | 5.0 |\n| Task success | 10% | pending | pending | n/a |\n| Maintenance \u0026 community | 7% | 8.8 | 71 | 6.2 |\n| Transparency \u0026 trust (editorial 56, provenance 84) | 7% | 8.8 | 70 | 6.1 |\n| Negative events | up to −15 | up to −15 | none recorded | 0 |\n| **Total** | | | | **68.1 → B** |\n\n### Why each score\n\n- Reliability 55: Graded on the hosted Bookings API, part of Square's REST API. Status page at issquareup.com with an incident history (20). In the 90 days to 14 October 2026 it lists 15 incidents, all labelled minor, including widespread elevated latency and errors across Square on 27 September that closed after 1 hour 47 minutes. None names Appointments or bookings (10). No numeric limits were found for the REST API (0). The docs describe 429 `RATE_LIMITED`, exponential backoff with jitter, and `idempotency_key` on CreateBooking, UpdateBooking and CancelBooking (15). No SLA found (0). All 24 Bookings and Booking Custom Attributes operations are marked PUBLIC in the 2026-09-16 spec. The MCP server is beta (10). Total 55.\n- Performance: Pending. Latency is measured per call by our probes, which haven't run yet, so this run doesn't score it. Its weight is shared across the assessed categories until the first probe window closes.\n- Schema \u0026 documentation 89: Public OpenAPI 3.0 spec in square/connect-api-specification covering all 24 booking operations (25). developer.squareup.com/llms.txt indexes the docs, and guide pages answer in Markdown with `.md` (10). Operation descriptions state purpose, and the guides explain seller-level and buyer-level access and what fails without a paid plan (15). Booking request schemas are typed with required fields and enums for status and location type (13). Guides carry request and response examples and the 403 body returned when a seller's plan doesn't allow writes. Errors share Square's category, code and detail format (11). Dated API versions set by `Square-Version` and monthly release notes (15). Total 89.\n- Agent ergonomics 80: ListBookings takes `limit` and a cursor, and SearchAvailability takes a time range and segment filters. No field selection outside GraphQL (18). Cursor pagination, filters by location, team member and customer, and bulk retrieve (18). Errors carry a category, a code and the field at fault (18). `idempotency_key` on create, update and cancel, and `booking_version` for optimistic locking. The MCP tools carry no readOnlyHint or destructiveHint annotations (15). Seven official SDKs. A booking needs the location, a bookable team member, a service variation ID and version and a customer, each fetched from another API first (11). Total 80.\n- Security \u0026 auth 70: OAuth with read and write scopes for appointments (`APPOINTMENTS_READ`, `APPOINTMENTS_WRITE`, `APPOINTMENTS_ALL_READ`, `APPOINTMENTS_ALL_WRITE`, `APPOINTMENTS_BUSINESS_SETTINGS_READ`), 30-day access tokens, refresh and revocation. Personal access tokens are unrestricted (26). Buyer-level permissions confine an app to the bookings it created, and read scopes exist. No confirmation step for cancellation (15). Booking notes and customer notes are free text. No prompt-injection guidance found (3). API Logs keep each request for 28 days (12). Bugcrowd programme linked from the security page, ISO 27001 and PCI stated, no security.txt (14). Total 70.\n- Payments \u0026 pricing 40: No x402, MPP or L402 (0). Prices are public without login. Square Free is $0 a month per location, Plus $49 and Premium $149, and the comparison table lists the Bookings API under Plus and Premium (20). The sandbox is free, and buyer-level bookings work on the free Appointments plan (20). A person creates a Square account and a Developer Console application, or approves OAuth in a browser (0). Total 40.\n- Task success: Pending. Task success needs the category task suites run through each tool, which haven't run yet, so this run doesn't score it. Its weight is shared across the assessed categories until then. A data provider's data-quality score is published on its listing now and becomes half of this category when it's scored.\n- Maintenance \u0026 community 71: Square released API version 2026-09-16 on 16 September 2026, and the Bookings API is served under it. The changelog index shows no Bookings change since 19 September 2024 (customer address on bookings), so we depart from the 30 for a release within 30 days and give 20. Three dated Square releases in 90 days, 15 July, 19 August and 16 September 2026 (20). Release notes, a developer forum and a Discord community (10). Seven official SDKs regenerated for 2026-09-16, and the MCP server includes `bookings` and `bookingcustomattributes` services, though it is not in the official MCP registry (15). The npm package square-mcp-server is still 0.1.2 from April 2025 (6). Total 71.\n- Transparency \u0026 trust 70: Closed service under the Square Developer Terms (updated 10 September 2026). The API spec and MCP server are Apache 2.0 (15). The privacy notice of 15 September 2026 gives no retention periods, and no public DPA was found (13). APIs are typically retired at least 12 months after deprecation, with dated notices (20). Service providers by category, processing in the US, Japan, the UK and the EU, no named list (8). Total 56, matching the Square listing, which shares these documents.\n\nFix list for a coding agent, everything this grade says the listing lacks, the biggest gain first (15 items): https://www.anchorterminal.com/fixes/square-appointments.md (JSON https://www.anchorterminal.com/fixes/square-appointments.json)\n\n### What we couldn't check\n\n- The pricing table lists the Bookings API under Plus and Premium only, while the developer docs say buyer-level access works for every seller, including the free plan. Both are recorded\n- No numeric REST rate limits and no SLA were found in the reviewed documentation\n- unchecked: the remote MCP server's live tool list, which needs OAuth. The bookings service is read from the open-source server\n- unchecked: the trial length for Plus and Premium, which the pricing page renders with JavaScript\n- Square is listed separately as `square` in commerce. This listing covers only the Bookings API and Square Appointments\n\n### Sources\n\n- Bookings API overview: \u003chttps://developer.squareup.com/docs/bookings-api/what-it-is.md\u003e (seen 2026-10-14)\n- Bookings concepts: \u003chttps://developer.squareup.com/docs/bookings-api/get-ready-to-use-the-api.md\u003e (seen 2026-10-14)\n- onboarding to Appointments: \u003chttps://developer.squareup.com/docs/bookings-api/onboard-to-the-api.md\u003e (seen 2026-10-14)\n- create and manage bookings: \u003chttps://developer.squareup.com/docs/bookings-api/use-the-api.md\u003e (seen 2026-10-14)\n- bookings webhooks: \u003chttps://developer.squareup.com/docs/bookings-api/use-webhooks.md\u003e (seen 2026-10-14)\n- OpenAPI spec: \u003chttps://raw.githubusercontent.com/square/connect-api-specification/master/api.json\u003e (seen 2026-10-14)\n- llms.txt: \u003chttps://developer.squareup.com/llms.txt\u003e (seen 2026-10-14)\n- release notes index: \u003chttps://developer.squareup.com/docs/changelog/connect\u003e (seen 2026-10-14)\n- release 2024-09-19: \u003chttps://developer.squareup.com/docs/changelog/connect-logs/2024-09-19\u003e (seen 2026-10-14)\n- status incidents: \u003chttps://www.issquareup.com/api/v2/incidents.json\u003e (seen 2026-10-14)\n- Appointments pricing: \u003chttps://squareup.com/us/en/appointments/pricing\u003e (seen 2026-10-14)\n- MCP server source: \u003chttps://github.com/square/square-mcp-server\u003e (seen 2026-10-14)\n- developer terms: \u003chttps://squareup.com/us/en/legal/general/developers\u003e (seen 2026-10-14)\n- privacy notice: \u003chttps://squareup.com/us/en/legal/general/privacy\u003e (seen 2026-10-14)\n\n## Who's behind it (provenance 84/100, checked 2026-10-14)\n\n| Check | Finding | Points |\n| --- | --- | --- |\n| Legal entity named | Block, Inc. | 20/20 |\n| Domain age | squareup.com, registered 2007-05-26 (19 years) | 15/15 |\n| Endpoint on the vendor's domain | connect.squareup.com | 15/15 |\n| Terms of service | read, states 6 of the 7 things a reader expects, and has 2 clauses that cost points | 5.1/10 |\n| Privacy policy | read, states 7 of the 8 things a reader expects | 9.3/10 |\n| Status page | www.issquareup.com | 10/10 |\n| Changelog | published | 10/10 |\n| security.txt | not found | 0/10 |\n\nThe Square Developer Terms (updated 10 September 2026) are an agreement with Block, Inc. and govern the APIs, as recorded for the Square listing on 8 October 2026.\n\nThe privacy notice (updated 15 September 2026) names Block, Inc., 1955 Broadway, Suite 600, Oakland, CA 94612 for US sellers.\n\nsquareup.com/.well-known/security.txt returned 404 on 8 October 2026, and developer.squareup.com disallows /.well-known/ in robots.txt.\n\nRDAP gives a registration date of 2007-05-26 for squareup.com.\n\n### Terms and privacy, as read\n\nA reading by a fixed set of rules, each answered with the vendor's own sentence. Not legal advice.\n\n**Terms of service** (https://squareup.com/us/en/legal/general/developers), read 2026-10-08, dated 2026-09-10, states 6 of the 7 things a reader expects.\n\n- To know. Restricts automated access (costs points). \"scrape, access, download, store, build databases or otherwise create permanent copies of any Square Seller’s Content, including Content related to or provided by any customer of any Square Seller;\"\n- To know. Restricts benchmarking or competitive use (costs points). \"create a service that functions substantially the same as the Developer Tools or any Square service;\"\n- To know. Says access can be ended without notice or for any reason. \"We may terminate these Developer Terms, suspend or terminate your Square account at any time for any reason, including, but not limited to, where Your Service allows Square Sellers to migrate from Square to a third party service or platform.\"\n- To know. Requires arbitration or waives class actions. \"YOU WAIVE ANY RIGHT TO HAVE YOUR CASE DECIDED BY A JURY AND YOU WAIVE ANY RIGHT TO PARTICIPATE IN A CLASS ACTION AGAINST SQUARE.\"\n- Gives the date it was last updated. Last updated 2026-09-10.\n- Names the governing law or courts. The law of California.\n- States a limit on its liability. Capped at $500.\n- Says how changes to the terms are announced. Says it gives notice of a change.\n- Not found in the text. Refers to a service level or uptime commitment.\n- Also in the text (2026-10-08). Developers may not use Content or other data received from Square to train or enhance any AI System, whether or not the data is anonymised. \"use any Content or other data received from Square (anonymized or not) to train or otherwise enhance any “AI System” (as defined in Section 7).\"\n- Also in the text (2026-10-08). Content submitted through the Developer Tools is licensed to Square on a perpetual and irrevocable basis. \"you give Square a perpetual, irrevocable, worldwide, royalty-free, and non-exclusive license to reproduce, adapt, modify, translate, publish, publicly perform, publicly display and distribute such content.\"\n- Also in the text (2026-10-08). Square's total liability is limited to the greater of the fees it earned from the developer's use in the preceding three months or 500 US dollars. \"THE TOTAL LIABILITY OF SQUARE IS LIMITED TO THE GREATER OF (A) THE AMOUNT OF FEES EARNED BY US IN CONNECTION WITH YOUR USE OF THE SERVICES DURING THE THREE (3) MONTH PERIOD IMMEDIATELY PRECEEDING THE EVENT GIVING RISE TO THE CLAIM FOR LIABILITY OR (B) $500.\"\n\n**Privacy policy** (https://squareup.com/us/en/legal/general/privacy), read 2026-10-08, dated 2026-09-15, states 7 of the 8 things a reader expects.\n\n- To know. Says it sells personal data or shares it for advertising. \"These disclosures may qualify as “sales” or “sharing” of personal information as defined under CCPA.\"\n- Gives the date it was last updated. Last updated 2026-09-15.\n- Says how long data is kept. For as long as needed, with no period named.\n- Says whether personal data is sold or shared for advertising. Says it does not sell personal data.\n- Not found in the text. Gives a privacy contact.\n- Says where data is transferred or stored. Relies on standard contractual clauses.\n- Also in the text (2026-10-08). Square shares account holders' information with other Block business units and affiliates, naming Cash App, Afterpay/Clearpay and TIDAL. \"With other business units, such as Cash App, and affiliates, including Afterpay/Clearpay and TIDAL and between wholly-owned subsidiaries of Block, Inc., such as Square Financial Services, Inc.\"\n- Also in the text (2026-10-08). In some circumstances Square processes personal information about a seller's customers on its own behalf as a controller, not only as the seller's processor. \"However, in other circumstances, we also obtain and process personal information from your customers on our own behalf as a “controller” or “business”.\"\n- Also in the text (2026-10-08). Square may use aggregated and deidentified transaction data in economic indices, research reports and similar publications. \"We may also use aggregated and deidentified transaction data to create economic indices, research reports, and similar publications that do not identify individual customers or merchants.\"\n\n## Live (updated 2026-10-14 09:42 UTC)\n\n- Right now: up, HTTP 401, 208 ms, checked 2026-10-14 09:42 UTC (get on `https://connect.squareup.com/v2/bookings`, asks for auth)\n- Uptime 24h 100.0% (17 probes) · 30 days 100.0% (17 probes) · p50 208 ms · p95 362 ms\n- Vendor status page: none, All Systems Operational\n- Always current: https://www.anchorterminal.com/api/v1/live/square-appointments.json\n\n## Probe metrics\n\nNot measured yet. Our benchmark probes haven't run, so there's no availability, latency or error rate from a run and Performance is pending. Live uptime, where we poll the endpoint, is under Live and doesn't change the score.\n\n## Prices\n\n| Item | Price | Unit | Note |\n| --- | --- | --- | --- |\n| Square Free | free | per month (plan) | per location, buyer-level bookings only |\n| Square Plus | $49 | per month (plan) | per location, Bookings API seller-level writes |\n| Square Premium | $149 | per month (plan) | per location |\n\nAcross all listings: https://www.anchorterminal.com/prices/index.md\n\n## Strengths\n\n- Availability search, create, update and cancel are separate documented operations, all generally available\n- Five appointment OAuth scopes separate reading, writing and business settings\n- `idempotency_key` on create, update and cancel, and `booking_version` for optimistic locking\n- Buyer-level permissions work on the free Appointments plan and limit an app to its own bookings\n- Free sandbox, and Square's MCP server includes the bookings service\n\n## Weaknesses\n\n- Seller-level create, update and cancel fail with 403 unless the seller pays for Plus ($49) or Premium ($149) per location\n- Services with a non-zero no-show fee cannot be booked through the API, and the fee can't be set through it\n- No Bookings API change in the changelog since 19 September 2024\n- No numeric REST rate limits or SLA were found\n- Bookable team members can only be set in the Square Dashboard\n\n## Before you call it (notes for agents)\n\n1. Act for the seller. This API books into one Square seller's calendar, not across businesses\n2. Call RetrieveBusinessBookingProfile and check `support_seller_level_writes` before trying to create or cancel a seller-level booking\n3. Call SearchAvailability first, then CreateBooking with the service variation ID and version, team member, location and customer\n4. Send a fresh `idempotency_key` on each create, update or cancel, and pass `booking_version` when cancelling\n5. Check `no_show_fee` on the service. A service with a non-zero fee must be booked by the customer elsewhere\n\n## Connect\n\nInstall:\n\n```bash\nnpx square-mcp-server start\n```\n\nFirst request:\n\n```bash\ncurl https://connect.squareupsandbox.com/v2/bookings/availability/search \\\n  -X POST \\\n  -H 'Square-Version: 2026-09-16' \\\n  -H 'Authorization: Bearer {SANDBOX_ACCESS_TOKEN}' \\\n  -H 'Content-Type: application/json' \\\n  -d '{\"query\": {\"filter\": {\"start_at_range\": {\"start_at\": \"2026-10-20T09:00:00Z\", \"end_at\": \"2026-10-21T09:00:00Z\"}, \"location_id\": \"{LOCATION_ID}\"}}}'\n```\n\nThrough letme (picks today, calling later): https://letme.dev/square-appointments (letme picks it for booking.appointments, the top-graded tool for the job, letme picks it for booking.availability, the top-graded tool for the job, letme picks it for booking.venue, the top-graded tool for the job). letme answers with the pick and how to call it direct; calling through letme (one key, the vendor's own price) comes later. How it works: https://www.anchorterminal.com/letme/index.md\n\n## Similar tools\n\nRanked by shared capabilities, then score. Same-category tools with no shared capability key are listed last.\n\n| Tool | Grade | Score | Rank | Shared capabilities | x402 | Markdown |\n| --- | --- | --- | --- | --- | --- | --- |\n| TableCheck API | C | 57.1 | 661 | booking.availability, booking.venue | no | https://www.anchorterminal.com/tools/tablecheck.md |\n| Eat App Partner API | D | 53.4 | 752 | booking.availability, booking.venue | no | https://www.anchorterminal.com/tools/eat-app.md |\n| TheFork B2B API | E | 43.6 | 951 | booking.availability, booking.venue | no | https://www.anchorterminal.com/tools/thefork.md |\n| OpenTable APIs | E | 38.6 | 994 | booking.availability, booking.venue | no | https://www.anchorterminal.com/tools/opentable.md |\n| SevenRooms | F | 17.7 | 1043 | booking.venue, booking.availability | no | https://www.anchorterminal.com/tools/sevenrooms.md |\n| Resy | F | 10.3 | 1068 | booking.availability, booking.venue | no | https://www.anchorterminal.com/tools/resy.md |\n\n## Panel reviews (0)\n\nReviewed by the Anchor panel (https://www.anchorterminal.com/reviewers/index.md): .\n\nDesk reviews, written from public documentation, pricing, terms, source and status history on 1 October 2026. No calls made. For a desk review, the outcome says whether the reviewer's questions could be answered from public material: success, partial or failure. How reviews work: https://www.anchorterminal.com/reviews/how-it-works.md\n\n## Notable\n\n- 24 operations under /v2/bookings in the 2026-09-16 spec, all marked PUBLIC, including SearchAvailability, CreateBooking, UpdateBooking and CancelBooking (source: \u003chttps://github.com/square/connect-api-specification\u003e)\n- Seller-level writes fail with 403 \"Merchant subscription does not support write operations\" unless the seller has Appointments Plus or Premium (source: \u003chttps://developer.squareup.com/docs/bookings-api/what-it-is\u003e)\n- A service with a non-zero `no_show_fee` cannot be booked through the Bookings API, and the fee can only be set in the Square Dashboard (source: \u003chttps://developer.squareup.com/docs/bookings-api/use-the-api\u003e)\n- Once a deposit has been paid, a booking's appointment segments cannot be updated (source: \u003chttps://developer.squareup.com/docs/bookings-api/use-the-api\u003e)\n- The last Bookings API change in the release notes is 19 September 2024, which added a customer address for bookings at the customer's location (source: \u003chttps://developer.squareup.com/docs/changelog/connect-logs/2024-09-19\u003e)\n- Square's open-source MCP server includes `bookings` and `bookingcustomattributes` among its services (source: \u003chttps://github.com/square/square-mcp-server\u003e)\n\n- #1 of 9 in Best restaurant reservation and local appointment APIs for AI agents: https://www.anchorterminal.com/best/local-bookings/index.md\n- All 36 bookings comparisons: https://www.anchorterminal.com/compare/local-bookings/index.md\n\n## Compare\n\n- [Chope vs Square Appointments (Bookings API)](https://www.anchorterminal.com/compare/chope-vs-square-appointments.md): F 13.3 vs B 68.1\n- [Eat App Partner API vs Square Appointments (Bookings API)](https://www.anchorterminal.com/compare/eat-app-vs-square-appointments.md): D 53.4 vs B 68.1\n- [OpenTable APIs vs Square Appointments (Bookings API)](https://www.anchorterminal.com/compare/opentable-vs-square-appointments.md): E 38.6 vs B 68.1\n- [Resy vs Square Appointments (Bookings API)](https://www.anchorterminal.com/compare/resy-vs-square-appointments.md): F 10.3 vs B 68.1\n- [Square Appointments (Bookings API) vs TableCheck API](https://www.anchorterminal.com/compare/square-appointments-vs-tablecheck.md): B 68.1 vs C 57.1\n- [Square Appointments (Bookings API) vs TheFork B2B API](https://www.anchorterminal.com/compare/square-appointments-vs-thefork.md): B 68.1 vs E 43.6\n- [SevenRooms vs Square Appointments (Bookings API)](https://www.anchorterminal.com/compare/sevenrooms-vs-square-appointments.md): F 17.7 vs B 68.1\n- [Square Appointments (Bookings API) vs Tock](https://www.anchorterminal.com/compare/square-appointments-vs-tock.md): B 68.1 vs F 12.4\n\n## Verify this listing\n\nFor the vendor. The badge or a plain link to this page verifies the listing, from a page on squareup.com or one of its subdomains, or the README of github.com/square/connect-api-specification. It shows the listing is the vendor's and that the vendor knows it's here, and it never changes a grade, rank or review. The vendor sends the page's address to `POST https://www.anchorterminal.com/api/v1/verify` as `{\"slug\": \"square-appointments\", \"url\": \"…\"}`, or calls the `verify_listing` tool at https://www.anchorterminal.com/mcp. We fetch the page once, then again every week; two failed checks in a row and the verification lapses, and a later pass restores it. What we check: https://www.anchorterminal.com/builders/index.md#verify\n\nHTML badge:\n\n```html\n\u003ca href=\"https://www.anchorterminal.com/tools/square-appointments\"\u003e\u003cimg src=\"https://www.anchorterminal.com/badges/square-appointments.svg\" alt=\"Square Appointments (Bookings API) on Anchor Terminal\" height=\"20\"\u003e\u003c/a\u003e\n```\n\nMarkdown badge, for a README:\n\n```markdown\n[![Square Appointments (Bookings API) on Anchor Terminal](https://www.anchorterminal.com/badges/square-appointments.svg)](https://www.anchorterminal.com/tools/square-appointments)\n```\n\nPlain link:\n\n```html\n\u003ca href=\"https://www.anchorterminal.com/tools/square-appointments\"\u003eSquare Appointments (Bookings API) on Anchor Terminal\u003c/a\u003e\n```\n\n## Share this listing\n\nFor the vendor. Sharing assets for social media, two PNGs of 1200 × 630 that say Square Appointments (Bookings API) is listed on Anchor Terminal, with the vendor's logo and this page's address and no grade or score.\n\n- Dark: https://www.anchorterminal.com/assets/share/square-appointments-dark.png\n- Light: https://www.anchorterminal.com/assets/share/square-appointments-light.png\n- Create a video and download its frames: https://www.anchorterminal.com/assets/listing-video/index.html?listing=square-appointments\n",
  "meta": {
    "attribution": "Anchor Terminal (https://www.anchorterminal.com)",
    "docs": "https://www.anchorterminal.com/docs/",
    "generatedAt": "2026-10-14",
    "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": "Terminal",
        "url": "https://www.anchorterminal.com/tools/"
      },
      {
        "name": "Restaurant \u0026 local bookings",
        "url": "https://www.anchorterminal.com/categories/local-bookings"
      },
      {
        "name": "Square Appointments (Bookings API)",
        "url": ""
      }
    ],
    "description": "Square Appointments is Block's booking product for service businesses. Its Bookings API searches a seller's availability and creates, updates and cancels appointments, with location, team member and business booking profiles and custom attributes.",
    "facts": [
      "rank #242 of 1076",
      "OAuth or key auth",
      "0 desk reviews"
    ],
    "h1": "Square Appointments (Bookings API)",
    "image": "https://www.anchorterminal.com/assets/og/tools-square-appointments.png",
    "path": "/tools/square-appointments",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Square Appointments review (2026): pricing, alternatives and grade B",
    "toc": null,
    "updated": "2026-10-14",
    "url": "https://www.anchorterminal.com/tools/square-appointments"
  },
  "tokens": {
    "markdown": 7000,
    "slim": 1530
  },
  "version": 1
}
