RateAPI Routes · integration guide

Publish product discovery without publishing your policy.

Last updated: September 8, 2026

One stable installation connects confirmed facts to published membership paths, products, pricing, and evidence. No customer endpoint or backend is required.

1

Create a managed project

Enterprise customers create one project per experience in Routes Studio. Each project has a mutable draft plus stable preview and production installations. The installation identifier is public and revocable; it is not an API credential.

Managed hosting is the default

RateAPI owns strict operation validation, request deadlines, response-size limits, rate limiting, private no-store headers, and upstream API authentication. The customer browser never receives a RateAPI API key.

2

Set server-owned policy

Select the exact products and relationship types this experience can use. Product scope spans cash, home, mobility, borrowing, and cards; selectors can carry amount or balance, term, intent, audience, occupancy, and vehicle condition where relevant.

Set the theme, semantic design tokens, and three copy fields in the same draft. Browser markup does not control those values, so a visitor cannot broaden product access or remove the evidence contract.

Policy areaAllowed scopeEnforcement
Products19 explicit product families and selector detailsRequests outside the published selectors fail closed.
RelationshipsEmployer, association, school, worshipBrowse, typeahead, and resolution are limited to enabled types.
AttributionRateAPI or licensed publisherInstitution identity, proof, dates, and disclosures always remain.
PresentationThree themes, copy, 11 semantic tokensResolved from the published server version.
3

Allow your exact origin

Add the precise HTTPS origin in Routes Studio—for example, https://www.example.com. It is allowed immediately. Wildcards, paths, localhost, credentials, and IP addresses are rejected. Preview and production have separate origin lists.

No DNS or file challenge

You do not need to publish a TXT record, host a challenge file, create a proxy route, or expose a credential. The allowlist is enforced together with the installation entitlement, published policy, revocation state, and per-installation limits.

4

Publish an immutable version

Preview the draft against the authenticated dashboard runtime, then publish its revision to preview or production. Publishing creates an immutable configuration version and moves the selected environment pointer. The stable installation URL does not change.

A revision conflict stops the publish instead of overwriting newer work. Rollback moves the pointer to a previous project version; revoke immediately disables an environment without deleting history.

5

Copy and paste

Copy the exact two-line snippet from the production environment. It contains no API key, policy object, or customer facts. Paste it into the page where Routes should appear; no customer endpoint is involved.

<>HTML — managed production embed
<script src="https://rateapi.dev/widgets/v1/access-graph.js?v=bf67438d6f4ee8ea59b9d39bb8ded6ce308cfff0074e6380a50d39477bf708a9" defer></script>
<rateapi-routes-widget
installation-id="rwi_YOUR_INSTALLATION_ID"
></rateapi-routes-widget>

The installation ID stays the same. Change product policy, relationship types, copy, themes, or design tokens in Routes Studio and publish again—the same installation code resolves the new immutable version on its next load. Rollback and revoke require no site release either.

The widget collects only facts the person confirms. Browse before typing, or search the canonical employers, associations, schools, and houses of worship currently connected to published membership rules. A profile can preserve one confirmed relationship per enabled type; school selections are explicitly typed as student, alumni, or school employee. Every selection is resolved before it becomes a fact, and every add, replacement, role change, or removal can drive a same-snapshot comparison. Unknown remains unresolved; it is never rendered as rejection.

6

Operate safely

Runtime operationPurpose
access-graph-configLoads the immutable published project configuration.
access-catalogEvaluates the confirmed profile against server-approved product selectors.
access-catalog-compareShows the exact change caused by one newly confirmed fact.
entity-searchBrowse or type ahead across supported employers, associations, schools, and houses of worship.
entity-resolveConfirms one selected entity identity before it becomes a profile fact.
access-graph-healthReturns dated graph coverage and publication health.
access-graph-changesReads a bounded publication-change feed for freshness signals.

Expected failure states

403 origin_not_allowed means the requesting origin is not allowed for that installation. 409 management responses protect version or publication state. 429 is a bounded per-installation admission limit. 503 temporarily_unavailable fails closed when policy, the limiter, or the upstream API is unavailable.

Personalized runtime responses use private, no-store. RateAPI telemetry records project, environment, operation, stage, status, and timing—not request or response facts.

Organizations with exceptional network-isolation or compliance requirements can discuss a private deployment boundary with RateAPI. That is an enterprise exception, not part of the standard installation path.

7

Map the design system once

Routes Studio stores a deliberately small semantic token set. Components derive their internal states from these values, keeping white-label implementations maintainable without exposing dozens of presentation props.

TokenRole
--rateapi-fontBody font stack
--rateapi-heading-fontHeading font stack
--rateapi-font-sizeBase type size
--rateapi-primaryAccent and focus color
--rateapi-primary-contrastText placed on the accent
--rateapi-bgCanvas background
--rateapi-surfaceCard and control surface
--rateapi-textPrimary text
--rateapi-mutedSecondary text
--rateapi-borderRules and control borders
--rateapi-radiusShared corner radius

The primary state event is rateapi-routes-state. The compatibility alias rateapi-access-graph-state carries the same detail. Neither event exposes the API key or changes the authoritative result.

Move from sample to a governed installation.

Create a project, allow an origin, publish, and paste the unchanged installation code.