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

# Invite Team

Invites a team to the specified location by email. The invited user will receive an email with a link to accept the invitation. The authenticated user must have a verified email address. Rate limited to 5 requests per minute.

<ParamField path="site" type="string" required>
  The UUID of the location.
</ParamField>

<ParamField body="email" type="string" required>
  The email address of the user to invite. Maximum 255 characters.
</ParamField>

<ParamField body="transfer_ownership" type="boolean">
  Whether to transfer location ownership to the invited team upon acceptance.
</ParamField>

<ParamField body="data_access" type="boolean">
  Whether to grant sensitive data access to the invited team.
</ParamField>

<ParamField body="data_access_expires_at" type="string">
  ISO 8601 date for when the data access expires. Must be a future date.
</ParamField>

<ParamField body="can_access_all_assets" type="boolean">
  Whether the invited team can access all assets on the location.
</ParamField>

<ParamField body="accessible_assets" type="array">
  An array of specific assets the team can access. Required when `can_access_all_assets` is `false`.

  <Expandable title="asset object">
    <ParamField body="accessible_assets[].asset_type" type="string" required>
      The asset type class name. Must be `App\Models\Charger`.
    </ParamField>

    <ParamField body="accessible_assets[].asset_id" type="integer" required>
      The numeric ID of the asset.
    </ParamField>
  </Expandable>
</ParamField>

## Response

<ResponseField name="message" type="string">
  A confirmation message indicating the invite was created successfully.
</ResponseField>

<ResponseField name="invite" type="object">
  The created invitation object.

  <Expandable title="invite">
    <ResponseField name="id" type="integer">
      The numeric ID of the invitation.
    </ResponseField>

    <ResponseField name="site_id" type="integer">
      The ID of the location.
    </ResponseField>

    <ResponseField name="email" type="string">
      The email address the invitation was sent to.
    </ResponseField>

    <ResponseField name="expires_at" type="string">
      ISO 8601 timestamp of when the invitation expires.
    </ResponseField>

    <ResponseField name="transfer_ownership" type="boolean">
      Whether ownership will be transferred upon acceptance.
    </ResponseField>

    <ResponseField name="data_access" type="boolean">
      Whether data access will be granted upon acceptance.
    </ResponseField>

    <ResponseField name="data_access_expires_at" type="string">
      ISO 8601 timestamp of when data access expires. May be `null`.
    </ResponseField>

    <ResponseField name="can_access_all_assets" type="boolean">
      Whether the team will have access to all assets.
    </ResponseField>

    <ResponseField name="accessible_assets" type="array">
      The list of specific accessible assets, if limited.
    </ResponseField>

    <ResponseField name="created_at" type="string">
      ISO 8601 timestamp of when the invitation was created.
    </ResponseField>

    <ResponseField name="updated_at" type="string">
      ISO 8601 timestamp of when the invitation was last updated.
    </ResponseField>
  </Expandable>
</ResponseField>

<ResponseField name="invite_token" type="string">
  The invitation token used for acceptance.
</ResponseField>

<ResponseField name="invite_links" type="object">
  Links for accepting the invitation.

  <Expandable title="invite_links">
    <ResponseField name="web" type="string">
      The web URL to accept the invitation.
    </ResponseField>

    <ResponseField name="deep_link" type="string">
      The deep link URL for mobile app acceptance.
    </ResponseField>
  </Expandable>
</ResponseField>
