---
title: "Create team"
method: POST
path: "/teams"
tags: ["Teams"]
---

# Create team

`POST /teams`

Create a new team.

**gigstack Connect:** Create teams using the `team` parameter.

## Query parameters

- `team` string

## Request body

- TeamInput
  - `address` object, nullable
    - `country` string
    - `street` string, nullable
    - `zip` string, nullable
    - `city` string, nullable
    - `state` string, nullable
    - `exterior` string, nullable
    - `interior` string, nullable
    - `municipality` string, nullable
    - `neighborhood` string, nullable
  - `brand` object, nullable
    - `alias` string
    - `primary_color` string, nullable
    - `secondary_color` string, nullable
    - `logo` string, nullable
  - `metadata` object, nullable — Additional metadata to store with the team
  - `support_email` string, email, nullable
  - `support_phone` string, nullable
  - `tax_id` string, nullable
  - `tax_system` string, nullable
  - `generate_onboarding_url` boolean, nullable — Generate onboarding URL for team setup
  - `add_members` object[], nullable — Array of members to add to the team on creation
    - `id` string, required — User ID to add as a team member
    - `role` 'admin' | 'editor' | 'viewer' — Role for the team member. Defaults to "viewer" if not specified.
  - `legal_name` string, nullable — Legal name of the team/company
  - `add_master_team_members` boolean, nullable — When true, copies all members from the master team to the newly created team with their existing permissions
  - `credit_limit` number, nullable — Maximum number of documents (credits) the team can create per billing period. When null or omitted, the team shares the billing account pool with no per-team cap.

## Response `201`

Team created successfully

- object
  - `message` string
  - `data` object
    - `id` string
    - `legal_name` string, nullable — Official registered legal name of the company/team
    - `address` object, nullable
      - `country` string, nullable
      - `street` string, nullable
      - `zip` string, nullable
      - `city` string, nullable
      - `state` string, nullable
      - `exterior` string, nullable
      - `interior` string, nullable
      - `neighborhood` string, nullable
    - `brand` object
      - `alias` string, nullable
      - `primary_color` string, nullable
      - `secondary_color` string, nullable
      - `logo` string, nullable
    - `settings` object, nullable
      - `avoid_automations_on_currencies` string[], nullable
      - `default_description` string, nullable
      - `taxes` object[], nullable
      - `taxes_usd` union
        - object[]
        - boolean
      - `emails` object
        - `invoices_bcc` string[], nullable
        - `avoid_invoice_emails` boolean, nullable
        - `avoid_test_invoice_emails` boolean, nullable
        - `avoid_receipts_emails` boolean, nullable
      - `override_item_description` string, nullable
      - `global_invoice_disabled` boolean, nullable
      - `complements` object[], nullable
        - `data` string, nullable
        - `description` string, nullable
        - `type` string, nullable
      - `uses_on_self_invoice_portal` string[], nullable
      - `invoice_pdf_notes` string, nullable
      - `product_key` string, nullable
      - `unit_key` string, nullable
      - `use` string, nullable
      - `automate_complement_for_ppd_invoices` boolean, nullable
      - `withholding_taxes` object[], nullable
      - `customer_portal_id` string, nullable
      - `periodicity` object, nullable
        - `label` string
        - `value` string
      - `default_series` object
        - `income` object
          - `serie` string, nullable
        - `complements` object
          - `serie` string, nullable
        - `credit_note` object
          - `serie` string, nullable
    - `tax_id` string, nullable
    - `tax_system` string, nullable
    - `support_email` string, nullable
    - `support_phone` string, nullable
    - `owner` string, nullable
    - `created_at` number, nullable
    - `sat` object
      - `completed` boolean, nullable
      - `connected_at` number, nullable
      - `csd_expires_at` number, nullable
    - `members` object[]
      - `id` string, nullable
      - `email` string, nullable
      - `role` string, nullable
    - `integrations` object
      - `stripe` object
        - `completed` boolean, nullable
        - `category` string, nullable
      - `mercadopago` object
        - `completed` boolean, nullable
        - `category` string, nullable
      - `clip` object
        - `completed` boolean, nullable
        - `category` string, nullable
      - `whmcs` object
        - `completed` boolean, nullable
        - `category` string, nullable
      - `paypal` object
        - `completed` boolean, nullable
        - `category` string, nullable
      - `openpay` object
        - `completed` boolean, nullable
        - `category` string, nullable
      - `conekta` object
        - `completed` boolean, nullable
        - `category` string, nullable
      - `bank` object
        - `completed` boolean, nullable
        - `category` string, nullable
      - `shopify` object
        - `completed` boolean, nullable
        - `category` string, nullable
      - `zapier` object
        - `completed` boolean, nullable
        - `category` string, nullable
      - `airtable` object
        - `completed` boolean, nullable
        - `category` string, nullable
      - `google_sheets` object
        - `completed` boolean, nullable
        - `category` string, nullable
      - `hilos` object
        - `completed` boolean, nullable
        - `category` string, nullable
    - `credit_limit` number, nullable — Maximum number of documents (credits) the team can create per billing period. Null means no per-team limit (shared billing account pool).
    - `used_credits` number — Number of credits used by this team in the current billing period.
    - `credit_period_start` number, nullable — Unix timestamp (milliseconds) when the current credit period started. Resets each billing cycle.
    - `metadata` object, nullable
    - `onboarding_url` string, nullable — Secure onboarding URL (only present when generate_onboarding_url=true was sent in the request)

---

[API](https://skmtc.dev/disruptive-learning/apis/gigstack-api-v2.md) · [All operations](https://skmtc.dev/disruptive-learning/apis/gigstack-api-v2/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/disruptive-learning/gigstack-api-v2/revisions/5cf53ffd7580/schema)
