Qual é a maneira mais simples de encontrar um ID de equipe slack e um ID de canal?

106

Estamos tentando configurar o deep linking no slack, conforme descrito aqui:

https://api.slack.com/docs/deep-linking

O documento afirma que para abrir uma equipe específica, deve-se utilizar o seguinte URL:

slack: // abrir? equipe = {TEAM_ID}

Abra o Slack e troque as equipes para a equipe especificada. O TEAM_ID fornecido deve ser uma string, como T12345.

Além disso, para abrir um canal em equipe, deve-se utilizar a seguinte URL:

slack: // canal? equipe = {TEAM_ID} & id = {CHANNEL_ID}

Abra o canal especificado pelo CHANNEL_ID fornecido no campo id, como C024BE91L. Você também deve especificar a equipe com um TEAM_ID.

Minha pergunta é simples. Onde posso descobrir de que TEAM_ID preciso e de que CHANNEL_ID preciso?

Ifboulanger
fonte
Dependendo de como você está fazendo isso, você deve conseguir recuperar um POST com todas as informações necessárias: api.slack.com/outgoing-webhooks por exemplo
ntgCleaner
A resposta aceita não funciona mais em 2019. Considere alterar a resposta aceita para @SamuelDev, que funciona. stackoverflow.com/a/57246565/190298
Nic de
1
Obrigado @Nic! Só fiz isso, desculpe a demora.
lfboulanger

Respostas:

32

Em julho de 2019, parecia que o id da equipe e o id do canal já estavam sendo exibidos na web.

insira a descrição da imagem aqui

Como você pode ver na imagem, do segundo ao último nó é o id da equipe (prefixado com "T") e o último nó é o id do canal (prefixado com "C"). Tudo o que você precisa fazer é abrir o slack através da web, ir para o canal específico e você pode ver a mudança de url para algo próximo à imagem acima.

SamuelDev
fonte
1
Esta é a única abordagem que funcionou para mim em 2019.
Nic
5
NOTA : você realmente não precisa iniciar a IU da web - apenas copie o link para qualquer mensagem no canal público de interesse no aplicativo cliente de sua escolha - e inspecione o URL resultante
Anton K
1
@AntonK hmmm, não tenho certeza de como fazer isso. Eu tentei isso no meu aplicativo Windows Slack (v4.2.0). Copiei um link para uma das mensagens em um de nossos canais públicos, ea URL ficou assim: https://team.slack.com/archives/C########/p################. Provavelmente consigo obter o id do canal, mas não o id da equipe.
SamuelDev
106

Esta é a maneira mais fácil de encontrar manualmente os IDs de folga

1. Qualquer ID de canal

Abra a página do Slack ( http://yourteam.slack.com ) e simplesmente abra o canal. O ID do canal é exibido no URL do navegador:

obter qualquer ID de canal


2. Qualquer ID de usuário

Para encontrar um ID de usuário, você precisa abrir o console do dev-tools do navegador e inspecionar o link do usuário na barra lateral. O ID do usuário pode ser encontrado no atributo HTML "data-member-id":

obter qualquer ID de usuário

Ou no slack: (1) Clique no nome do usuário e escolha (2) "Mostrar Perfil". Em seguida, abra o menu "..." e você verá a opção (3) "Copiar ID de membro ..." - para obter sua própria ID de usuário através da IU, você deve clicar no logotipo da equipe no canto superior esquerdo e, em seguida, escolha "Perfil e conta" (isso não está incluído na captura de tela)

obter ID de usuário dos membros da equipe


3. ID da equipe

Basta abrir as ferramentas de desenvolvimento do seu navegador, alternar para a guia "Console" e inserir o texto boot_data.team_idno console. Isso exibirá seu ID de equipe:

obter o ID da equipe

Philipp
fonte
3
Obrigado @ Paulin'tHout - de alguma forma eu confundi o ID da equipe com o ID do usuário ... Eu atualizei a resposta para também descrever como obter rapidamente o ID da equipe
Philipp,
1
Para encontrar o ID do canal e o ID da equipe, de acordo com a pergunta original, esta é definitivamente a mais rápida e fácil e deve ser a resposta aceita.
gbe
2
parece que os formatos de url podem ter mudado para app.slack.com/client/<team_id>/<channel_id>/details/…
Ralph Callaway
74

Resposta ligeiramente diferente das existentes.

Sempre que eu queria descobrir rapidamente quais são os ids relevantes para uma equipe específica , eu simplesmente abri o cliente da Web do Slack e inspecionei os elementos relevantes. (Usando Chrome Dev Tools)

https://my.slack.com/messages

A <a>tag que vincula a um usuário tende a incluir um data-member-idatributo, cujo conteúdo é o id do usuário.

O mesmo se aplica aos canais. Se você inspecionar qualquer um dos canais na barra lateral, poderá ver que eles estão ordenados como <li>elementos de lista, cada um contendo o id do canal no nome da classe.

Para o id da equipe, você pode abrir todo o código-fonte do cliente slack web e CTRL-F para o seu team_domain(por exemplo, myslack55para myslack55.slack.com) e isso deve encontrar o id da equipe.

Basicamente, está tudo escondido à vista de todos. Você apenas precisa saber onde procurar ;)

