Agora você pode gerenciar quem tem acesso aos seus sites WordPress por meio da API da Kinsta.

Adicionamos três endpoints que permitem consultar os detalhes de um usuário específico da empresa e atualizar suas permissões em nível de empresa ou de site. O endpoint existente para listar os usuários da empresa também retorna mais informações sobre a função de cada pessoa e seu método de autenticação de dois fatores (2FA).

Esta atualização também introduz um novo ID de referência que facilita a obtenção de suporte quando uma operação da API falha.

Consulte os usuários da empresa com suas funções e detalhes de 2FA

O endpoint existente Obter a lista de usuários da empresa foi ampliado para retornar mais informações sobre cada usuário.

Anteriormente, você podia consultar informações básicas, como nome, endereço de e-mail e imagem de perfil de um usuário. Agora, a resposta inclui um array capabilities que descreve as funções do usuário em nível de empresa e de site, além de um campo type_2fa que indica o método de autenticação configurado.

Para consultar os usuários da sua empresa, envie uma solicitação GET:

curl --request GET \
  --url https://api.kinsta.com/v2/company/{company_id}/users \
  --header 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Agora, a resposta inclui os campos adicionais:

{
  "company": {
    "users": [
      {
        "user": {
          "id": "54fb80af-576c-4fdc-ba4f-b596c83f15a1",
          "email": "[email protected]",
          "image": "https://www.gravatar.com/avatar/205e460b479e2e5b48aec07710c08d50",
          "full_name": "John Doe",
          "type_2fa": "email"
        },
        "capabilities": [
          {
            "id": "9c1f7b2e-3d4a-4f5b-8c6d-1e2f3a4b5c6d",
            "type": "company",
            "role": "company-admin",
            "company_id": "54fb80af-576c-4fdc-ba4f-b596c83f15a1",
            "site_id": null
          }
        ]
      }
    ]
  }
}

Cada capacidade identifica a função atribuída e a empresa ou o site associado. O campo type_2fa pode conter um método de autenticação configurado ou null.

Essas informações adicionais são úteis para revisar o acesso da equipe, verificar as funções atribuídas ou desenvolver ferramentas internas que mostram quem pode acessar recursos específicos.

Obtenha os dados de um usuário específico da empresa pelo ID

O novo endpoint Obter um usuário da empresa por ID permite consultar os detalhes de uma pessoa sem precisar obter a lista completa de usuários da empresa.

Informe o ID da empresa e o ID do usuário na solicitação:

curl --request GET \
  --url https://api.kinsta.com/v2/company/{id}/users/{id_user} \
  --header 'Authorization: Bearer <YOUR_TOKEN_HERE>'

A resposta contém as informações básicas da pessoa, o método de 2FA e as capacidades atribuídas:

{
  "company": {
    "user_by_id": {
      "user": {
        "id": "9c1e4d2a-1b3c-4f5a-8d6e-7f8a9b0c1d2e",
        "email": "[email protected]",
        "full_name": "John Doe",
        "type_2fa": "email"
      },
      "capabilities": [
        {
          "role": "company-developer",
          "id_company": "54fb80af-576c-4fdc-ba4f-b596c83f15a1",
          "id_site": null
        }
      ]
    }
  }
}

Você pode usar esse endpoint para verificar o acesso atual de uma pessoa antes de alterar sua função ou incluir suas permissões em um relatório interno de acesso.

Altere a função de um usuário na empresa

O novo endpoint Editar as capacidades de um usuário na empresa permite alterar a função de um usuário existente no nível da empresa.

Ele permite atribuir três funções:

  • company-admin, que concede acesso administrativo em nível de empresa.
  • company-developer, que permite gerenciar sites e recursos relacionados ao desenvolvimento, sem permissões de cobrança.
  • company-billing, que concede acesso às informações de cobrança, sem acesso aos sites WordPress.

Por exemplo, a solicitação a seguir altera a função de um usuário existente para Desenvolvedor da empresa:

curl --request POST \
  --url https://api.kinsta.com/v2/company/{company_id}/users/company-capabilities \
  --header 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  --header 'Content-Type: application/json' \
  --data '{
    "user_id": "54fb80af-576c-4fdc-ba4f-b596c83f15a1",
    "role": "company-developer"
  }'

