> This is a page from the ElevenLabs documentation. For a complete page index, fetch https://elevenlabs.io/docs/llms.txt. For the full documentation in a single file, fetch https://elevenlabs.io/docs/llms-full.txt.

# Convidar vários usuários

POST https://api.elevenlabs.io/v1/workspace/invites/add-bulk
Content-Type: application/json

Envia convites por e-mail para entrar no seu espaço de trabalho aos endereços fornecidos. Exige que todos os endereços de e-mail façam parte de um domínio verificado. Se os usuários não tiverem uma conta, será solicitado que criem uma. Se aceitarem os convites, serão adicionados como usuários ao seu espaço de trabalho e à sua assinatura, usando um dos seus assentos. Este endpoint só pode ser chamado por membros do espaço de trabalho com a permissão WORKSPACE_MEMBERS_INVITE.

Reference: https://elevenlabs.io/docs/api-reference/workspace/invites/create-batch

## Servers

- `https://api.elevenlabs.io` (Production, default)
- `https://api.us.elevenlabs.io` (Production US)
- `https://api.eu.residency.elevenlabs.io` (Production EU)
- `https://api.in.residency.elevenlabs.io` (Production India)
- `https://api.sg.residency.elevenlabs.io` (Production Singapore)

## Request

### Body (application/json)

This endpoint expects a Body_Invite_multiple_users_v1_workspace_invites_add_bulk_post.

- `emails` (list of string, required) — O e-mail do cliente
- `seat_type` (enum, optional, nullable) — O tipo de assento do usuário
  - Allowed values: `workspace_admin`, `workspace_member`, `workspace_lite_member`
- `group_ids` (list of string, optional, nullable) — Os IDs dos grupos do usuário
- `usage_limit` (integer, optional, nullable) — Limite mensal de uso de créditos para a pessoa convidada. Omita ou defina como null para não aplicar um limite personalizado.

## Response

### 200

Resposta bem-sucedida

- `status` (string, required) — O status da solicitação de convite para o espaço de trabalho. Se a solicitação for bem-sucedida, o status será 'ok'. Caso contrário, será retornada uma mensagem de erro com status 500.

## Errors

### 422 Unprocessable Entity Error

Erro de validação

- `detail` (list of ValidationError, optional)

## Types

### ValidationError

- `loc` (list of ValidationErrorLocItems, required)
- `msg` (string, required)
- `type` (string, required)

### ValidationErrorLocItems

## Examples

**Request**

```json
{
  "emails": [
    "john.doe@testmail.com"
  ]
}
```

**Response**

```json
{
  "status": "ok"
}
```

**SDK Code**

```python
import requests

url = "https://api.elevenlabs.io/v1/workspace/invites/add-bulk"

payload = { "emails": ["john.doe@testmail.com"] }
headers = {"Content-Type": "application/json"}

response = requests.post(url, json=payload, headers=headers)

print(response.json())
```

```javascript
const url = 'https://api.elevenlabs.io/v1/workspace/invites/add-bulk';
const options = {
  method: 'POST',
  headers: {'Content-Type': 'application/json'},
  body: '{"emails":["john.doe@testmail.com"]}'
};

try {
  const response = await fetch(url, options);
  const data = await response.json();
  console.log(data);
} catch (error) {
  console.error(error);
}
```

```go
package main

import (
	"fmt"
	"strings"
	"net/http"
	"io"
)

func main() {

	url := "https://api.elevenlabs.io/v1/workspace/invites/add-bulk"

	payload := strings.NewReader("{\n  \"emails\": [\n    \"john.doe@testmail.com\"\n  ]\n}")

	req, _ := http.NewRequest("POST", url, payload)

	req.Header.Add("Content-Type", "application/json")

	res, _ := http.DefaultClient.Do(req)

	defer res.Body.Close()
	body, _ := io.ReadAll(res.Body)

	fmt.Println(res)
	fmt.Println(string(body))

}
```

```ruby
require 'uri'
require 'net/http'

url = URI("https://api.elevenlabs.io/v1/workspace/invites/add-bulk")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n  \"emails\": [\n    \"john.doe@testmail.com\"\n  ]\n}"

response = http.request(request)
puts response.read_body
```

```java
import com.mashape.unirest.http.HttpResponse;
import com.mashape.unirest.http.Unirest;

HttpResponse<String> response = Unirest.post("https://api.elevenlabs.io/v1/workspace/invites/add-bulk")
  .header("Content-Type", "application/json")
  .body("{\n  \"emails\": [\n    \"john.doe@testmail.com\"\n  ]\n}")
  .asString();
```

```php
<?php
require_once('vendor/autoload.php');

$client = new \GuzzleHttp\Client();

$response = $client->request('POST', 'https://api.elevenlabs.io/v1/workspace/invites/add-bulk', [
  'body' => '{
  "emails": [
    "john.doe@testmail.com"
  ]
}',
  'headers' => [
    'Content-Type' => 'application/json',
  ],
]);

echo $response->getBody();
```

```csharp
using RestSharp;

var client = new RestClient("https://api.elevenlabs.io/v1/workspace/invites/add-bulk");
var request = new RestRequest(Method.POST);
request.AddHeader("Content-Type", "application/json");
request.AddParameter("application/json", "{\n  \"emails\": [\n    \"john.doe@testmail.com\"\n  ]\n}", ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
```

```swift
import Foundation

let headers = ["Content-Type": "application/json"]
let parameters = ["emails": ["john.doe@testmail.com"]] as [String : Any]

let postData = JSONSerialization.data(withJSONObject: parameters, options: [])

let request = NSMutableURLRequest(url: NSURL(string: "https://api.elevenlabs.io/v1/workspace/invites/add-bulk")! as URL,
                                        cachePolicy: .useProtocolCachePolicy,
                                    timeoutInterval: 10.0)
request.httpMethod = "POST"
request.allHTTPHeaderFields = headers
request.httpBody = postData as Data

let session = URLSession.shared
let dataTask = session.dataTask(with: request as URLRequest, completionHandler: { (data, response, error) -> Void in
  if (error != nil) {
    print(error as Any)
  } else {
    let httpResponse = response as? HTTPURLResponse
    print(httpResponse)
  }
})

dataTask.resume()
```