Skip to content

Names and ids

How every record, Noun, Verb, Event and property is named, so one name works in the API, SDK, CLI and MCP server and in every sentence.

Every record has one id, its URL, and every part of the model has one name. A founder's agent and a developer's code use the same names, so a name read on any page works in any call.

A record's id is its URL

JSON
{
  "$id": "https://api.sb/leaseline.app/orders/order_1",
  "$type": "Order",
  "$version": 4,
  "status": "paid"
}

$id is the record's address: https://api.sb/, the Startup's namespace, the plural path and the record. The namespace is the Startup's Domain, so every record says which business owns it. $type names the Noun, and $version counts the record's writes.

A field that starts with $ is metadata. Every other field is a property listed on the Noun's page.

One name per part

PartWrittenExample
NounPascalCase, singularCreditGrant
Path segmentkebab-case, plural/credit-grants
Record key in a payloadcamelCasecreditGrant
Property and valuecamelCasestatus: pastDue
VerbcamelCase action formrequestSetup
Verb idNoun, a dot, the VerbTenant.requestSetup
EventNoun, a dot, the past tenseTenant.setupRequested

A Verb id is the same string on every Interface. It is the API's operation id, the SDK method $.Tenant.requestSetup, the CLI's do Tenant.requestSetup and the MCP server's call. An agent that learns one form knows all four.

Names in sentences

These docs write a Noun as a capitalized word, so "an Offer" means the record type and nothing looser. Each Noun has words it never goes by, and no page uses them. The page on colliding terms names the words other tools use differently.

Stripe's own fields keep Stripe's snake_case, such as unit_amount, and appear only where a page maps a record to Stripe. Every call here takes camelCase.

Names you add

A Noun or Verb the Startup adds follows the same rules, and its Verb ids work on all four Interfaces. A Lease.mdx file with a renew Verb serves /leases, the Verb id Lease.renew and the Event Lease.renewed. Nouns shows the file.