Seu site pode precisar salvar solicitações, registrar o progresso dos usuários ou exibir informações de aplicativos conectados. Diga ao ChatGPT o que salvar, de onde vêm as informações e quem deve ter acesso a elas.
Escolha os recursos de armazenamento e login
Em projetos novos, o fluxo de criação do Sites pode começar com o modelo de site recomendado. Em projetos existentes, antes de solicitar uma implantação, peça ao ChatGPT para confirmar se o projeto consegue gerar artefatos de implantação compatíveis.
Descreva o que o site deve fazer para que o ChatGPT possa escolher os recursos de armazenamento e identidade necessários:
| Necessidade do site | O que pedir ao Sites |
|---|---|
| Site voltado para conteúdo ou página de destino | Um site sem estado persistente da aplicação, a menos que a experiência exija persistência |
| Registros salvos, progresso dos usuários ou pontuações em jogos | D1, um banco de dados relacional para armazenar dados estruturados de forma persistente |
| Imagens, documentos, áudio, vídeo ou outros arquivos enviados | R2, um serviço de armazenamento de objetos para arquivos |
| Arquivos enviados com metadados pesquisáveis | D1 para os metadados e R2 para o conteúdo dos arquivos |
| Site interno que precisa identificar o usuário que o acessa pelo espaço de trabalho | Identidade do usuário autenticada pelo espaço de trabalho |
| Login público ou provedor de identidade externo | Um site com autenticação habilitada |
Não peça armazenamento persistente para estados temporários da interface, como a escolha de um tema ou o fechamento de um banner. Peça esse armazenamento para dados do produto que os usuários esperam encontrar novamente ao acessar o site hospedado.
Adicione a opção Entrar com o ChatGPT
Sites públicos podem continuar abertos a todos e oferecer a opção de entrar com o ChatGPT para usar recursos que dependem da identidade do visitante, como salvar o progresso, personalizar visualizações ou acessar registros que pertencem a uma pessoa específica. Sites restritos a um espaço de trabalho já usam a identidade do ChatGPT para aplicar as configurações de compartilhamento.
Peça ao Sites para adicionar o login:
Como funciona
O Sites usa caminhos fornecidos pela plataforma para iniciar e encerrar a sessão e, em seguida, redireciona o visitante ao seu site:
<a href="/signin-with-chatgpt">Sign in with ChatGPT</a>
<a href="/signout-with-chatgpt">Sign out</a>Após o login, o Sites encaminha a identidade do visitante ao servidor pelos seguintes cabeçalhos da requisição:
oai-authenticated-user-emailcontém o endereço de e-mail autenticado.oai-authenticated-user-full-namepode conter um nome de perfil não vazio. Trate esse nome como opcional e use o endereço de e-mail se o nome não estiver disponível.
Mantenha as decisões de autorização no código do servidor e não dependa de cabeçalhos que separam as partes do nome.
Faça requisições a um site privado com um token de bypass do SIWC
Use um token de bypass do recurso Entrar com o ChatGPT (SIWC) quando um script ou serviço precisar fazer requisições a um site que exige login. Com esse token, o site aceita a requisição sem exigir uma sessão interativa no navegador.
Como proprietário do site, peça ao ChatGPT Work ou ao Codex para gerar um token para o seu site:
O agente usa generate_siwc_bypass_token e retorna siwc_bypass_bearer_token. Ao gerar um token, você substitui qualquer token existente para esse site. Atualize todos os serviços que usam o valor anterior.
Envie o token no seguinte cabeçalho da requisição HTTP:
OAI-Sites-Authorization: Bearer <siwc_bypass_bearer_token>
O Sites processa e remove esse cabeçalho antes de encaminhar a requisição ao seu site. Se o site também exigir uma credencial de API própria, envie essa credencial separadamente no cabeçalho padrão Authorization, que o Sites preserva.
Requisições que usam o token de bypass não estão associadas à identidade de um visitante autenticado. Elas não recebem os cabeçalhos de usuário autenticado descritos acima nem dão acesso aos aplicativos conectados de um visitante. Mantenha as verificações adicionais de autorização no código do servidor do seu site. Use o fluxo normal de login para recursos que dependem da identidade do visitante ou de permissões de plugins.
Trate o token como um segredo. Qualquer pessoa que o tenha pode acessar o site sem passar pela etapa de login. Guarde o token no armazenamento de segredos do seu serviço e mantenha-o fora do código executado no navegador, das URLs e do controle de versão. Se o token for exposto, gere outro e atualize os scripts e serviços que usam o anterior. O novo token funciona imediatamente, mas o anterior pode continuar válido por até cinco minutos, até que a configuração em cache expire.
Use plugins para carregar dados dos usuários no seu site
Use plugins no Sites para criar um site que carregue dados dos aplicativos conectados de cada visitante. Por exemplo, em um painel de issues, você pode ver as issues atribuídas a você, enquanto seus colegas veem as atribuídas a cada um deles. Cada visitante entra com o ChatGPT, escolhe quais contas conectadas usar e decide que acesso conceder.
O uso de plugins precisa estar habilitado no espaço de trabalho, e o acesso ao site deve ser restrito a esse espaço. Os visitantes precisam ser membros do espaço de trabalho e usar as permissões que já têm nos aplicativos. Os administradores podem consultar as permissões de cada plugin e as restrições do tenant em Habilitar o uso de plugins no Sites.
Crie um site com dados de aplicativos conectados
- Peça ao ChatGPT Work ou ao Codex para criar um site. Informe o nome do conector do plugin e o que ele deve fazer ou pergunte quais plugins estão disponíveis.
- Teste a prévia com dados reais. O agente usa suas conexões disponíveis durante a criação e a visualização prévia do site.
- Peça ao agente para publicar o site para o seu espaço de trabalho e compartilhar o link com seus colegas de equipe.
Por exemplo:
Você também pode criar uma ferramenta de busca de documentos com links para os originais ou uma visão geral do projeto que reúna chamados e mensagens.
Carregamento de dados
Ao carregar a página, o Sites lê os dados dos aplicativos conectados usando a conexão e as permissões do visitante. O Sites gerencia o cache e o recarregamento dos dados. Se necessário, peça ao ChatGPT Work ou ao Codex para adicionar uma opção de atualização manual.
Por padrão, o Sites usa a ação Carregar mais para buscar a próxima página de resultados quando o conector retorna um cursor.
Referência técnica: descoberta de plugins
O Sites usa getContext() para identificar as ações de um plugin. Essa função retorna os nomes, as descrições e os schemas das ferramentas que estão em cache, sem executar uma nova descoberta.
Para saber quais ações dos aplicativos conectados têm suporte e quando estão disponíveis, consulte Como criar e usar o ChatGPT Sites na Central de Ajuda.
Deixe os visitantes escolherem suas conexões
Para usar recursos de aplicativos conectados, o visitante entra com o ChatGPT, verifica o acesso aos aplicativos que o site solicita, escolhe a conta conectada, define o acesso que deseja conceder e retorna ao site. Compartilhar o site não dá acesso às suas contas conectadas. O site recebe dados dos aplicativos que cada visitante autoriza.
Os visitantes podem continuar sem conceder acesso aos aplicativos, mas os recursos que dependem desse acesso não funcionarão. Se um aplicativo estiver indisponível, verifique se ele está conectado ao espaço de trabalho correto e se as configurações desse espaço permitem seu uso.