{
  "about": "Sandbox calls are free, unmetered (300 an hour), never charged, and marked sandbox: true (receipts too). Outcomes sent to the sandbox aren't recorded. Same engine and catalog as production, so answers match; these scenarios are regression-tested on every release.",
  "base": "https://tetheredtrust.com/v1/sandbox",
  "scenarios": [
    {
      "id": "laptop-ram-upgrade",
      "title": "Laptop memory upgrade that fits",
      "path": "/v1/sandbox/plan",
      "body": {
        "goal": "Upgrade a ThinkPad T480 to 32 GB",
        "setup": [
          {
            "text": "Lenovo ThinkPad T480",
            "config": {
              "replace_memory": true
            }
          }
        ],
        "purchase": [
          {
            "text": "Crucial CT16G4SFRA32A",
            "quantity": 2
          }
        ]
      },
      "expect": "supported",
      "url": "https://tetheredtrust.com/v1/sandbox/plan",
      "method": "POST"
    },
    {
      "id": "laptop-wrong-generation",
      "title": "DDR5 module for a DDR4 laptop",
      "path": "/v1/sandbox/plan",
      "body": {
        "setup": [
          "Lenovo ThinkPad T480"
        ],
        "purchase": [
          "Crucial CT16G48C40S5"
        ]
      },
      "expect": "incompatible",
      "url": "https://tetheredtrust.com/v1/sandbox/plan",
      "method": "POST"
    },
    {
      "id": "laptop-too-many-modules",
      "title": "Three modules for a two-slot laptop",
      "path": "/v1/sandbox/plan",
      "body": {
        "setup": [
          {
            "text": "Lenovo ThinkPad T480",
            "config": {
              "replace_memory": true
            }
          }
        ],
        "purchase": [
          {
            "text": "Crucial CT8G4SFRA32A",
            "quantity": 3
          }
        ]
      },
      "expect": "incompatible",
      "url": "https://tetheredtrust.com/v1/sandbox/plan",
      "method": "POST"
    },
    {
      "id": "laptop-slots-unknown",
      "title": "One module, current memory unknown",
      "path": "/v1/sandbox/plan",
      "body": {
        "setup": [
          "Lenovo ThinkPad T480"
        ],
        "purchase": [
          "Crucial CT16G4SFRA32A"
        ]
      },
      "expect": "conditional",
      "url": "https://tetheredtrust.com/v1/sandbox/plan",
      "method": "POST"
    },
    {
      "id": "pc-build-am5",
      "title": "AM5 build: board, CPU and cooler",
      "path": "/v1/sandbox/plan",
      "body": {
        "purchase": [
          "ASUS TUF GAMING B650-PLUS WIFI",
          "AMD Ryzen 7 7800X3D",
          "Noctua NH-D15 G2"
        ]
      },
      "expect": "supported",
      "url": "https://tetheredtrust.com/v1/sandbox/plan",
      "method": "POST"
    },
    {
      "id": "pc-build-wrong-socket",
      "title": "Intel CPU on an AM5 board",
      "path": "/v1/sandbox/plan",
      "body": {
        "purchase": [
          "ASUS TUF GAMING B650-PLUS WIFI",
          "Intel Core i7-14700K"
        ]
      },
      "expect": "incompatible",
      "url": "https://tetheredtrust.com/v1/sandbox/plan",
      "method": "POST"
    },
    {
      "id": "camera-adapter",
      "title": "EF lens for an EOS R body needs an adapter",
      "path": "/v1/sandbox/check",
      "body": {
        "existing": "Canon EOS R8",
        "candidate": "Canon EF 50mm f/1.8 STM"
      },
      "expect": "conditional",
      "url": "https://tetheredtrust.com/v1/sandbox/check",
      "method": "POST"
    },
    {
      "id": "smart-home-hub",
      "title": "Zigbee sensor with and without its hub",
      "path": "/v1/sandbox/plan",
      "body": {
        "setup": [
          "Amazon Echo Dot (5th Gen)"
        ],
        "purchase": [
          "Aqara Door and Window Sensor",
          "Aqara Hub M3"
        ]
      },
      "expect": "supported",
      "url": "https://tetheredtrust.com/v1/sandbox/plan",
      "method": "POST"
    },
    {
      "id": "fridge-filter",
      "title": "Refrigerator water filter (superseded number)",
      "path": "/v1/sandbox/check",
      "body": {
        "existing": "GE GNE27JYMFS",
        "candidate": "GE XWF"
      },
      "expect": "supported",
      "url": "https://tetheredtrust.com/v1/sandbox/check",
      "method": "POST"
    },
    {
      "id": "ambiguous-model",
      "title": "Ambiguous model name returns candidates",
      "path": "/v1/sandbox/resolve?query=Apple%20Watch%20Series%2010",
      "body": null,
      "expect": "ambiguous",
      "url": "https://tetheredtrust.com/v1/sandbox/resolve?query=Apple%20Watch%20Series%2010",
      "method": "GET"
    }
  ]
}