# Builder

URL: /business/nouns/builder · Id: `noun:builder`

> A Builder is a named part of api.sb that builds one side of a Startup; StartupBuilder directs SiteBuilder, SoftwareBuilder, ServiceBuilder, and SalesBuilder.

A Builder is a named part of [api.sb](/code/platform/api-sb) that builds one side of a [Startup](/business/nouns/startup); [StartupBuilder](/code/builders/startup) directs [SiteBuilder](/code/builders/site), [SoftwareBuilder](/code/builders/software), [ServiceBuilder](/code/builders/service), and [SalesBuilder](/code/builders/sales).

## Properties
| Property | Type | Required | Description |
| --- | --- | --- | --- |
| `name` | `string` | Yes | One of `StartupBuilder`, `SiteBuilder`, `SoftwareBuilder`, `ServiceBuilder`, or `SalesBuilder`. |

## Object
```json
{
  "$id": "https://api.sb/patentpad.com/builders/builder_1",
  "$type": "Builder",
  "name": "StartupBuilder"
}
```

## Relationships
- <a id="rel-builds"></a>A Builder **builds** many [Startups](/business/nouns/startup): [StartupBuilder](/code/builders/startup) directs [SiteBuilder](/code/builders/site), [SoftwareBuilder](/code/builders/software), [ServiceBuilder](/code/builders/service) and [SalesBuilder](/code/builders/sales), each building one side of a [Startup](/business/nouns/startup). `builds`, inverse [`builtWith`](/business/nouns/startup#rel-built-with).

## Verbs
| Verb | Description | Subject | Event | Class |
| --- | --- | --- | --- | --- |
| <a id="get"></a>[Builder.get](/business/nouns/builder/get) | Returns one Builder by id. Inherited from [Noun](/business/nouns/noun). | None. | None. | Read: `try`, `do` |
| <a id="list"></a>[Builder.list](/business/nouns/builder/list) | Returns Builders, newest first, one page at a time. Inherited from [Noun](/business/nouns/noun). | None. | None. | Read: `try`, `do` |

A Builder is kept forever and never edited: it has no `update` or `delete`.

## Permissions
Which Access level may call each Verb. One-way Verbs wait their delay window.

| Operation | `owner` | `admin` | `member` | `viewer` |
| --- | --- | --- | --- | --- |
| `Builder.get` | Yes | Yes | Yes | Yes |
| `Builder.list` | Yes | Yes | Yes | Yes |

## Call it

**Ask**

```text
Show me the latest builder.
```

**API**

```bash
curl https://api.sb/shiftnote.app/builders/builder_1 \
  -H "Authorization: Bearer $STARTUP_BUILDER_API_KEY"
```

```json
{
  "api": "https://api.sb/shiftnote.app",
  "$type": "Builder",
  "$id": "https://api.sb/shiftnote.app/builders/builder_1",
  "builder": {
    "$id": "https://api.sb/shiftnote.app/builders/builder_1",
    "$type": "Builder",
    "name": "StartupBuilder"
  },
  "links": {
    "self": "https://api.sb/shiftnote.app/builders/builder_1",
    "up": "https://api.sb/shiftnote.app/builders"
  }
}
```

**SDK**

```ts
import { $ } from 'startup-builder'

const builder = await $.Builder.get({ id: 'builder_1' })
```

**CLI**

```bash
npx startup-builder do Builder.get --json '{"id":"builder_1"}'
```

**MCP**

```json
{
  "name": "do",
  "arguments": {
    "code": "return await $.Builder.get({ id: 'builder_1' })"
  }
}
```

## Example
A Startup sells certified translations of official documents. SiteBuilder publishes its order [Page](/business/nouns/page), SoftwareBuilder ships the drafting [Agent](/business/nouns/agent), ServiceBuilder credentials the translators, and SalesBuilder runs its per-page [Offers](/business/nouns/offer). StartupBuilder moves it from Building to Live.