{
  "info": {
    "_postman_id": "f2f7d901-baaf-55e9-249c-523f20fe2e03",
    "name": "SandboxAPIs — Salesforce",
    "description": "Every read SandboxAPIs serves on Salesforce, pointed at https://sf.sandboxapis.dev.\n\n22 requests, one per served row of our coverage manifest. PATHS ONLY: this file carries no request or\nresponse schema, because a schema is the part of an API description we do not own. It is generated from\ncoverage/COVERAGE_MANIFEST.yaml — our own record of what THIS host answers — and never from a vendor's\npublished specification, several of which may not be redistributed.\n\nThe host is read-only. Every write verb answers the provider's own error shape with a message naming what was\nattempted; the \"Read-only refusal, on purpose\" folder holds one so the shape is discoverable.\n\nNo credentials are needed — any value in `apiKey` is accepted, and a real SandboxAPIs key only raises the rate\nlimit. Path variables left blank are identifiers that move when the live host re-rolls; fill them from a list\nresponse.",
    "schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json"
  },
  "auth": {
    "type": "bearer",
    "bearer": [
      {
        "key": "token",
        "value": "{{apiKey}}",
        "type": "string"
      }
    ]
  },
  "variable": [
    {
      "key": "baseUrl",
      "value": "https://sf.sandboxapis.dev",
      "type": "string",
      "description": "The live Salesforce host. Swap it for a *.snap. pin to freeze the data for CI."
    },
    {
      "key": "apiKey",
      "value": "any-token",
      "type": "string",
      "description": "No key is required — any value is accepted. A SandboxAPIs key raises the rate limit and rides Authorization: Bearer <key> (where the OAuth access token rides)."
    }
  ],
  "item": [
    {
      "name": "actions",
      "item": [
        {
          "name": "GET /services/data/{version}/actions/custom",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/services/data/:version/actions/custom",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "services",
                "data",
                ":version",
                "actions",
                "custom"
              ],
              "variable": [
                {
                  "key": "version",
                  "value": "",
                  "description": "version — fill this in; no identifier of this kind survives the live host's daily re-roll, so none is printed here."
                }
              ]
            },
            "description": "Served by SandboxAPIs. Family: actions.\n\nAnswers an EMPTY collection, and that is the true answer for this universe — not a gap. Olympus-labs' Salesforce org defines no custom invocable action - canon models no Flow, no Apex class and no automation on the CRM side, and this replica accepts no writes; Salesforce's own answer for an org with none is an empty actions collection at 200. RULED by the founder 2026-09-12 (round 19), coverage wave W5"
          }
        }
      ]
    },
    {
      "name": "change-tracking",
      "item": [
        {
          "name": "GET /services/data/{version}/sobjects/{sObject}/deleted",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/services/data/:version/sobjects/:sObject/deleted",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "services",
                "data",
                ":version",
                "sobjects",
                ":sObject",
                "deleted"
              ],
              "variable": [
                {
                  "key": "version",
                  "value": "",
                  "description": "version — fill this in; no identifier of this kind survives the live host's daily re-roll, so none is printed here."
                },
                {
                  "key": "sObject",
                  "value": "",
                  "description": "sObject — fill this in; no identifier of this kind survives the live host's daily re-roll, so none is printed here."
                }
              ]
            },
            "description": "Served by SandboxAPIs. Family: change-tracking.\n\nAnswers an EMPTY collection, and that is the true answer for this universe — not a gap. Nothing in this universe is ever deleted - the generator writes an append-only event log, this replica accepts no writes, and IsDeleted is false on every record the describe publishes (renderer-salesforce/src/sobjects.ts:472); Salesforce's own answer for a window with no deletions is {\"deletedRecords\": [], \"earliestDateAvailable\": ..., \"latestDateCovered\": ...} at 200. RULED by the founder 2026-09-12 (round 19), coverage wave W5. `earliestDateAvailable` is the instant this snapshot's history of the object begins - the earliest CreatedDate among its records - because this replica's horizon is the artifact's own history rather than the rolling 30-day retention real Salesforce reports there; reporting a retention window this host does not implement would be the invention"
          }
        },
        {
          "name": "GET /services/data/{version}/sobjects/{sObject}/updated",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/services/data/:version/sobjects/:sObject/updated",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "services",
                "data",
                ":version",
                "sobjects",
                ":sObject",
                "updated"
              ],
              "variable": [
                {
                  "key": "version",
                  "value": "",
                  "description": "version — fill this in; no identifier of this kind survives the live host's daily re-roll, so none is printed here."
                },
                {
                  "key": "sObject",
                  "value": "",
                  "description": "sObject — fill this in; no identifier of this kind survives the live host's daily re-roll, so none is printed here."
                }
              ]
            },
            "description": "Served by SandboxAPIs. Family: change-tracking."
          }
        }
      ]
    },
    {
      "name": "composite",
      "item": [
        {
          "name": "GET /services/data/{version}/composite/sobjects/{sObject}",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/services/data/:version/composite/sobjects/:sObject",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "services",
                "data",
                ":version",
                "composite",
                "sobjects",
                ":sObject"
              ],
              "variable": [
                {
                  "key": "version",
                  "value": "",
                  "description": "version — fill this in; no identifier of this kind survives the live host's daily re-roll, so none is printed here."
                },
                {
                  "key": "sObject",
                  "value": "",
                  "description": "sObject — fill this in; no identifier of this kind survives the live host's daily re-roll, so none is printed here."
                }
              ]
            },
            "description": "Served by SandboxAPIs. Family: composite."
          }
        }
      ]
    },
    {
      "name": "limits",
      "item": [
        {
          "name": "GET /services/data/{version}/limits/recordCount",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/services/data/:version/limits/recordCount",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "services",
                "data",
                ":version",
                "limits",
                "recordCount"
              ],
              "variable": [
                {
                  "key": "version",
                  "value": "",
                  "description": "version — fill this in; no identifier of this kind survives the live host's daily re-roll, so none is printed here."
                }
              ]
            },
            "description": "Served by SandboxAPIs. Family: limits."
          }
        }
      ]
    },
    {
      "name": "process",
      "item": [
        {
          "name": "GET /services/data/{version}/process/approvals",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/services/data/:version/process/approvals",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "services",
                "data",
                ":version",
                "process",
                "approvals"
              ],
              "variable": [
                {
                  "key": "version",
                  "value": "",
                  "description": "version — fill this in; no identifier of this kind survives the live host's daily re-roll, so none is printed here."
                }
              ]
            },
            "description": "Served by SandboxAPIs. Family: process.\n\nAnswers an EMPTY collection, and that is the true answer for this universe — not a gap. Olympus-labs' Salesforce org defines no approval process - canon models no approval automation on the CRM side (the one approval_rule row is a code-review rule over repo-01) and this replica accepts no writes; Salesforce's own answer for an org with none is an empty approvals collection at 200. RULED by the founder 2026-09-12 (round 19), coverage wave W5. The collection is a MAP keyed by sObject name rather than an array, which is Salesforce's own shape, so the empty one is {}"
          }
        },
        {
          "name": "GET /services/data/{version}/process/rules",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/services/data/:version/process/rules",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "services",
                "data",
                ":version",
                "process",
                "rules"
              ],
              "variable": [
                {
                  "key": "version",
                  "value": "",
                  "description": "version — fill this in; no identifier of this kind survives the live host's daily re-roll, so none is printed here."
                }
              ]
            },
            "description": "Served by SandboxAPIs. Family: process.\n\nAnswers an EMPTY collection, and that is the true answer for this universe — not a gap. Olympus-labs' Salesforce org defines no workflow rule - canon models no CRM automation and this replica accepts no writes; Salesforce's own answer for an org with none is {\"rules\": []} at 200. RULED by the founder 2026-09-12 (round 19), coverage wave W5"
          }
        },
        {
          "name": "GET /services/data/{version}/process/rules/{sObject}",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/services/data/:version/process/rules/:sObject",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "services",
                "data",
                ":version",
                "process",
                "rules",
                ":sObject"
              ],
              "variable": [
                {
                  "key": "version",
                  "value": "",
                  "description": "version — fill this in; no identifier of this kind survives the live host's daily re-roll, so none is printed here."
                },
                {
                  "key": "sObject",
                  "value": "",
                  "description": "sObject — fill this in; no identifier of this kind survives the live host's daily re-roll, so none is printed here."
                }
              ]
            },
            "description": "Served by SandboxAPIs. Family: process.\n\nAnswers an EMPTY collection, and that is the true answer for this universe — not a gap. Olympus-labs' Salesforce org defines no workflow rule - canon models no CRM automation and this replica accepts no writes; Salesforce's own answer for an org with none is {\"rules\": []} at 200. RULED by the founder 2026-09-12 (round 19), coverage wave W5. Asserted on all four served objects, because `no workflow rule anywhere` is a claim about every one of them; an object this replica does not serve still earns the coverage 404, so the ruling never answers a typo confidently"
          }
        }
      ]
    },
    {
      "name": "resources",
      "item": [
        {
          "name": "GET /services/data/{version}",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/services/data/:version",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "services",
                "data",
                ":version"
              ],
              "variable": [
                {
                  "key": "version",
                  "value": "",
                  "description": "version — fill this in; no identifier of this kind survives the live host's daily re-roll, so none is printed here."
                }
              ]
            },
            "description": "Served by SandboxAPIs. Family: resources."
          }
        }
      ]
    },
    {
      "name": "sobject-describe",
      "item": [
        {
          "name": "GET /services/data/{version}/sobjects",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/services/data/:version/sobjects",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "services",
                "data",
                ":version",
                "sobjects"
              ],
              "variable": [
                {
                  "key": "version",
                  "value": "",
                  "description": "version — fill this in; no identifier of this kind survives the live host's daily re-roll, so none is printed here."
                }
              ]
            },
            "description": "Served by SandboxAPIs. Family: sobject-describe."
          }
        },
        {
          "name": "GET /services/data/{version}/sobjects/{sObject}",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/services/data/:version/sobjects/:sObject",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "services",
                "data",
                ":version",
                "sobjects",
                ":sObject"
              ],
              "variable": [
                {
                  "key": "version",
                  "value": "",
                  "description": "version — fill this in; no identifier of this kind survives the live host's daily re-roll, so none is printed here."
                },
                {
                  "key": "sObject",
                  "value": "",
                  "description": "sObject — fill this in; no identifier of this kind survives the live host's daily re-roll, so none is printed here."
                }
              ]
            },
            "description": "Served by SandboxAPIs. Family: sobject-describe."
          }
        },
        {
          "name": "GET /services/data/{version}/sobjects/{sObject}/describe",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/services/data/:version/sobjects/:sObject/describe",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "services",
                "data",
                ":version",
                "sobjects",
                ":sObject",
                "describe"
              ],
              "variable": [
                {
                  "key": "version",
                  "value": "",
                  "description": "version — fill this in; no identifier of this kind survives the live host's daily re-roll, so none is printed here."
                },
                {
                  "key": "sObject",
                  "value": "",
                  "description": "sObject — fill this in; no identifier of this kind survives the live host's daily re-roll, so none is printed here."
                }
              ]
            },
            "description": "Served by SandboxAPIs. Family: sobject-describe."
          }
        },
        {
          "name": "GET /services/data/{version}/sobjects/{sObject}/describe/approvalLayouts",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/services/data/:version/sobjects/:sObject/describe/approvalLayouts",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "services",
                "data",
                ":version",
                "sobjects",
                ":sObject",
                "describe",
                "approvalLayouts"
              ],
              "variable": [
                {
                  "key": "version",
                  "value": "",
                  "description": "version — fill this in; no identifier of this kind survives the live host's daily re-roll, so none is printed here."
                },
                {
                  "key": "sObject",
                  "value": "",
                  "description": "sObject — fill this in; no identifier of this kind survives the live host's daily re-roll, so none is printed here."
                }
              ]
            },
            "description": "Served by SandboxAPIs. Family: sobject-describe.\n\nAnswers an EMPTY collection, and that is the true answer for this universe — not a gap. No approval process is defined on any served object, so no object has an approval layout - the same fact /process/approvals states; Salesforce's own answer for an object with none is {\"approvalLayouts\": []} at 200. RULED by the founder 2026-09-12 (round 19), coverage wave W5. This row is different IN KIND from its two siblings, which is why it could be ruled while they stay `generate`: `compactLayouts` and `layouts` need a CompactLayout and a PageLayout entity nobody has built, so their emptiness would be a claim about what this replica has not modelled, whereas an approval layout exists PER APPROVAL PROCESS and there is no approval process for one to belong to"
          }
        }
      ]
    },
    {
      "name": "sobject-rows",
      "item": [
        {
          "name": "GET /services/data/{version}/sobjects/{sObject}/{fieldName}/{fieldValue}",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/services/data/:version/sobjects/:sObject/:fieldName/:fieldValue",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "services",
                "data",
                ":version",
                "sobjects",
                ":sObject",
                ":fieldName",
                ":fieldValue"
              ],
              "variable": [
                {
                  "key": "version",
                  "value": "",
                  "description": "version — fill this in; no identifier of this kind survives the live host's daily re-roll, so none is printed here."
                },
                {
                  "key": "sObject",
                  "value": "",
                  "description": "sObject — fill this in; no identifier of this kind survives the live host's daily re-roll, so none is printed here."
                },
                {
                  "key": "fieldName",
                  "value": "",
                  "description": "fieldName — fill this in; no identifier of this kind survives the live host's daily re-roll, so none is printed here."
                },
                {
                  "key": "fieldValue",
                  "value": "",
                  "description": "fieldValue — fill this in; no identifier of this kind survives the live host's daily re-roll, so none is printed here."
                }
              ]
            },
            "description": "Served by SandboxAPIs. Family: sobject-rows."
          }
        },
        {
          "name": "GET /services/data/{version}/sobjects/{sObject}/{id}",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/services/data/:version/sobjects/:sObject/:id",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "services",
                "data",
                ":version",
                "sobjects",
                ":sObject",
                ":id"
              ],
              "variable": [
                {
                  "key": "version",
                  "value": "",
                  "description": "version — fill this in; no identifier of this kind survives the live host's daily re-roll, so none is printed here."
                },
                {
                  "key": "sObject",
                  "value": "",
                  "description": "sObject — fill this in; no identifier of this kind survives the live host's daily re-roll, so none is printed here."
                },
                {
                  "key": "id",
                  "value": "",
                  "description": "id — fill this in; no identifier of this kind survives the live host's daily re-roll, so none is printed here."
                }
              ]
            },
            "description": "Served by SandboxAPIs. Family: sobject-rows."
          }
        },
        {
          "name": "GET /services/data/{version}/sobjects/{sObject}/{id}/{relationshipFieldName}",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/services/data/:version/sobjects/:sObject/:id/:relationshipFieldName",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "services",
                "data",
                ":version",
                "sobjects",
                ":sObject",
                ":id",
                ":relationshipFieldName"
              ],
              "variable": [
                {
                  "key": "version",
                  "value": "",
                  "description": "version — fill this in; no identifier of this kind survives the live host's daily re-roll, so none is printed here."
                },
                {
                  "key": "sObject",
                  "value": "",
                  "description": "sObject — fill this in; no identifier of this kind survives the live host's daily re-roll, so none is printed here."
                },
                {
                  "key": "id",
                  "value": "",
                  "description": "id — fill this in; no identifier of this kind survives the live host's daily re-roll, so none is printed here."
                },
                {
                  "key": "relationshipFieldName",
                  "value": "",
                  "description": "relationshipFieldName — fill this in; no identifier of this kind survives the live host's daily re-roll, so none is printed here."
                }
              ]
            },
            "description": "Served by SandboxAPIs. Family: sobject-rows."
          }
        }
      ]
    },
    {
      "name": "soql-query",
      "item": [
        {
          "name": "GET /services/data/{version}/query",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/services/data/:version/query",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "services",
                "data",
                ":version",
                "query"
              ],
              "variable": [
                {
                  "key": "version",
                  "value": "",
                  "description": "version — fill this in; no identifier of this kind survives the live host's daily re-roll, so none is printed here."
                }
              ]
            },
            "description": "Served by SandboxAPIs. Family: soql-query."
          }
        },
        {
          "name": "GET /services/data/{version}/queryAll",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/services/data/:version/queryAll",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "services",
                "data",
                ":version",
                "queryAll"
              ],
              "variable": [
                {
                  "key": "version",
                  "value": "",
                  "description": "version — fill this in; no identifier of this kind survives the live host's daily re-roll, so none is printed here."
                }
              ]
            },
            "description": "Served by SandboxAPIs. Family: soql-query."
          }
        }
      ]
    },
    {
      "name": "sosl-search",
      "item": [
        {
          "name": "GET /services/data/{version}/parameterizedSearch",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/services/data/:version/parameterizedSearch",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "services",
                "data",
                ":version",
                "parameterizedSearch"
              ],
              "variable": [
                {
                  "key": "version",
                  "value": "",
                  "description": "version — fill this in; no identifier of this kind survives the live host's daily re-roll, so none is printed here."
                }
              ]
            },
            "description": "Served by SandboxAPIs. Family: sosl-search."
          }
        },
        {
          "name": "GET /services/data/{version}/search",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/services/data/:version/search",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "services",
                "data",
                ":version",
                "search"
              ],
              "variable": [
                {
                  "key": "version",
                  "value": "",
                  "description": "version — fill this in; no identifier of this kind survives the live host's daily re-roll, so none is printed here."
                }
              ]
            },
            "description": "Served by SandboxAPIs. Family: sosl-search."
          }
        }
      ]
    },
    {
      "name": "ui-metadata",
      "item": [
        {
          "name": "GET /services/data/{version}/recent",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/services/data/:version/recent",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "services",
                "data",
                ":version",
                "recent"
              ],
              "variable": [
                {
                  "key": "version",
                  "value": "",
                  "description": "version — fill this in; no identifier of this kind survives the live host's daily re-roll, so none is printed here."
                }
              ]
            },
            "description": "Served by SandboxAPIs. Family: ui-metadata.\n\nAnswers an EMPTY collection, and that is the true answer for this universe — not a gap. No user has viewed a record in this replica - the recently-viewed list is per-user UI state written by the Salesforce web app, this universe carries no Salesforce session, and the served describe reports mruEnabled false for exactly that reason; Salesforce's own answer for a user who has viewed nothing is [] at 200. RULED by the founder 2026-09-12 (round 19), coverage wave W5. This is the row that gives `mruEnabled: false` a resource behind it: the conformance entry asserts both halves, so the flag and the list cannot come to say different things"
          }
        }
      ]
    },
    {
      "name": "versions",
      "item": [
        {
          "name": "GET /services/data",
          "request": {
            "method": "GET",
            "header": [],
            "url": {
              "raw": "{{baseUrl}}/services/data",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "services",
                "data"
              ]
            },
            "description": "Served by SandboxAPIs. Family: versions."
          }
        }
      ]
    },
    {
      "name": "Read-only refusal, on purpose",
      "item": [
        {
          "name": "POST /services/data",
          "request": {
            "method": "POST",
            "header": [
              {
                "key": "Content-Type",
                "value": "application/json"
              }
            ],
            "url": {
              "raw": "{{baseUrl}}/services/data",
              "host": [
                "{{baseUrl}}"
              ],
              "path": [
                "services",
                "data"
              ]
            },
            "body": {
              "mode": "raw",
              "raw": "{}",
              "options": {
                "raw": {
                  "language": "json"
                }
              }
            },
            "description": "This universe is read-only, and this request is here so you can see what that looks like before your\ncode does.\n\nIt answers Salesforce's own error status and body shape, with a message naming the write that was\nattempted and a link to the roadmap. Nothing mutates. Every other write verb, on every other path,\nanswers the same way — this one is an example, not the only one."
          }
        }
      ]
    }
  ]
}
