{
  "data": {
    "a": {
      "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"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-14"
        },
        "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"
      ],
      "area": "everyday",
      "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
      },
      "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"
      }
    },
    "answer": "Square Appointments (Bookings API) scores 68.1 (B) on agent readiness against TableCheck API's 57.1 (C), and leads in 6 of 7 scored categories. TableCheck API leads on reliability.",
    "b": {
      "slug": "tablecheck",
      "name": "TableCheck API",
      "vendor": "TableCheck Inc.",
      "vendorUrl": "https://www.tablecheck.com",
      "kind": "http-api",
      "category": "local-bookings",
      "summary": "TableCheck is a restaurant reservation and guest management platform used mainly in Japan and Asia. Its API components cover availability, booking, CRM, POS and distribution to booking sites, with an MCP server for merchants.",
      "url": "https://www.anchorterminal.com/tools/tablecheck",
      "markdownUrl": "https://www.anchorterminal.com/tools/tablecheck.md",
      "slimMarkdownUrl": "https://www.anchorterminal.com/tools/tablecheck.min.md",
      "jsonUrl": "https://www.anchorterminal.com/api/v1/tools/tablecheck.json",
      "license": "Proprietary service under the TableCheck API Terms of Service",
      "transports": [
        "http",
        "streamable-http"
      ],
      "remoteUrl": "https://api.tablecheck.com/api/",
      "packages": [],
      "auth": "api-key",
      "authNotes": "Sales-led. Email api@tablecheck.com, complete the API Portal questionnaire and accept the API terms. Each approved request gets one `secret_key` per environment in the `Authorization` header, limited to the approved components and, for aggregators, approved venues. The API team rolls keys on request. The MCP server needs the `mcp_merchant` component added to a key (https://tablecheck.atlassian.net/wiki/spaces/API/pages/44630975).",
      "pricing": "paid",
      "pricingNotes": "No public price. The access page says \"Fees may vary\" and pricing is given during the application. No free tier. Test accounts and test data are prepared on request (https://tablecheck.atlassian.net/wiki/spaces/API/pages/43909423, checked 2026-10-14).",
      "priceSummary": "Paid",
      "where": "hosted",
      "x402": {
        "level": "no",
        "evidence": "No x402, MPP or L402 in the API documentation or the OpenAPI files read (checked 2026-10-14).",
        "endpoints": []
      },
      "toolCount": 20,
      "popularity": {
        "githubStars": null,
        "npmWeekly": null,
        "pypiWeekly": null,
        "asOf": "2026-10-14"
      },
      "docsUrl": "https://tablecheck.atlassian.net/wiki/spaces/API/overview",
      "openapi": "https://api.tablecheck.com/api/booking/v1/docs",
      "capabilities": [
        "booking.availability",
        "booking.reservations",
        "booking.venue",
        "booking.orders"
      ],
      "tags": [
        "hosted",
        "closed-source",
        "rest",
        "openapi",
        "mcp",
        "sales-led",
        "status-page",
        "diner-side",
        "venue-side"
      ],
      "graded": true,
      "anchor": {
        "graded": true,
        "score": 57.1,
        "grade": "C",
        "agentReady": false,
        "rank": 661,
        "ranked": true,
        "rankOf": 1076,
        "categoryRank": 2,
        "methodology": "0.4",
        "run": "2026-10-01",
        "scores": {
          "ergonomics": 72,
          "maintenance": 35,
          "payments": 0,
          "reliability": 80,
          "schema": 77,
          "security": 46,
          "transparency": 66
        },
        "pending": [
          "performance",
          "tasks"
        ],
        "assessment": {
          "confidence": "medium",
          "date": "2026-10-14"
        },
        "negative": 0,
        "verdict": "TableCheck publishes OpenAPI specs for availability, booking, CRM and POS components and a merchant MCP server with read-only keys, idempotent writes and personal data hidden by default. Access is by email application with case-by-case approval and unpublished fees, the MCP server is still under development, and no audit log or dated changelog was found.",
        "bestFor": "Restaurants and groups in Japan and Asia on TableCheck, and booking or concierge platforms wanting their inventory.",
        "strengths": [
          "OpenAPI 3.0 YAML served for each component, with a written change and deprecation policy",
          "Separate APIs for diner-side platforms (Availability, Distribution, Web Booking) and venue-side systems (Booking, CRM, POS)",
          "MCP for Merchants hides guest names, phones and emails unless asked and supports read-only keys",
          "MCP write tools take an idempotency key and are annotated destructive",
          "Rate limit stated as 10,000 requests per 5 minutes per component"
        ],
        "weaknesses": [
          "Access needs an emailed application, case-by-case approval and fees quoted privately",
          "MCP for Merchants is under development and its tools may change without a version bump",
          "REST POST /reservations has no idempotency key",
          "Keys are issued and rolled only by the API team, with no audit log found",
          "Booking v1 needs per-venue approval for aggregators, and only a production environment exists by default"
        ],
        "agentNotes": [
          "Decide which side you act for. Distribution and Web Booking serve diner-facing platforms, while Booking, CRM, POS and the MCP serve the venue",
          "Ask the operator for a read-only key before using the MCP, as TableCheck recommends, and avoid cancellations through it",
          "Call `hold_table` (MCP) or POST /blockages (REST) before booking, since availability is a snapshot and a blockage expires in 5 minutes",
          "Send dates as YYYY-MM-DD and convert the UTC times returned to the venue's time zone from `list_shops`",
          "Stay under 10,000 requests per 5 minutes per component and wait for the next window after a 429"
        ],
        "metrics": {
          "kind": "remote",
          "measured": false
        },
        "reviewCount": 0,
        "avgRating": 0,
        "history": [
          {
            "basis": "public evidence",
            "confidence": "medium",
            "grade": "C",
            "methodology": "0.4",
            "pending": [
              "performance",
              "tasks"
            ],
            "run": "2026-10-01",
            "runLabel": "October 2026 research run",
            "score": 57.1
          }
        ],
        "editorialScores": {
          "ergonomics": 72,
          "maintenance": 35,
          "payments": 0,
          "reliability": 80,
          "schema": 77,
          "security": 46,
          "transparency": 45
        },
        "provenanceScore": 86
      },
      "connect": {
        "claudeCode": "claude mcp add --transport http tablecheck \\\n  https://api.staging-qa.tablecheck.com/api/mcp_merchant/v1 \\\n  --header \"Authorization: Bearer $TABLECHECK_API_KEY\"",
        "config": {
          "mcpServers": {
            "tablecheck": {
              "headers": {
                "Authorization": "Bearer ${TABLECHECK_API_KEY}"
              },
              "type": "http",
              "url": "https://api.staging-qa.tablecheck.com/api/mcp_merchant/v1"
            }
          }
        }
      },
      "letme": {
        "capability": "https://letme.dev/booking.availability",
        "tool": "https://letme.dev/tablecheck"
      },
      "area": "everyday",
      "provenance": {
        "legalEntity": "TableCheck Inc.",
        "domain": "tablecheck.com",
        "domainRegistered": "1998-07-01",
        "endpointOnVendorDomain": true,
        "terms": "https://tablecheck.atlassian.net/wiki/spaces/API/pages/61571353/TableCheck+API+Terms+of+Service",
        "privacy": "https://www.tablecheck.com/en/policy/privacy",
        "statusPage": "https://tablecheck.statuspage.io",
        "changelog": "https://tablecheck.atlassian.net/wiki/spaces/API/pages/2603253889",
        "securityTxt": "none",
        "checked": "2026-10-14",
        "notes": [
          "The API Terms of Service (enacted 10 December 2018) are with TableCheck, Inc. outside Mainland China and its designated entity inside it.",
          "The privacy policy (revised 14 September 2026) names TableCheck Inc., KR Ginza II 5F, 2-15-2 Ginza, Chuo-ku, Tokyo.",
          "The API documentation is hosted on tablecheck.atlassian.net. api.tablecheck.com redirects there.",
          "www.tablecheck.com/.well-known/security.txt returns an HTML page, read as no security.txt.",
          "RDAP gives a registration date of 1998-07-01 for tablecheck.com."
        ],
        "score": 86
      },
      "pageJsonUrl": "https://www.anchorterminal.com/tools/tablecheck.json",
      "live": {
        "slug": "tablecheck",
        "probe": {
          "target": "https://api.tablecheck.com/api/",
          "method": "get",
          "lastAt": "2026-10-14T09:42:09.492395571Z",
          "lastOk": true,
          "lastStatus": 200,
          "lastMs": 717,
          "authRequired": false,
          "uptime24h": 100,
          "uptime30d": 100,
          "p50ms24h": 711,
          "p95ms24h": 871,
          "samples24h": 17,
          "samples30d": 17,
          "days": [
            {
              "date": "2026-10-14",
              "probes": 17,
              "ok": 17
            }
          ]
        },
        "vendorStatus": {
          "page": "https://tablecheck.statuspage.io",
          "indicator": "none",
          "summary": "All Systems Operational",
          "checkedAt": "2026-10-14T09:39:43.550229393Z"
        },
        "updatedAt": "2026-10-14T09:42:09.492395571Z"
      }
    },
    "facts": [
      {
        "a": "HTTP API",
        "b": "HTTP API",
        "name": "Kind"
      },
      {
        "a": "Block, Inc.",
        "b": "TableCheck Inc.",
        "name": "Vendor"
      },
      {
        "a": "https://connect.squareup.com/v2/bookings",
        "b": "https://api.tablecheck.com/api/",
        "name": "Hosted endpoint"
      },
      {
        "a": "HTTP, Streamable HTTP, stdio",
        "b": "HTTP, Streamable HTTP",
        "name": "Transports"
      },
      {
        "a": "OAuth or key",
        "b": "API key",
        "name": "Auth"
      },
      {
        "a": "Freemium",
        "b": "Paid",
        "name": "Pricing"
      },
      {
        "a": "no",
        "b": "no",
        "name": "x402"
      },
      {
        "a": "Proprietary service under the Square Developer Terms of Service. The OpenAPI specification and MCP server are Apache 2.0",
        "b": "Proprietary service under the TableCheck API Terms of Service",
        "name": "Licence"
      },
      {
        "a": "3",
        "b": "20",
        "name": "Tools exposed"
      },
      {
        "a": "no",
        "b": "yes",
        "name": "Read-only variant documented"
      },
      {
        "a": "yes",
        "b": "no",
        "name": "llms.txt"
      },
      {
        "a": "2026-09-16",
        "b": "none",
        "name": "Last release"
      },
      {
        "a": "2026-09-10",
        "b": "2022-10-11",
        "name": "Terms last updated"
      },
      {
        "a": "2026-09-15",
        "b": "2016-12-14",
        "name": "Privacy policy last updated"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Customer content may train models"
      },
      {
        "a": "yes",
        "b": "not found in the text",
        "name": "Terms restrict automated access"
      },
      {
        "a": "yes",
        "b": "yes",
        "name": "Terms restrict benchmarking"
      },
      {
        "a": "not found in the text",
        "b": "not found in the text",
        "name": "Terms or service can change without notice"
      },
      {
        "a": "yes",
        "b": "not found in the text",
        "name": "Arbitration or class-action waiver"
      }
    ],
    "faq": [
      {
        "answer": "Square Appointments (Bookings API) scores 68.1 (B) on agent readiness against TableCheck API's 57.1 (C), and leads in 6 of 7 scored categories. TableCheck API leads on reliability.",
        "question": "Which is better for AI agents, Square Appointments (Bookings API) or TableCheck API?"
      },
      {
        "answer": "Square Appointments (Bookings API) takes an API key or an OAuth sign-in. TableCheck API needs an API key.",
        "question": "Do Square Appointments (Bookings API) and TableCheck API need an API key?"
      },
      {
        "answer": "Yes. Square Appointments (Bookings API) has a hosted endpoint at https://connect.squareup.com/v2/bookings and TableCheck API at https://api.tablecheck.com/api/.",
        "question": "Can an agent call Square Appointments (Bookings API) and TableCheck API without installing anything?"
      }
    ],
    "goodFor": [
      {
        "aheadOn": [
          "Schema \u0026 documentation, 89 against 77",
          "Agent ergonomics, 80 against 72",
          "Security \u0026 auth, 70 against 46",
          "Payments \u0026 pricing, 40 against 0",
          "Maintenance \u0026 community, 71 against 35"
        ],
        "also": [
          "Runs on your own machine"
        ],
        "goodFor": "Venue-side appointment booking for salons, clinics and other service businesses already on Square.",
        "slug": "square-appointments",
        "watchFor": "Seller-level create, update and cancel fail with 403 unless the seller pays for Plus ($49) or Premium ($149) per location"
      },
      {
        "aheadOn": [
          "Reliability, 80 against 55"
        ],
        "also": null,
        "goodFor": "Restaurants and groups in Japan and Asia on TableCheck, and booking or concierge platforms wanting their inventory.",
        "slug": "tablecheck",
        "watchFor": "Access needs an emailed application, case-by-case approval and fees quoted privately"
      }
    ],
    "job": {
      "capability": "booking.availability",
      "name": "Booking availability"
    },
    "others": [
      {
        "json": "https://www.anchorterminal.com/compare/chope-vs-tablecheck.json",
        "title": "Chope vs TableCheck API",
        "url": "https://www.anchorterminal.com/compare/chope-vs-tablecheck"
      },
      {
        "json": "https://www.anchorterminal.com/compare/eat-app-vs-tablecheck.json",
        "title": "Eat App Partner API vs TableCheck API",
        "url": "https://www.anchorterminal.com/compare/eat-app-vs-tablecheck"
      },
      {
        "json": "https://www.anchorterminal.com/compare/resy-vs-tablecheck.json",
        "title": "Resy vs TableCheck API",
        "url": "https://www.anchorterminal.com/compare/resy-vs-tablecheck"
      },
      {
        "json": "https://www.anchorterminal.com/compare/tablecheck-vs-tock.json",
        "title": "TableCheck API vs Tock",
        "url": "https://www.anchorterminal.com/compare/tablecheck-vs-tock"
      },
      {
        "json": "https://www.anchorterminal.com/compare/chope-vs-square-appointments.json",
        "title": "Chope vs Square Appointments (Bookings API)",
        "url": "https://www.anchorterminal.com/compare/chope-vs-square-appointments"
      },
      {
        "json": "https://www.anchorterminal.com/compare/eat-app-vs-square-appointments.json",
        "title": "Eat App Partner API vs Square Appointments (Bookings API)",
        "url": "https://www.anchorterminal.com/compare/eat-app-vs-square-appointments"
      },
      {
        "json": "https://www.anchorterminal.com/compare/opentable-vs-square-appointments.json",
        "title": "OpenTable APIs vs Square Appointments (Bookings API)",
        "url": "https://www.anchorterminal.com/compare/opentable-vs-square-appointments"
      },
      {
        "json": "https://www.anchorterminal.com/compare/opentable-vs-tablecheck.json",
        "title": "OpenTable APIs vs TableCheck API",
        "url": "https://www.anchorterminal.com/compare/opentable-vs-tablecheck"
      },
      {
        "json": "https://www.anchorterminal.com/compare/resy-vs-square-appointments.json",
        "title": "Resy vs Square Appointments (Bookings API)",
        "url": "https://www.anchorterminal.com/compare/resy-vs-square-appointments"
      },
      {
        "json": "https://www.anchorterminal.com/compare/square-appointments-vs-thefork.json",
        "title": "Square Appointments (Bookings API) vs TheFork B2B API",
        "url": "https://www.anchorterminal.com/compare/square-appointments-vs-thefork"
      },
      {
        "json": "https://www.anchorterminal.com/compare/tablecheck-vs-thefork.json",
        "title": "TableCheck API vs TheFork B2B API",
        "url": "https://www.anchorterminal.com/compare/tablecheck-vs-thefork"
      },
      {
        "json": "https://www.anchorterminal.com/compare/sevenrooms-vs-square-appointments.json",
        "title": "SevenRooms vs Square Appointments (Bookings API)",
        "url": "https://www.anchorterminal.com/compare/sevenrooms-vs-square-appointments"
      },
      {
        "json": "https://www.anchorterminal.com/compare/sevenrooms-vs-tablecheck.json",
        "title": "SevenRooms vs TableCheck API",
        "url": "https://www.anchorterminal.com/compare/sevenrooms-vs-tablecheck"
      },
      {
        "json": "https://www.anchorterminal.com/compare/square-appointments-vs-tock.json",
        "title": "Square Appointments (Bookings API) vs Tock",
        "url": "https://www.anchorterminal.com/compare/square-appointments-vs-tock"
      }
    ],
    "scores": [
      {
        "by": 25,
        "edge": "tablecheck",
        "key": "reliability",
        "name": "Reliability",
        "square-appointments": 55,
        "tablecheck": 80,
        "weight": 16
      },
      {
        "key": "performance",
        "name": "Performance",
        "pending": true,
        "weight": 10
      },
      {
        "by": 12,
        "edge": "square-appointments",
        "key": "schema",
        "name": "Schema \u0026 documentation",
        "square-appointments": 89,
        "tablecheck": 77,
        "weight": 13
      },
      {
        "by": 8,
        "edge": "square-appointments",
        "key": "ergonomics",
        "name": "Agent ergonomics",
        "square-appointments": 80,
        "tablecheck": 72,
        "weight": 13
      },
      {
        "by": 24,
        "edge": "square-appointments",
        "key": "security",
        "name": "Security \u0026 auth",
        "square-appointments": 70,
        "tablecheck": 46,
        "weight": 14
      },
      {
        "by": 40,
        "edge": "square-appointments",
        "key": "payments",
        "name": "Payments \u0026 pricing",
        "square-appointments": 40,
        "tablecheck": 0,
        "weight": 10
      },
      {
        "key": "tasks",
        "name": "Task success",
        "pending": true,
        "weight": 10
      },
      {
        "by": 36,
        "edge": "square-appointments",
        "key": "maintenance",
        "name": "Maintenance \u0026 community",
        "square-appointments": 71,
        "tablecheck": 35,
        "weight": 7
      },
      {
        "by": 4,
        "edge": "square-appointments",
        "key": "transparency",
        "name": "Transparency \u0026 trust",
        "square-appointments": 70,
        "tablecheck": 66,
        "weight": 7
      }
    ],
    "summary": "Square Appointments (Bookings API) scores 68.1 (B) on agent readiness against TableCheck API's 57.1 (C), and leads in 6 of 7 scored categories. TableCheck API leads on reliability. Both do booking availability.",
    "verdicts": {
      "square-appointments": "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.",
      "tablecheck": "TableCheck publishes OpenAPI specs for availability, booking, CRM and POS components and a merchant MCP server with read-only keys, idempotent writes and personal data hidden by default. Access is by email application with case-by-case approval and unpublished fees, the MCP server is still under development, and no audit log or dated changelog was found."
    }
  },
  "kind": "anchor.page",
  "links": {
    "api": "https://www.anchorterminal.com/api/v1/index.json",
    "html": "https://www.anchorterminal.com/compare/square-appointments-vs-tablecheck",
    "json": "https://www.anchorterminal.com/compare/square-appointments-vs-tablecheck.json",
    "llms": "https://www.anchorterminal.com/llms.txt",
    "markdown": "https://www.anchorterminal.com/compare/square-appointments-vs-tablecheck.md",
    "slim": "https://www.anchorterminal.com/compare/square-appointments-vs-tablecheck.min.md"
  },
  "markdown": "Square Appointments (Bookings API) scores 68.1 (B) on agent readiness against TableCheck API's 57.1 (C), and leads in 6 of 7 scored categories. TableCheck API leads on reliability. Both do booking availability.\n\n- Square Appointments (Bookings API): grade B, 68.1/100, rank #242 of 1076. Markdown https://www.anchorterminal.com/tools/square-appointments.md · JSON https://www.anchorterminal.com/api/v1/tools/square-appointments.json\n- TableCheck API: grade C, 57.1/100, rank #661 of 1076. Markdown https://www.anchorterminal.com/tools/tablecheck.md · JSON https://www.anchorterminal.com/api/v1/tools/tablecheck.json\n- 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## Which one, for what\n\n### Square Appointments (Bookings API) (B)\n\nGood for: Venue-side appointment booking for salons, clinics and other service businesses already on Square.\n\nAhead on:\n- Schema \u0026 documentation, 89 against 77\n- Agent ergonomics, 80 against 72\n- Security \u0026 auth, 70 against 46\n- Payments \u0026 pricing, 40 against 0\n- Maintenance \u0026 community, 71 against 35\n\nAlso in its favour:\n- Runs on your own machine\n\nWatch for: Seller-level create, update and cancel fail with 403 unless the seller pays for Plus ($49) or Premium ($149) per location\n\n### TableCheck API (C)\n\nGood for: Restaurants and groups in Japan and Asia on TableCheck, and booking or concierge platforms wanting their inventory.\n\nAhead on:\n- Reliability, 80 against 55\n\nWatch for: Access needs an emailed application, case-by-case approval and fees quoted privately\n\n\n## Score by category\n\n| Category | Weight | Square Appointments (Bookings API) | TableCheck API | Edge |\n| --- | --- | --- | --- | --- |\n| Reliability | 16% (20 this run) | 55 | 80 | TableCheck API +25 |\n| Performance | 10%, pending | pending | pending | not scored in this run |\n| Schema \u0026 documentation | 13% (16.2 this run) | 89 | 77 | Square Appointments (Bookings API) +12 |\n| Agent ergonomics | 13% (16.2 this run) | 80 | 72 | Square Appointments (Bookings API) +8 |\n| Security \u0026 auth | 14% (17.5 this run) | 70 | 46 | Square Appointments (Bookings API) +24 |\n| Payments \u0026 pricing | 10% (12.5 this run) | 40 | 0 | Square Appointments (Bookings API) +40 |\n| Task success | 10%, pending | pending | pending | not scored in this run |\n| Maintenance \u0026 community | 7% (8.8 this run) | 71 | 35 | Square Appointments (Bookings API) +36 |\n| Transparency \u0026 trust | 7% (8.8 this run) | 70 | 66 | Square Appointments (Bookings API) +4 |\n| Negative events | ≤15 | 0 | 0 | |\n| **Total** | | **68.1 · B** | **57.1 · C** | |\n\n## Facts side by side\n\n| Fact | Square Appointments (Bookings API) | TableCheck API |\n| --- | --- | --- |\n| Kind | HTTP API | HTTP API |\n| Vendor | Block, Inc. | TableCheck Inc. |\n| Hosted endpoint | `https://connect.squareup.com/v2/bookings` | `https://api.tablecheck.com/api/` |\n| Transports | HTTP, Streamable HTTP, stdio | HTTP, Streamable HTTP |\n| Auth | OAuth or key | API key |\n| Pricing | Freemium | Paid |\n| x402 | no | no |\n| Licence | Proprietary service under the Square Developer Terms of Service. The OpenAPI specification and MCP server are Apache 2.0 | Proprietary service under the TableCheck API Terms of Service |\n| Tools exposed | 3 | 20 |\n| Read-only variant documented | no | yes |\n| llms.txt | yes | no |\n| Last release | 2026-09-16 | none |\n| Terms last updated | 2026-09-10 | 2022-10-11 |\n| Privacy policy last updated | 2026-09-15 | 2016-12-14 |\n| Customer content may train models | not found in the text | not found in the text |\n| Terms restrict automated access | yes | not found in the text |\n| Terms restrict benchmarking | yes | yes |\n| Terms or service can change without notice | not found in the text | not found in the text |\n| Arbitration or class-action waiver | yes | not found in the text |\n\n## Verdicts\n\n**Square Appointments (Bookings API).** 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.\n\n**TableCheck API.** TableCheck publishes OpenAPI specs for availability, booking, CRM and POS components and a merchant MCP server with read-only keys, idempotent writes and personal data hidden by default. Access is by email application with case-by-case approval and unpublished fees, the MCP server is still under development, and no audit log or dated changelog was found.\n\n## Before you call either\n\n### Square Appointments (Bookings API)\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### TableCheck API\n\n1. Decide which side you act for. Distribution and Web Booking serve diner-facing platforms, while Booking, CRM, POS and the MCP serve the venue\n2. Ask the operator for a read-only key before using the MCP, as TableCheck recommends, and avoid cancellations through it\n3. Call `hold_table` (MCP) or POST /blockages (REST) before booking, since availability is a snapshot and a blockage expires in 5 minutes\n4. Send dates as YYYY-MM-DD and convert the UTC times returned to the venue's time zone from `list_shops`\n5. Stay under 10,000 requests per 5 minutes per component and wait for the next window after a 429\n\n## Questions\n\n### Which is better for AI agents, Square Appointments (Bookings API) or TableCheck API?\n\nSquare Appointments (Bookings API) scores 68.1 (B) on agent readiness against TableCheck API's 57.1 (C), and leads in 6 of 7 scored categories. TableCheck API leads on reliability.\n\n### Do Square Appointments (Bookings API) and TableCheck API need an API key?\n\nSquare Appointments (Bookings API) takes an API key or an OAuth sign-in. TableCheck API needs an API key.\n\n### Can an agent call Square Appointments (Bookings API) and TableCheck API without installing anything?\n\nYes. Square Appointments (Bookings API) has a hosted endpoint at https://connect.squareup.com/v2/bookings and TableCheck API at https://api.tablecheck.com/api/.\n\n\n## For agents\n\n- This comparison as JSON: https://www.anchorterminal.com/compare/square-appointments-vs-tablecheck.json, and with the fewest tokens: https://www.anchorterminal.com/compare/square-appointments-vs-tablecheck.min.md\n- Over MCP at https://www.anchorterminal.com/mcp (no key): `compare_tools {\"a\": \"square-appointments\", \"b\": \"tablecheck\"}`. From a terminal: `anchor compare square-appointments tablecheck`\n- Each listing in full: https://www.anchorterminal.com/api/v1/tools/square-appointments.json and https://www.anchorterminal.com/api/v1/tools/tablecheck.json\n\n## Other comparisons with Square Appointments (Bookings API) or TableCheck API\n\n- [Chope vs TableCheck API](https://www.anchorterminal.com/compare/chope-vs-tablecheck.md)\n- [Eat App Partner API vs TableCheck API](https://www.anchorterminal.com/compare/eat-app-vs-tablecheck.md)\n- [Resy vs TableCheck API](https://www.anchorterminal.com/compare/resy-vs-tablecheck.md)\n- [TableCheck API vs Tock](https://www.anchorterminal.com/compare/tablecheck-vs-tock.md)\n- [Chope vs Square Appointments (Bookings API)](https://www.anchorterminal.com/compare/chope-vs-square-appointments.md)\n- [Eat App Partner API vs Square Appointments (Bookings API)](https://www.anchorterminal.com/compare/eat-app-vs-square-appointments.md)\n- [OpenTable APIs vs Square Appointments (Bookings API)](https://www.anchorterminal.com/compare/opentable-vs-square-appointments.md)\n- [OpenTable APIs vs TableCheck API](https://www.anchorterminal.com/compare/opentable-vs-tablecheck.md)\n- [Resy vs Square Appointments (Bookings API)](https://www.anchorterminal.com/compare/resy-vs-square-appointments.md)\n- [Square Appointments (Bookings API) vs TheFork B2B API](https://www.anchorterminal.com/compare/square-appointments-vs-thefork.md)\n- [TableCheck API vs TheFork B2B API](https://www.anchorterminal.com/compare/tablecheck-vs-thefork.md)\n- [SevenRooms vs Square Appointments (Bookings API)](https://www.anchorterminal.com/compare/sevenrooms-vs-square-appointments.md)\n- [SevenRooms vs TableCheck API](https://www.anchorterminal.com/compare/sevenrooms-vs-tablecheck.md)\n- [Square Appointments (Bookings API) vs Tock](https://www.anchorterminal.com/compare/square-appointments-vs-tock.md)\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": "Compare",
        "url": "https://www.anchorterminal.com/compare/"
      },
      {
        "name": "Square Appointments (Bookings API) vs TableCheck API",
        "url": ""
      }
    ],
    "description": "Square Appointments scores 68.1 (B) to TableCheck's 57.1 (C) for booking availability. Prices, MCP, x402, uptime and agent notes side by side.",
    "facts": [
      "Square Appointments (Bookings API) B 68.1",
      "TableCheck API C 57.1",
      "scores"
    ],
    "h1": "Square Appointments (Bookings API) vs TableCheck API",
    "image": "https://www.anchorterminal.com/assets/og/compare-square-appointments-vs-tablecheck.png",
    "path": "/compare/square-appointments-vs-tablecheck",
    "published": "2026-10-01",
    "section": "tools",
    "title": "Square Appointments vs TableCheck for AI agents (2026)",
    "toc": null,
    "updated": "2026-10-14",
    "url": "https://www.anchorterminal.com/compare/square-appointments-vs-tablecheck"
  },
  "tokens": {
    "markdown": 2400,
    "slim": 680
  },
  "version": 1
}
