> ## Documentation Index
> Fetch the complete documentation index at: https://docs.dataraven.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Create Team

> Create a new team.

**Global Limit:** Maximum 5 teams per user (abuse prevention).

The creating user automatically becomes the team owner.
New teams start on the FREE tier. Upgrade each team individually
to PRO for higher resource limits (tasks, locations, secrets, etc.).



## OpenAPI

````yaml POST /v1/teams
openapi: 3.1.0
info:
  title: Data Raven API
  description: Cloud-to-cloud data transfer platform powered by RClone
  version: 0.5.0
servers: []
security: []
paths:
  /v1/teams:
    post:
      tags:
        - Teams
      summary: Create Team
      description: |-
        Create a new team.

        **Global Limit:** Maximum 5 teams per user (abuse prevention).

        The creating user automatically becomes the team owner.
        New teams start on the FREE tier. Upgrade each team individually
        to PRO for higher resource limits (tasks, locations, secrets, etc.).
      operationId: create_team_v1_teams_post
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TeamCreate'
      responses:
        '201':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TeamDetailResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      security:
        - HTTPBearer: []
components:
  schemas:
    TeamCreate:
      properties:
        name:
          type: string
          maxLength: 255
          minLength: 1
          title: Name
      type: object
      required:
        - name
      title: TeamCreate
      description: Schema for creating a new team.
    TeamDetailResponse:
      properties:
        id:
          type: string
          format: uuid
          title: Id
        name:
          type: string
          title: Name
        subscription_tier:
          $ref: '#/components/schemas/SubscriptionTier'
        created_at:
          type: string
          format: date-time
          title: Created At
        updated_at:
          type: string
          format: date-time
          title: Updated At
        members:
          items:
            $ref: '#/components/schemas/TeamMemberResponse'
          type: array
          title: Members
        pending_invitations:
          items:
            $ref: '#/components/schemas/PendingInvitationResponse'
          type: array
          title: Pending Invitations
      type: object
      required:
        - id
        - name
        - subscription_tier
        - created_at
        - updated_at
        - members
        - pending_invitations
      title: TeamDetailResponse
      description: Schema for detailed team response with members and invitations.
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    SubscriptionTier:
      type: string
      enum:
        - free
        - pro
      title: SubscriptionTier
      description: Subscription tiers.
    TeamMemberResponse:
      properties:
        user_id:
          type: string
          format: uuid
          title: User Id
        email:
          anyOf:
            - type: string
            - type: 'null'
          title: Email
        role:
          $ref: '#/components/schemas/UserRole'
        joined_at:
          type: string
          format: date-time
          title: Joined At
        invited_by:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Invited By
      type: object
      required:
        - user_id
        - role
        - joined_at
      title: TeamMemberResponse
      description: Schema for team member in responses.
    PendingInvitationResponse:
      properties:
        id:
          type: string
          format: uuid
          title: Id
        user_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: User Id
        email:
          anyOf:
            - type: string
            - type: 'null'
          title: Email
        role:
          $ref: '#/components/schemas/UserRole'
        invited_by:
          type: string
          format: uuid
          title: Invited By
        invited_at:
          type: string
          format: date-time
          title: Invited At
      type: object
      required:
        - id
        - role
        - invited_by
        - invited_at
      title: PendingInvitationResponse
      description: Response for pending invitations embedded in team detail.
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
              - type: string
              - type: integer
          type: array
          title: Location
        msg:
          type: string
          title: Message
        type:
          type: string
          title: Error Type
        input:
          title: Input
        ctx:
          type: object
          title: Context
      type: object
      required:
        - loc
        - msg
        - type
      title: ValidationError
    UserRole:
      type: string
      enum:
        - viewer
        - operator
        - admin
        - owner
      title: UserRole
      description: >-
        User roles within teams (hierarchical).


        - OWNER (4): Full control including team deletion

        - ADMIN (3): All operations except team deletion

        - OPERATOR (2): Day-to-day operations (run jobs, view logs), no
        setup/config

        - VIEWER (1): Read-only audit access
  securitySchemes:
    HTTPBearer:
      type: http
      scheme: bearer

````