Ainda não tem acesso? Estude com a gente! Matricule-se
Ainda não tem acesso? Estude com a gente! Matricule-se

Access is denied due to invalid credentials

Olá, Observei que já existe uma pergunta no fórum sobre este assunto, porém ainda estou tendo problemas para conseguir executar o código sem o erro acima. Alguém tem informações mais atualizadas sobre isso? Sobre quais informações de fato precisam estar informadas no código?

//Watson eu quero usar a sua API
//requerimento para essa API

var AssistantV1 = require('watson-developer-cloud/assistant/v1');

//vou te passar o que você precisa acessar
//nome de usuario, senha, data de versão

var assistant = new AssistantV1({
  username: '---',
  password: '---',
  version: '2020-04-01'
});

var params = {
  workspace_id: '---'
}; 

//vou mandar uma mensagem
assistant.message(params, resposta);

 function resposta(error, response) {
    if (error) {
      console.error(error);
    } else {
      console.log(response.output.text[0]);
    }
  };

Erro

C:\Users\stephanie\Desktop\aplicacao-watson-assistant>node conversation.js
Forbidden: Access is denied due to invalid credentials.
    at formatError (C:\Users\stephanie\Desktop\aplicacao-watson-assistant\node_modules\ibm-cloud-sdk-core\lib\requestwrapper.js:111:17)
    at C:\Users\stephanie\Desktop\aplicacao-watson-assistant\node_modules\ibm-cloud-sdk-core\lib\requestwrapper.js:259:19
    at processTicksAndRejections (internal/process/task_queues.js:97:5) {
  code: 403,
  body: '{"code":403,"error":"Forbidden"}',
  headers: {
    'content-type': 'application/json',
    'content-length': '34',
    'strict-transport-security': 'max-age=31536000; includeSubDomains;',
    'x-edgeconnect-midmile-rtt': '54',
    'x-edgeconnect-origin-mex-latency': '31',
    date: 'Mon, 22 Jun 2020 14:53:28 GMT',
    connection: 'close'
  }
}
1 resposta

Olá Jesiane tudo bem com você??

O erro informado, conforme a documentação técnica trata de:

Eu estou obtendo uma resposta 403
Uma Chave de API válida está sendo usada, mas ela não é a chave correta para a instância de serviço que você está tentando acessar programaticamente.

Outro ponto que observei é que você está utilizando a V1 da IBM e no caso, existe a V2 que trata aqui. Além de ser mais atual, ela tem facilidade na implementação e um tutorial completo na documentação de como aplicar desde a instalação até o deploy.

Verifica por favor se atende e qualquer dúvida é só retornar aqui! Ele está em português! =)