Quando a solicitação for aceita, a resposta inclui um ID de operação:

{
  "message": "User capabilities updated for the company",
  "status": 202,
  "operation_id": "company:set-company-user-capabilities-54fb80af-576c-4fdc-ba4f-b596c83f15a1"
}

Você pode usar o operation_id retornado para verificar o status da operação.

As funções no nível da empresa determinam quais recursos uma pessoa pode acessar. Portanto, alterar uma função pode conceder ou remover o acesso a sites, informações de cobrança ou configurações da empresa. Consulte a documentação sobre funções e permissões de usuário para conhecer os acessos associados a cada função.

Atualize as permissões dos usuários em sites individuais

Você também pode gerenciar o acesso no nível do site com o novo endpoint Editar as capacidades dos usuários no site.

Diferentemente das permissões no nível da empresa, as capacidades em nível de site se aplicam a sites WordPress específicos. Isso é útil quando você deseja conceder acesso a um único site para um desenvolvedor ou cliente, sem conceder acesso a toda a empresa.

O endpoint aceita um array user_ids e um array site_capabilities, permitindo especificar vários usuários e atribuições de acesso a sites em uma única solicitação.

Cada atribuição de site permite definir duas funções:

  • site-admin, que concede ao usuário acesso administrativo ao site atribuído e aos seus ambientes, sujeito às restrições da função.
  • site-developer, que concede acesso aos ambientes de teste do site, com permissões limitadas.

Por exemplo, esta solicitação atribui a função de Desenvolvedor do site a um usuário:

curl --request POST \
  --url https://api.kinsta.com/v2/company/{company_id}/users/site-capabilities \
  --header 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  --header 'Content-Type: application/json' \
  --data '{
    "user_ids": [
      "54fb80af-576c-4fdc-ba4f-b596c83f15a1"
    ],
    "site_capabilities": [
      {
        "site_id": "54fb80af-576c-4fdc-ba4f-b596c83f15a1",
        "role": "site-developer"
      }
    ]
  }'

A resposta inclui um ID de operação que pode ser usado para acompanhar a atualização:

{
  "message": "Users capabilities updated for the site",
  "status": 202,
  "operation_id": "company:set-site-user-capabilities-54fb80af-576c-4fdc-ba4f-b596c83f15a1"
}

Para equipes que gerenciam vários sites de clientes, esse endpoint permite atribuir permissões de site por meio de um script de onboarding ou de um sistema de gerenciamento interno.

Solucione problemas em operações da API com um novo ID de referência de suporte

Também adicionamos um campo opcional support_reference_id às respostas dos endpoints da API que executam ações no MyKinsta.

Anteriormente, essas solicitações retornavam um operation_id que você podia usar para verificar o andamento da operação. No entanto, como os IDs de operação são armazenados em cache por tempo limitado, pode ser difícil identificar a ação subjacente ao investigar uma solicitação que falhou.

O novo support_reference_id identifica a ação original, oferecendo ao Suporte da Kinsta uma maneira mais direta de investigar o que aconteceu.

O campo pode aparecer na resposta inicial da API e ao verificar a operação por meio do endpoint existente Obter o status da operação:

curl --request GET \
  --url https://api.kinsta.com/v2/operations/{operation_id} \
  --header 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Por exemplo, uma operação que ainda está em andamento pode retornar:

{
  "status": 202,
  "message": "Operation in progress",
  "support_reference_id": 12345,
  "data": null
}

Se uma ação da API falhar, você pode fornecer o ID de referência de suporte à nossa equipe de suporte para ajudar a equipe a localizar e investigar a ação correspondente.

Como o campo é opcional, as integrações devem continuar usando operation_id para acompanhar o andamento das operações e preservar support_reference_id quando estiver disponível.

Gerencie o acesso dos usuários com suas próprias ferramentas

Essas adições permitem criar fluxos de trabalho mais completos de gerenciamento de acesso de usuários com a API da Kinsta. Você pode consultar as permissões atuais de uma pessoa, alterar sua função na empresa ou atribuir acesso no nível do site sem precisar gerenciar cada alteração individualmente no painel de controle.

O novo ID de referência de suporte também oferece às equipes um identificador útil para manter nos registros de operações da API e investigar falhas.

Explore os endpoints disponíveis e os formatos de solicitação na documentação da API da Kinsta.