Autorizando aplicativos OAuth

Você pode permitir que os usuários autorizem seu aplicativo OAuth.

Ao criar um aplicativo OAuth, implemente o fluxo de aplicativos da web descrito abaixo para obter um código de autorização e depois troque-o por um token.

Solicitar código de autorização

Você deve redirecionar o usuário para o terminal /oauth/authorize com os seguintes parâmetros GET:

GET https://accounts.crowdin.com/oauth/authorize

Isso solicitará que o usuário aprove o acesso ao aplicativo à sua conta com base nos escopos especificados em REQUESTED_SCOPES e, em seguida, redirecione de volta para o REDIRECT_URI que você forneceu ao criar um aplicativo.

Parâmetros

Nome Valor Descrição
client_id string Obrigatório. Você recebe o ID do cliente para o aplicativo quando o registra.
redirect_uri string Obrigatório. O URL no seu aplicativo para o qual os usuários serão enviados após a autorização.
response_type: code string Obrigatório. O parâmetro é usado para a especificação de fluxo de um aplicativo OAuth.
scope string Obrigatório. Selecione o acesso que seu aplicativo requer na lista de escopos disponíveis. Você pode adicionar vários escopos separados por vírgula (não é necessário usar aspas).
state string Um texto aleatório indescritível. Use-o para proteção extra contra ataques de falsificação de solicitação entre sites.

O seguinte Url de autorização será criado:

https://accounts.crowdin.com/oauth/authorize?client_id=m50YenPpqac8u5D4dnK&redirect_uri=https://impact-mobile.com/auth/crowdin&response_type=code&scope=project+tm&state=d131dd02c5e6eec4

Após a autorização bem-sucedida, os usuários são redirecionados de volta ao seu site:

https://impact-mobile.com/auth/crowdin/?code=def50200df1fbb5ebac05f9288850d9e...0835bd3cf42&state=d131dd02c5e6eec4

Se a autorização foi recusada, os usuários são redirecionados para o seu site com um erro:

https://impact-mobile.com/auth/crowdin/?error=access_denied&state=d131dd02c5e6eec4

Os usuários são redirecionados de volta ao seu site por Crowdin

Se um usuário autorizar o aplicativo, o Crowdin redirecionará de volta ao seu site e você poderá trocar o código recebido por um token de acesso:

POST https://accounts.crowdin.com/oauth/token

Parâmetros

Nome Valor Descrição
grant_type: authorization_code string Obrigatório. O parâmetro é usado para a especificação de fluxo de um aplicativo OAuth.
client_id string Obrigatório. Você recebe o ID do cliente para o aplicativo quando o registra.
client_secret string Obrigatório. Você recebe o segredo do cliente para o aplicativo quando o registra.
redirect_uri string Obrigatório. O URL no seu aplicativo para o qual os usuários serão enviados após a autorização.
code string Obrigatório. Código recebido do texto de consulta de retorno de chamada.

Por exemplo, a solicitação em ondulação assume o seguinte formato:

curl -X POST \ https://accounts.crowdin.com/oauth/token \ -H "content-type: application/json" \ -d "{ \"grant_type\":\"authorization_code\", \"client_id\":\"m50YenPpqac8u5D4dnK\", \"client_secret\":\"yz35kYtjox...YE9Am\", \"redirect_uri\":\"https://impact-mobile.com/auth/crowdin\", \"code\":\"def50200df1fbb5ebac05f9288850d9e...0835bd3cf42\" }"

Resposta

Por padrão, a resposta assume o seguinte formato:

{
    "access_token":"eyJ0eXAiOiJKV1QiLCJhbGciOiJS...lag1e_Zk4EdJ5diYfz0",
    "token_type":"bearer",
    "expires_in": 7200,
    "refresh_token": "b213c684ccaa7db1217e946e6ad...fff7ae"
}

Solicitações para a API com o token de acesso retornado

O token de acesso agora permite fazer solicitações para API do Crowdin em nome do usuário autorizado.

Por exemplo, em curl, você pode definir o seguinte cabeçalho de autorização:

curl -H "Authorization: Bearer ACCESS_TOKEN" https://api.crowdin.com/api/v2/projects

Token de atualização

O token de acesso recebido depois que um usuário autoriza o aplicativo a expirar. O token de acesso expira no número de segundos definido na resposta.

Para atualizar um token sem exigir que o usuário seja redirecionado, envie uma solicitação POST com os seguintes parâmetros do corpo para o servidor de autorização:

POST https://accounts.crowdin.com/oauth/token

Parâmetros

Nome Valor Descrição
grant_type: refresh_token string Obrigatório. O parâmetro é usado para a especificação de fluxo de um aplicativo OAuth.
client_id string Obrigatório. Você recebe o ID do cliente para o aplicativo quando o registra.
client_secret string Obrigatório. Você recebe o segredo do cliente para o aplicativo quando o registra.
refresh_token string Obrigatório. Atualiza o token recebido da última resposta de autorização.

Por exemplo, a solicitação em ondulação assume o seguinte formato:

curl -X POST \ https://accounts.crowdin.com/oauth/token \ -H "content-type: application/json" \ -d "{ \"grant_type\":\"refresh_token\", \"client_id\":\"m50YenPpqac8u5D4dnK\", \"client_secret\":\"yz35kYtjox...YE9Am\", \"refresh_token\":\"b213c684ccaa7db1217e946e6ad...fff7ae\" }"

Resposta

Por padrão, a resposta assume o seguinte formato:

{
    "access_token":"eyJ0eXAiOiJKV1QiLCJhbGciOiJS...ZjFkMWI4OWFlIiwiaWF",
    "token_type":"bearer",
    "expires_in": 7200,
    "refresh_token": "ea506ea4c37aa152f0a91ed2482...4a0c567"
}

URLs de redirecionamento

Você pode registrar um ou mais URLs de redirecionamento ao criar um aplicativo OAuth no Crowdin.

Por motivos de segurança, se o URL não estiver incluído na informações da aplicação você não poderá redirecionar usuários para este URL após a autorização.

Este artigo foi útil?