Espacios de trabajo
Administre espacios de trabajo, el pago del espacio de trabajo y los miembros del espacio de trabajo.
Los puntos finales del espacio de trabajo requieren autenticación de portador.
Utilice puntos finales del espacio de trabajo para la configuración y membresía de la organización. Utilice puntos finales del proyecto para los grupos de uso compartido privados más reducidos dentro de un espacio de trabajo.
Espacios de trabajo
| Método | Camino | Propósito |
|---|---|---|
| GET | /v1/workspaces |
Listar espacios de trabajo accesibles |
| POST | /v1/workspaces |
Crear un espacio de trabajo |
| PATCH | /v1/workspaces/:workspaceId |
Actualizar la configuración del espacio de trabajo |
| POST | /v1/workspaces/:workspaceId/checkout |
Obtener URL de pago del espacio de trabajo |
El espacio de trabajo name sigue restricciones de subdominio: de 3 a 30 caracteres, letras minúsculas, números y guiones únicamente. Se rechazan los nombres reservados. PATCH /v1/workspaces/:workspaceId utiliza la semántica PATCH: los campos omitidos permanecen sin cambios.
POST /v1/workspaces/:workspaceId/checkout devuelve una URL para completar o volver a intentar el pago del espacio de trabajo.
Miembros del espacio de trabajo
| Método | Camino | Propósito |
|---|---|---|
| GET | /v1/workspaces/:workspaceId/members |
Listar miembros en un espacio de trabajo |
| PUT | /v1/workspaces/:workspaceId/members |
Agregar/actualizar miembros de forma masiva |
| DELETE | /v1/workspaces/:workspaceId/members/:userId |
Eliminar un miembro |
| DELETE | /v1/workspaces/:workspaceId/members |
Eliminar miembros de forma masiva |
Los roles son owner, admin y member.
La adición/actualización masiva de miembros acepta un cuerpo JSON con userIds y role. Envíe una identificación de usuario o varias; cada usuario listado se agrega al espacio de trabajo o se actualiza su función.
{ "userIds": ["user-id-1", "user-id-2"], "role": "member" }La respuesta contiene un resultado para cada posición de entrada más el recuento de miembros autorizados después de la operación:
{
"results": [
{
"inputIndex": 0,
"userId": "user-id-1",
"status": "added",
"workspaceId": "workspace-id",
"role": "Member"
},
{
"inputIndex": 1,
"userId": "user-id-2",
"status": "unchanged",
"code": "ALREADY_MEMBER",
"workspaceId": "workspace-id",
"role": "Member"
}
],
"memberCount": 3
}Los estados de inserción de miembros del espacio de trabajo son added, updated, unchanged, skipped y failed. code está presente cuando un resultado necesita explicación, incluidos ALREADY_MEMBER, DUPLICATE_INPUT, USER_NOT_FOUND y ROLE_NOT_ALLOWED. Los errores de inserción esperados para usuarios individuales se informan en results; inspeccione cada resultado en lugar de asumir que todo el lote cambió porque la solicitud se realizó correctamente.
Las eliminaciones masivas utilizan un parámetro de consulta userIds separado por comas en lugar de un cuerpo de solicitud, porque algunos intermediarios eliminan los cuerpos de las solicitudes DELETE.
DELETE /v1/workspaces/:workspaceId/members?userIds=user-id-1,user-id-2
Authorization: Bearer <token>La eliminación masiva devuelve el mismo sobre de resultados por entrada y el mismo memberCount autorizado. Los estados de eliminación son deleted, skipped y failed; Los códigos explicativos incluyen DUPLICATE_INPUT, MEMBER_NOT_FOUND y ROLE_NOT_ALLOWED. Un punto final de eliminación de un solo miembro utiliza la misma operación transaccional masiva internamente.
Las llamadas masivas de miembros aceptan hasta 100 ID de usuario por solicitud.
La membresía del espacio de trabajo hace que un usuario esté disponible para los recursos del espacio de trabajo y la membresía del proyecto, pero no otorga automáticamente acceso a todos los paquetes o pistas privados relacionados con el proyecto. Agregue también el usuario a los proyectos relevantes.