# Surface Order > Decide which integration surfaces a platform offers outside developers and AI agents - REST, webhooks, SDKs, > GraphQL, gRPC, SQL access, bulk data, a CLI, MCP, embedded components, a Terraform provider - and in what build > order, sequenced by reversal cost and audience rather than novelty. Answer a short interview, mark the surfaces that > exist and how deep they go, paste the demand signals and your draft order; the browser ranks the lead posture, > sequences the surfaces into waves the team can carry and checks the draft. Metered runs write the sequencing plan, > and the per-surface handoff cards with the review cadence. Built on the SkillSafe skill > @samber/api-integration-surface-strategy, from samber/developer-platform-skills (MIT), by Samuel Berthe. https://surface-order.skillsafe.ai/ ## What is free - The lead posture ranked from the buyer type: REST plus webhooks first by default, embedded-first for a non-technical buyer who needs value in hours (still on an API foundation), GraphQL only on a named, integrator-confirmed pain. - The groundwork: a drifting or missing spec is fixed before any derived surface (SDKs, MCP, an embedded layer, a CLI, a Terraform provider); missing per-client telemetry is instrumented early. - Demand signals weighed - a blocked deal over usage telemetry over community asks; community-only surfaces are deferred until confirmed. MCP comes last, scheduled by RFPs or agent traffic, parked on customer questions alone. Partial surfaces are deepened before new ones. A deadline pulls one surface ahead, never ahead of its contract. - Every surface in play sequenced into waves no wider than the team's capacity, with its reversal-cost tier and the sibling skill that owns its design; a one-off unblock schedules only what the deal needs; the effort ceiling caps the waves. - Seven gates, including four on your own draft order: no derived surface before its contract, no MCP-first without agent signals, no more surfaces at once than the team sustains, a demand signal for every drafted surface. Plus a gate sheet (Markdown), the build order (.csv), the checks (.csv) and everything (.json). ## The metered lanes Two tasks on gpt-terra, metered per run, routed by `task`. Input string fields: `task` (plan or handoffs), `platform`, `surfaces`, `carry` (handoffs only: the plan decisions) and `facts`. - `plan` replies with `summary`, `candidates`, `recommend`, `audiences`, `sequence`, `groundwork` and `caveats`. - `handoffs` replies with `summary`, `handoffs` (surface, decision, audience, signal, tier, owner, sibling, next) and `review` (date, triggers, recheck) and `caveats`. The page holds every reply to its own facts: the page's candidates and posture, every scheduled surface in its order and wave, every audience mapped, the groundwork named; one handoff per surface with the page's decision, tier and owning skill, all five fields filled, and the review on the page's date with at least three triggers. ## Links - API tutorial: https://surface-order.skillsafe.ai/api.html - Source skill: https://skillsafe.ai/skill/@samber/api-integration-surface-strategy