Brand
A Brand is a name, a voice, a logo, and a style under which a Startup makes Offers.
Properties
| Property | Type | Required | Description |
|---|---|---|---|
name | string | required | The name customers see. |
voice | text | How the Brand writes and speaks. | |
logo | url | The logo image. |
Object
{
"$id": "https: //api.sb/ shiftnote.app/ brands/ brand_1",
"$type": "Brand",
"name": "ShiftNote",
"voice": "Reassuring and direct.",
"logo": "https: //shiftnote.app"
}Relationships
- A Brand brands many Offers: each Offer carries exactly one Brand, whose name, voice and logo the buyer sees.
brands, inversebrandedBy. - A Brand styles many Sites: a Site renders one Brand’s name, voice and Theme.
styles, inversestyledBy. - A Brand is themed by one Theme: a Theme sets a Brand’s color, type, spacing and motion.
themedBy, inversethemes.
Verbs
createCreates a Brand.POST /{namespace}/brandsgetReturns one Brand by id.GET /{namespace}/brands/{id}listReturns Brands, newest first, one page at a time.GET /{namespace}/brandsupdateChanges the given properties of a Brand.PATCH /{namespace}/brands/{id}deleteDeletes a Brand; its history is kept.DELETE /{namespace}/brands/{id}clearClear checks a proposed Brand name against trademark registers, Domain availability and the Startup’s handles on outside platforms in one call.POST /{namespace}/brands/{brand}/clear
Permissions
Which Access level may call each Verb. One-way Verbs wait their delay window.
| Operation | owner | admin | member | viewer |
|---|---|---|---|---|
Brand.create | Yes | Yes | Yes | No |
Brand.get | Yes | Yes | Yes | Yes |
Brand.list | Yes | Yes | Yes | Yes |
Brand.update | Yes | Yes | Yes | No |
Brand.delete | Yes | Yes | Yes | No |
Brand.clear | Yes | Yes | Yes | No |
Call it
Clear my brand.Example
One Brand can cover two Startups with different Customers. One Startup can sell an Offer under a second Brand for a new audience.