UUpward API
v1
POST/api/public/v1/create-company
Requires x-auth-key

Create company

Provision a company with branding and an owner account.

Good to know

  • The web address (web_address_name) is the company's subdomain: the company lives at {web_address_name}.{market domain}. It is sanitised to letters and numbers only.
  • The web address must be unique across Upward.
  • The response includes pagename: the owner's personal page name (their member slug), so the owner's page is at {public_url}/{pagename}. It is derived from the owner's name.
  • The response includes api_token: the new company's API key. Send it as x-auth-token on every other company endpoint. Store it securely; it is shown only in this response and in the admin console.

Body fields

marketstring (uuid)required

Key from GET /markets, or a private market key shared with you.

web_address_namestring (2–63)required

The company's subdomain (it lives at {web_address_name}.{market domain}). Letters and numbers only.

first_namestring (1–80)required

Owner first name.

last_namestring (1–80)required

Owner last name.

emailstring (email)required

Owner email; the login is created against this address.

phonestring (≤40)optional

Owner phone number.

referrerstring (≤200)optional

Where the signup came from.

company_namestring (≤160)optional

Display name; defaults to the web address when omitted.

header_background_colorstring (≤40)optional

Hex colour for the site header background.

primary_background_colorstring (≤40)optional

Hex colour used as the brand primary.

primary_text_colorstring (≤40)optional

Hex colour for text on the brand primary.

header_logostring url (≤2000)optional

Logo shown in the header.

company_dark_logostring url (≤2000)optional

Logo for dark backgrounds.

company_light_logostring url (≤2000)optional

Logo for light backgrounds.

company_admin_photostring url (≤2000)optional

Headshot for the owner profile.

Responses

201CreatedThe company was provisioned.
{
  "id": "0f2c9c1a-5b6d-4b0e-9a63-1c7d4f8e2a90",
  "company_name": "Mydomain12",
  "web_address_name": "mydomain12",
  "pagename": "john",
  "market": { "Name": "Solar", "Key": "6a0f1c2e-…" },
  "public_url": "https://mydomain12.upward.page",
  "api_token": "upw_live_ab12…7f30"
}
401UnauthorizedMissing, invalid, disabled or expired key.
{ "error": "Invalid API key" }
409ConflictThe web address is already taken.
{ "error": "That web address is already in use" }
422UnprocessableValidation failed or the market is unknown/inactive.
{
  "error": "Validation failed",
  "issues": ["email: Invalid email"]
}
POST/api/public/v1/create-company

Key from GET /markets, or a private market key shared with you.

The company's subdomain (it lives at {web_address_name}.{market domain}). Letters and numbers only.

Owner first name.

Owner last name.

Owner email; the login is created against this address.

Owner phone number.

Where the signup came from.

Display name; defaults to the web address when omitted.

Hex colour for the site header background.

Hex colour used as the brand primary.

Hex colour for text on the brand primary.

Logo shown in the header.

Logo for dark backgrounds.

Logo for light backgrounds.

Headshot for the owner profile.

ResponseNot sent yet