Wilhelm Klopp
fonte
Obrigado! Esse é o método mais fácil que vi até agora!
lfboulanger
as informações do domínio_do_equipe estão faltando :( eles podem ter removido?
Carlo
2
Solução muito inteligente. Eu não vejo isso, no entanto. Navegue até https://my.slack.com/messagesDesenvolvedor> Fonte (no Chrome). A pesquisa mostra apenas este bloco:// called by ssb when online var proceedToApp = function(last_team_domain_arg) { // do nothing, we're already in the app }
mbb
4
Mesmo após a resposta de @WilhelmKlopp, tive dificuldade em encontrar o ID da equipe. Para mim, a maneira mais fácil era: 1. pesquise api_tokenno código-fonte da página e copie esse código 2. abra no navegador: https://slack.com/api/auth.test?pretty=1&token=<token-from-prev-step-here>3. no team_idvalor da cópia de resposta
bsmaniotto
11
Eu encontrei team_idprocurando por ele na fonte da página. Estava em um objeto chamado boot_data.
zackdever
40

A resposta marcada como correta aqui não funciona para mim, mas posso ter encontrado uma maneira ainda mais fácil com tokens de teste.

  1. Crie um token de teste: https://api.slack.com/docs/oauth-test-tokens

  2. Role para baixo até "experimente agora!" botão. Você chega em auth.test: https://api.slack.com/methods/auth.test/test

  3. Escolha a equipe que deseja testar e clique em Método de teste . Você pode encontrar seu team_id(e user_id) lá.

  4. Faça o mesmo para channels.list. Você pode clicar em "Exibir outro método" e pesquisar ou ir para: https://api.slack.com/methods/channels.list/test

  5. Escolha a equipe novamente e o método de teste . Cmd+ Fatravés do channelsobjeto procurando o que channel_idvocê precisa.

mbb
fonte
3
Obrigado, este foi, para mim, o método mais fácil.
Omertron
26

Em 2017, parece que a folga tornou mais fácil encontrar.

Esta é a maneira mais fácil de localizar manualmente os IDs de equipe.

Visite sua sala ociosa por meio de um navegador da web. Clique com o botão direito> "Exibir código-fonte"

E pesquise por Team_id:

Rocky Kev
fonte
7

Você também pode simplesmente clicar com o botão direito no canal slack (ou mensagem direta) no aplicativo de desktop e selecionar a opção 'Copiar link'.

Isso lhe dará um URL no formato: https://org.slack.com/messages/[channel-ID]

Eu atesto que isso funciona no High Sierra Mac OSX - Slack 3.1.1

Joel
fonte
Esta é de longe a melhor e mais simples resposta. Obrigado
Joaquin Iurchuk
2

ID da equipe

A maneira mais fácil de obter o ID da equipe é usar o método auth.test da API do Slack com o token de acesso.

ID do canal

Depende se você deseja um canal público ou privado, você pode chamar o respectivo método da API Slack para obter uma lista de todos os canais incl. seus IDs.

Observe que você só pode ver canais privados para os quais o usuário / bot que pertence ao seu token de acesso foi convidado.

Token de acesso

Para obter o token de acesso, você pode solicitar um "token de teste" na página Slack API em "Test Token" (recomendado apenas para fins de teste pelo Slack). Ou você pode criar um aplicativo Slack e instalá-lo para sua equipe do Slack usando o Oath, que também irá gerar um token de acesso específico do aplicativo.

Erik Kalkoken
fonte
É ridículo que o Slack não forneça um método de pesquisa de canais por nome. O FAQ deles sugere apenas a iteração de toda a lista de canais para encontrar o que você deseja: Consulte "Como faço para encontrar a ID de um canal se eu tiver apenas seu # nome?" Em api.slack.com/faq
Camden S.
@CamdenS .: Agora você pode, com o recurso de menu interativo recém-adicionado. Confira minha resposta correspondente: Auto-completar canal
Erik Kalkoken