Skip to Content
SPAPS is proprietary hosted SaaS. Paid access required; pre-1.0 contracts may change. Terms and access

Sweet Potato SPAPS

Customer Path

SPAPS is a proprietary, pre-1.0 hosted SaaS. Customer API access requires an active paid subscription and provisioned application credentials.

  1. Subscribe at sweetpotato.dev.
  2. Sign in and provision an application.
  3. Save the scoped secret key when it is shown.
  4. Install an authorized TypeScript or Python client.
  5. Integrate https://api.sweetpotato.dev.

Repository checkout, Docker, local-runtime, backend, and deployment instructions elsewhere in these docs are maintainer workflows. They are not the customer onboarding path or a right to operate SPAPS.

SPAPS is the shared auth, billing, wallet, entitlement, and service-integration backend used across downstream apps. This site is for Solutions Consultants demoing a governed, revenue-aware app path and for engineers implementing against the active Python server, CLI, and SDKs. Start with the field kit for demos, or jump to the Python server, CLI, SDKs, and production app assembled in spaps_app.py.

The legacy Node.js server has been removed from this checkout. New work should start in packages/python-server-quickstart.

Current Verification Boundary

This site was checked on 2026-09-03 against Sweet Potato 5b09d3df1194577c5313c865fef1db98f694cdea. Route and package claims match the current upstream manifest; the documented CLI command families resolve in the current CLI. See Source truth and verification for exact coverage and explicit non-claims.

Field Demo Path

Pick this if you are a Solutions Consultant showing a customer or stakeholder a governed app path; you will end with a scaffolded React demo, verified runtime, and a printed tools contract.

npx spaps local npx spaps quickstart --json npx spaps create governed-demo --template react npx spaps verify --json npx spaps tools --json

Engineering Path

Pick this if you are an engineer changing the Python server or building a mental model before editing code; you will end with the FastAPI service responding on http://localhost:3301/health and the test suite green.

cd path/to/sweet-potato make install make local-proof-up curl http://localhost:3301/health make pytest

How To Read This Site

First-run path

ReaderStart hereYou are done whenProof command or artifact
Solutions Consultant running a customer demo/solutions/field-kitA governed demo app is scaffolded, fixtures are applied, and the next operator skill is selectednpx spaps verify --json plus the field-kit leave-behind
Frontend or Node engineer wiring SPAPS into an app/packagesThe local runtime is up, the app contract exists, and the package surface is chosennpx spaps quickstart --json and npx spaps create demo-app --template react
Python engineer building a downstream service/tutorials/first-serviceA tiny FastAPI service runs through create_app without importing the full SPAPS appuvicorn example:app --reload and curl http://127.0.0.1:8000/health
SPAPS maintainer changing the active backend/tutorials/local-developmentThe Python server boots locally and affected tests use the repo’s Make wrappermake local-proof-up, curl http://localhost:3301/health, and make pytest

First-run proof expectations

Use the scenario manifest validator before treating these paths as current:

npm run first-run:dry-run npm run first-run:live -- --json
PathExpected proof shapeIf it fails
Field demospaps quickstart --json, spaps verify --json, spaps tools --json, and .spaps/ fixture artifactsRecord the failed command, auth/runtime mode, and next docs page in the leave-behind instead of treating the demo as vague failure
Frontend package pathSelected package surface, key type, allowed origin, and verification command are named before app work startsCheck /packages, /packages/local-runtime, and /guides/api-keys-and-origins before changing app code
Backend maintainer pathmake local-proof-up, curl http://localhost:3301/health, and make pytest prove the Python server pathTreat missing checkout, Docker/runtime failure, or port conflict as an environment blocker; do not replace the Make wrapper with raw pytest

Source Of Truth

The active entry point is packages/python-server-quickstart/src/spaps_server_quickstart/spaps_app.py. The reusable package API is exported from packages/python-server-quickstart/src/spaps_server_quickstart/__init__.py, and package metadata lives in packages/python-server-quickstart/pyproject.toml.