Saltar al contenido principal
Los workspaces son una forma de organizar tus aplicaciones y colaborar con los miembros de tu equipo. Puedes crear, obtener, listar y eliminar workspaces usando la clase Client.

Crear un workspace

client.create_workspace devuelve un objeto Workspace.
import squarecloud as square

client = square.Client(api_key='API_KEY')

async def example():
    workspace = await client.create_workspace(name='My Workspace')
    
    print(workspace.id)              # Workspace identifier
    print(workspace.name)             # 'My Workspace'
    print(workspace.owner)            # Owner member information
    print(workspace.members)          # List of workspace members
    print(workspace.applications)     # List of applications in the workspace
    print(workspace.createdAt)        # Workspace creation timestamp

Obtener un workspace

client.get_workspace devuelve un objeto Workspace.
import squarecloud as square

client = square.Client(api_key='API_KEY')

async def example():
    workspace = await client.get_workspace(workspace_id='WORKSPACE_ID')
    
    print(workspace.id)          # Workspace identifier
    print(workspace.name)         # Workspace name
    print(workspace.owner)        # Owner member information
    print(workspace.members)      # List of workspace members
    print(workspace.applications) # List of applications in the workspace

Listar todos los workspaces

client.all_workspaces devuelve una lista de objetos Workspace.
import squarecloud as square

client = square.Client(api_key='API_KEY')

async def example():
    workspaces = await client.all_workspaces()
    
    for workspace in workspaces:
        print(f"Workspace: {workspace.name} (ID: {workspace.id})")
        print(f"  Owner: {workspace.owner.name}")
        print(f"  Members: {len(workspace.members)}")
        print(f"  Applications: {len(workspace.applications)}")

Eliminar un workspace

client.delete_workspace devuelve un objeto Response.
import squarecloud as square

client = square.Client(api_key='API_KEY')

async def example():
    response = await client.delete_workspace(workspace_id='WORKSPACE_ID')
    print(f"Workspace deleted successfully: {response.status}")

Abandonar un workspace

Si eres miembro de un workspace pero no su propietario, puedes abandonarlo usando client.leave_workspace, que devuelve un objeto Response.
import squarecloud as square

client = square.Client(api_key='API_KEY')

async def example():
    response = await client.leave_workspace(workspace_id='WORKSPACE_ID')
    print(f"Left workspace successfully: {response.status}")

Estructura de datos del workspace

El objeto Workspace contiene la siguiente información:
PropiedadTipoDescripción
idstrIdentificador único del workspace
namestrNombre del workspace
ownerMemberInformación del propietario del workspace
memberslist[Member]Lista de miembros del workspace
applicationslist[Application]Aplicaciones asociadas al workspace
createdAtstrMarca de tiempo de creación del workspace (ISO 8601)

Estructura de datos del miembro

Cada miembro de un workspace tiene la siguiente estructura:
PropiedadTipoDescripción
idstrIdentificador único del miembro
namestrNombre visible del miembro
groupstrRol o grupo del miembro en el workspace