Skip to main content
POST
/
companies
JavaScript
import Whop from '@whop/sdk';

const client = new Whop({
  apiKey: process.env['WHOP_API_KEY'], // This is the default and can be omitted
});

const company = await client.companies.create({ title: 'title' });

console.log(company.id);
{
  "id": "biz_xxxxxxxxxxxxxx",
  "title": "Pickaxe",
  "description": "Learn the fundamentals of data analytics with hands-on projects.",
  "verified": true,
  "send_customer_emails": true,
  "created_at": "2023-12-01T05:00:00.401Z",
  "updated_at": "2023-12-01T05:00:00.401Z",
  "member_count": 42,
  "owner_user": {
    "id": "user_xxxxxxxxxxxxx",
    "name": "John Doe",
    "username": "johndoe42"
  },
  "route": "pickaxe",
  "logo": {
    "url": "https://media.whop.com/abc123/optimized.jpg"
  },
  "published_reviews_count": 42,
  "metadata": {},
  "social_links": [
    {
      "id": "soci_xxxxxxxxxxxxx",
      "url": "https://x.com/whop",
      "website": "x"
    }
  ]
}

Authorizations

Authorization
string
header
required

A company API key, company scoped JWT, app API key, or user OAuth token. You must prepend your key/token with the word 'Bearer', which will look like Bearer ***************************

Body

application/json

Parameters for CreateCompany

title
string
required

The display name of the company shown to customers.

description
string | null

A promotional pitch displayed to potential customers on the company's store page.

email
string | null

The email address of the user who will own the connected account. Required when parent_company_id is provided.

logo
FileInputWithId · object

The company's logo image. Accepts PNG, JPEG, or GIF format.

metadata
object

A key-value JSON object of custom metadata to store on the company.

parent_company_id
string | null

The unique identifier of the parent platform company. When provided, creates a connected account under that platform. Omit to create a company for the current user.

send_customer_emails
boolean | null

Whether Whop sends transactional emails to customers on behalf of this company. Only applies when creating a connected account.

Response

A successful response

A company is a seller on Whop. Companies own products, manage members, and receive payouts.

id
string
required

The unique identifier for the company.

Example:

"biz_xxxxxxxxxxxxxx"

title
string
required

The display name of the company shown to customers.

Example:

"Pickaxe"

description
string | null
required

A promotional pitch written by the company creator, displayed to potential customers on the store page.

Example:

"Learn the fundamentals of data analytics with hands-on projects."

verified
boolean
required

Whether this company has been verified by Whop's trust and safety team.

send_customer_emails
boolean
required

Whether Whop sends transactional emails (receipts, updates) to customers on behalf of this company.

created_at
string<date-time>
required

The datetime the company was created.

Example:

"2023-12-01T05:00:00.401Z"

updated_at
string<date-time>
required

The datetime the company was last updated.

Example:

"2023-12-01T05:00:00.401Z"

member_count
integer
required

The total number of users who currently hold active memberships across all of this company's products.

Example:

42

owner_user
object
required

The user who owns and has full administrative control over this company.

route
string
required

The URL slug for the company's store page (e.g., 'pickaxe' in whop.com/pickaxe).

Example:

"pickaxe"

logo
object
required

The company's logo.

published_reviews_count
integer
required

The total number of published customer reviews across all products for this company.

Example:

42

metadata
object
required

A key-value JSON object of custom metadata for this company, managed by the platform that created the account.

The list of social media accounts and external links associated with this company.