c.Workspaces gerencia os workspaces, c.Workspaces.Members seus membros e c.Workspaces.Apps as aplicações compartilhadas.
Criar workspaces requer um plano Standard, Pro ou Enterprise.
Cada trecho abaixo roda sozinho dentro deste programa: cole um de cada vez em main e execute o goimports (veja Executando os exemplos).
Workspaces
Workspaces.List(ctx) retorna todos os workspaces dos quais você é dono ou membro, com os mesmos campos:
O dono não pode sair (400
CANNOT_LEAVE_OWNER): exclua o workspace em vez disso.
Membros
Adicionar um membro requer um código de convite que o membro gera comMembers.InviteCode(ctx). O código é válido por 5 minutos.
ID dele obtido em Workspaces.Get:
WorkspaceGroup): GroupView (view), GroupManager (manager), GroupMaintain (maintain) e GroupAdmin (admin). O Group de um membro é uma string simples, já que também pode ser "owner". Chamar um método que seu cargo não permite resulta em 403 PERMISSION_DENIED.
Aplicações compartilhadas
APPLICATIONS_LIMIT_REACHED).
Atuando sobre uma aplicação compartilhada
Para atuar sobre uma aplicação compartilhada com você, passe o id composto<appId>-<workspaceId> para qualquer método de c.Apps. Workspaces.Get e Workspaces.List retornam ids brutos, então monte-o você mesmo:
Erros
As rotas de workspace, excetoGet, enviam os ids no corpo da requisição, então um id vazio nelas resulta em 400 INVALID_ID vindo do servidor (não é um erro local). Get envia o id no caminho, então um id vazio falha localmente com INVALID_ID (status 0).
Próximos passos
IA
Chat completions pelo AI Gateway.
Referência da API de workspaces
Os endpoints REST por trás destes métodos.
Workspaces pela CLI
As mesmas ações pelo terminal.

