POST | Criar segredo de API
  • 3 minutos de leitura
  • Tema escuro
    Tema claro
  • Pdf

POST | Criar segredo de API

  • Tema escuro
    Tema claro
  • Pdf

Resumo do artigo

Crie um segredo de API no MySafe.

Requisição

POST api/mysafe/secretapi

Info

Quando um segredo de API é adicionado ao MySafe, ele é automaticamente associado ao seu criador, identificando-o como seu proprietário.

Parâmetros de requisição

Envie os parâmetros abaixo no body da requisição.

  • name - string - obrigatório - Nome atribuído ao segredo de API.


  • url - string - obrigatório - URL do site onde o segredo de API está sendo usado.


  • client_id - string - obrigatório - ID da aplicação cliente.


  • client_secret - string - O segredo de API usado para autenticar a aplicação.


  • identifier_code - string - String única definida pelo usuário para identificar o segredo de API.


  • tags - string - Palavras-chave associadas ao segredo de API.


  • notes - string - Observações sobre o segredo da API.


  • method - string - O método HTTP a ser usado para na chamada de API.


  • users_allowed - array de objetos - Dados dos usuários com acesso ao segredo de API.


    →username - string - Nome do usuário com permissão de acesso ao segredo de API


    →can_edit - boolean - Permissão de edição.    Nota: Se deixado vazio, usuários terão apenas permissão de visualização.


Atenção

Usuários com permissão can_edit = true podem inativar o segredo de API.


  • groups_allowed - array de objetos - Dados dos grupos com permissão de acesso ao segredo de API.


    →name - string - Nome do grupo com permissão de acesso ao segredo de API.


    →can_edit - boolean - Permissão de edição.    Nota: Se deixado vazio, membros do grupo terão apenas permissão de visualização.


Atenção

Membros de grupos com permissão can_edit = true podem inativar o segredo de API.

Exemplo de requisição

POST {{url}}api/mysafe/secretapi

{
    "name": "GCP",
    "url": "https://gcp.com",
    "client_id": "gf455f7g8fb5dfg8fd545bffbv",
    "client_secret": "gf5464******g8fds",
    "identifier_code": "hyga125",
    "tags": "Cloud",
    "notes": "Access details",
    "method": "get",
     "users_allowed": [
        {
            "username" : "pduarte",
            "can_edit" : true
        }
    ],
    "groups_allowed": [
        {
            "name" : "Test group"
        }
    ]
}

Resposta

HTTP/1.1 201 CREATED 
  {
    "code": 201,
    "response": {
        "status": 201,
        "message": "Api secret successfully registered",
        "error": false,
        "error_code": 0,
        "detail": "",
        "mensagem": "Api secret successfully registered",
        "erro": false,
        "cod_erro": 0
    },
    "api_entity": {
        "identifier": "43",
        "name": "GCP",
        "url": "https://gcp.com",
        "client_secret": "gf5464******g8fds",
        "client_id": "gf455f7g8fb5dfg8fd545bffbv",
        "identifier_code": "hyga125",
        "method": "get",
        "tags": "Cloud",
        "notes": "Access details",
        "users_allowed": [
            {
                "username": "pduarte",
                "can_edit": true
            }
        ],
        "groups_allowed": [
            {
                "name": "Test group",
                "can_edit": false
            }
        ],
        "shared_error": []
    }
}

Erros

400 - Bad Request.

Mensagem: "1001: Parameter 'name' was not informed!"

Possível causa: o parâmetro obrigatório name do segredo de API não foi informado.

Solução: informe o name do segredo de API e envie a requisição novamente.

Mensagem: "1001: Parameter 'url' was not informed!"

Possível causa: o parâmetro obrigatório url do segredo de API não foi informado.

Solução: informe a url do segredo de API e envie a requisição novamente.

Mensagem: "1001: Parameter 'client_id' was not informed!"

Possível causa: o parâmetro obrigatório client_id do segredo de API não foi informado.

Solução: informe o client_id do segredo de API e envie a requisição novamente.

Mensagem: "1001: Identifier already found in another API key of this user"

Possível causa: o identifier informado já está cadastrado em outro segredo de API.

Solução: informe um novo identifier do segredo de API e envie a requisição novamente.
500 - Internal Server Error.

Mensagem: "Unexpected error."

Possível causa: o erro está no servidor senhasegura.

Solução: contate o time de suporte para mais informações.


No route matched with those values.

Mensagem: "No route matched with those values.."

Possíveis causas: falha na autenticação da sua aplicação com o servidor senhasegura ou URL incorreta.

Solução: verifique os parâmetros de autenticação como Access Token URL, Client ID e Client Secret e solicite um novo token de acesso ou verifique e corrija a URL.


An invalid response was received from the upstream server .

Mensagem: "An invalid response was received from the upstream server

Possível causa: o servidor upstream pode estar demorando muito para responder, levando a um erro de timeout que é interpretado como uma resposta inválida pelo servidor proxy/gateway.

Solução: verifique a conectividade entre a origem da requisição e o servidor senhasegura.


The upstream server is timing out.

Mensagem: "The upstream server is timing out"

Possível causa: o tempo da requisição se esgotou.

Solução: verifique a conectividade entre a origem da requisição e o servidor senhasegura.



Este artigo foi útil?