Previsualizar invitación
curl --request GET \
--url https://api.vertracloud.app/v1/workspaces/invites/{token} \
--header 'Authorization: Bearer <token>'const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.vertracloud.app/v1/workspaces/invites/{token}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.vertracloud.app/v1/workspaces/invites/{token}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.vertracloud.app/v1/workspaces/invites/{token}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}{
"response": {
"workspace": {},
"inviter": {},
"role_name": "<string>",
"kind": {},
"expires_at": "<string>"
}
}Invitaciones
Previsualizar invitación
Muestra a qué lleva una invitación antes de aceptarla. Cualquier cuenta con sesión iniciada; una clave de API necesita el scope workspaces:invites.
GET
/
v1
/
workspaces
/
invites
/
{token}
Previsualizar invitación
curl --request GET \
--url https://api.vertracloud.app/v1/workspaces/invites/{token} \
--header 'Authorization: Bearer <token>'const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
fetch('https://api.vertracloud.app/v1/workspaces/invites/{token}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.vertracloud.app/v1/workspaces/invites/{token}"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)package main
import (
"fmt"
"net/http"
"io"
)
func main() {
url := "https://api.vertracloud.app/v1/workspaces/invites/{token}"
req, _ := http.NewRequest("GET", url, nil)
req.Header.Add("Authorization", "Bearer <token>")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}{
"response": {
"workspace": {},
"inviter": {},
"role_name": "<string>",
"kind": {},
"expires_at": "<string>"
}
}Una clave de API necesita el scope
workspaces:invites. Tiene un límite de 10 peticiones por minuto, por sesión- IP a la vez: el token es adivinable en teoría (32 bytes aleatorios, pero sigue siendo un secreto de tipo bearer en la
URL), por eso esta ruta tiene un cupo más estricto que el resto de
/v1/workspaces.
410 WORKSPACE_INVITE_EXPIRED significa que la invitación existió y se le acabó el tiempo. 404 WORKSPACE_INVITE_NOT_FOUND cubre las revocadas, las ya aceptadas y las agotadas (enlace con max_uses), porque esos
tres casos deberían verse distintos para quien tiene el enlace que un «llegaste tarde».Ruta
string
requerido
El token de la invitación, de la URL o del correo. Opaco, de 16 a 128 caracteres.
Respuesta
APIWorkspaceInvitePreview
Errores
| Estado | Código | Cuándo |
|---|---|---|
| 403 | API_KEY_SCOPE_DENIED | Se llamó con una clave de API que no tiene el scope workspaces:invites. |
| 404 | WORKSPACE_INVITE_NOT_FOUND | El token no existe, o la invitación fue revocada, aceptada o agotada. |
| 410 | WORKSPACE_INVITE_EXPIRED | La invitación existió, pero ya venció. |
Última modificación el 28 de octubre de 2026