> For the complete documentation index, see [llms.txt](https://docs.roboteasy.tech/orquestrador/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.roboteasy.tech/orquestrador/geral/integracoes-via-api/manipular-cofre-de-senhas.md).

# Manipular Cofre de Senhas

Lista de APIs disponíveis para captura de cofres e lista de senhas do cofre.

{% hint style="warning" %}
Para acesso aos endpoints listados abaixo, é necessário que o usuário tenha permissões de cofre. Usuários com perfil de "integração" e "X-API-KEY" não terão permissão.
{% endhint %}

### Cofre de Senhas

## Buscar todos os cofres

<mark style="color:blue;">`GET`</mark> `https://app.rpaidea.com/api/company-key-manager-group`

Busca todos os grupos de cofres.

#### Headers

| Name                                            | Type   | Description                                              |
| ----------------------------------------------- | ------ | -------------------------------------------------------- |
| Authorization<mark style="color:red;">\*</mark> | String | Bearer {RESULT-OF-LOGIN} e permissão de leitura ao cofre |

{% tabs %}
{% tab title="200: OK " %}

```json
[{
    "id":1878098,
    "name":"cofre-test",
    "user": { 
        "idUser":123456,
        "name":"Nome do Usuario"
    }
}]
```

{% endtab %}
{% endtabs %}

## Buscar todos cofres (com filtro)

<mark style="color:green;">`POST`</mark> `https://app.rpaidea.com/api/company-key-manager-group/filter`

Busca todos os grupos de cofres com paginação

#### Headers

| Name                                            | Type   | Description                                              |
| ----------------------------------------------- | ------ | -------------------------------------------------------- |
| Authorization<mark style="color:red;">\*</mark> | String | Bearer {RESULT-OF-LOGIN} e permissão de leitura ao cofre |

#### Request Body

| Name                               | Type   | Description                                                                                                                                                                                                  |
| ---------------------------------- | ------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| <mark style="color:red;">\*</mark> | object | <p>{</p><p> "pagination": { </p><p>   "sortBy": null, </p><p>   "descending": false, </p><p>   "page": 0, </p><p>   "rowsPerPage": 5, </p><p>   "rowsNumber": 0,</p><p>   "search": ""</p><p> } </p><p>}</p> |

{% tabs %}
{% tab title="200: OK Lista paginada" %}

```json
{
  "content": [{
    "user": {
      "idUser": 1111,
      "name": "test test"
    },
    "name": "cofre-test",
    "id": 2222
  }],
  "pageable": {
    "sort": {
      "sorted": false,
      "unsorted": true,
      "empty": true
    },
    "pageSize": 5,
    "pageNumber": 0,
    "offset": 0,
    "paged": true,
    "unpaged": false
  },
  "totalPages": 1,
  "totalElements": 1,
  "last": true,
  "first": true,
  "sort": {
    "sorted": false,
    "unsorted": true,
    "empty": true
  },
  "numberOfElements": 1,
  "size": 5,
  "number": 0,
  "empty": false
}
```

{% endtab %}
{% endtabs %}

## Buscar um cofre pelo ID

<mark style="color:blue;">`GET`</mark> `https://app.rpaidea.com/api/company-key-manager-group/:id`

Retorna os dados de um cofre específico.

#### Path Parameters

| Name                                 | Type   | Description |
| ------------------------------------ | ------ | ----------- |
| id<mark style="color:red;">\*</mark> | Number | Id do cofre |

#### Headers

| Name                                            | Type   | Description                                              |
| ----------------------------------------------- | ------ | -------------------------------------------------------- |
| Authorization<mark style="color:red;">\*</mark> | String | Bearer {RESULT-OF-LOGIN} e permissão de leitura ao cofre |

{% tabs %}
{% tab title="200: OK " %}

```json
{
    "user": {
      "idUser": 1111,
      "name": "test test"
    },
    "name": "cofre-test",
    "id": 2222
 }
```

{% endtab %}
{% endtabs %}

## Criar um cofre de senhas

<mark style="color:green;">`POST`</mark> `https://app.rpaidea.com/api/company-key-manager-group`

#### Headers

| Name                                            | Type   | Description                                              |
| ----------------------------------------------- | ------ | -------------------------------------------------------- |
| Authorization<mark style="color:red;">\*</mark> | String | Bearer {RESULT-OF-LOGIN} e permissão de escrita ao cofre |

#### Request Body

| Name                               | Type   | Description                                                     |
| ---------------------------------- | ------ | --------------------------------------------------------------- |
| <mark style="color:red;">\*</mark> | object | <p>{</p><p>    "id":</p><p>    "name": "nome-cofre"</p><p>}</p> |

{% tabs %}
{% tab title="200: OK " %}

{% endtab %}
{% endtabs %}

## Excluir um cofre de senhas

<mark style="color:red;">`DELETE`</mark> `https://app.rpaidea.com/api/company-key-manager-group/:id`

#### Path Parameters

| Name                                 | Type   | Description |
| ------------------------------------ | ------ | ----------- |
| Id<mark style="color:red;">\*</mark> | Number | Id do cofre |

#### Headers

| Name                                            | Type   | Description                                               |
| ----------------------------------------------- | ------ | --------------------------------------------------------- |
| Authorization<mark style="color:red;">\*</mark> | String | Bearer {RESULT-OF-LOGIN} e permissão de exclusão do cofre |

{% tabs %}
{% tab title="200: OK " %}

{% endtab %}
{% endtabs %}

### Permissões do Cofre

## Listar usuários com permissão ao cofre

<mark style="color:blue;">`GET`</mark> `https://app.rpaidea.com/api/company-key-manager-group/:id/allowed-users`

Retorna a lista de usuários que possuem permissão de leitura de um cofre de senhas.

#### Path Parameters

| Name                                 | Type   | Description |
| ------------------------------------ | ------ | ----------- |
| id<mark style="color:red;">\*</mark> | number | id do cofre |

#### Headers

| Name                                            | Type   | Description                                              |
| ----------------------------------------------- | ------ | -------------------------------------------------------- |
| Authorization<mark style="color:red;">\*</mark> | String | Bearer {RESULT-OF-LOGIN} e permissão de escrita ao cofre |

{% tabs %}
{% tab title="200: OK Lista de usuários com permissões no grupo" %}

```json
[{
  "idUser": 90,
  "name": "test test",
  "username": "test@roboteasy.com",
  "avatar": "base64",
  "profile": {
    "id": 3,
    "name": "ADMIN"
  },
  "disable": false,
  "favoriteDashboard": 2616,
  "lastLogin": null
}]
```

{% endtab %}
{% endtabs %}

## Incluir usuários com permissão ao cofre

<mark style="color:green;">`POST`</mark> `https://app.rpaidea.com/api/company-key-manager-group/:id/allow`

Permite dar permissão de leitura a um cofre.

#### Path Parameters

| Name                                 | Type   | Description |
| ------------------------------------ | ------ | ----------- |
| id<mark style="color:red;">\*</mark> | number | id do cofre |

#### Headers

| Name                                            | Type   | Description                                              |
| ----------------------------------------------- | ------ | -------------------------------------------------------- |
| Authorization<mark style="color:red;">\*</mark> | String | Bearer {RESULT-OF-LOGIN} e permissão de escrita ao cofre |

#### Request Body

| Name                               | Type   | Description                              |
| ---------------------------------- | ------ | ---------------------------------------- |
| <mark style="color:red;">\*</mark> | object | \[1,2,3] (array com os ids dos usuários) |

{% tabs %}
{% tab title="200: OK " %}

```json
```

{% endtab %}
{% endtabs %}

### Senhas do Cofre

## Buscar todas as senhas do cofre

<mark style="color:green;">`POST`</mark> `https://app.rpaidea.com/api/company-key-manager/filter`

Buscar todas as senhas do cofre com paginação

#### Headers

| Name          | Type   | Description                                              |
| ------------- | ------ | -------------------------------------------------------- |
| Authorization | String | Bearer {RESULT-OF-LOGIN} e permissão de escrita ao cofre |

#### Request Body

| Name                               | Type   | Description                                                                                                                                                                                                                          |
| ---------------------------------- | ------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| <mark style="color:red;">\*</mark> | object | <p>{ </p><p>"groupId": 1878098, </p><p>"pagination": { </p><p>  "sortBy": null, </p><p>  "descending": false, </p><p>  "page": 0, </p><p>  "rowsPerPage": 5, </p><p>  "rowsNumber": 0, </p><p>  "search": "" </p><p>  }</p><p> }</p> |

{% tabs %}
{% tab title="200: OK Lista paginada" %}

```javascript
{
  "content": [{
    "id": 1878099,
    "code": "teste",
    "keyManager": "",
    "description": "teste"
  }],
  "pageable": {
    "sort": {
      "sorted": false,
      "unsorted": true,
      "empty": true
    },
    "pageSize": 5,
    "pageNumber": 0,
    "offset": 0,
    "paged": true,
    "unpaged": false
  },
  "totalPages": 1,
  "totalElements": 1,
  "last": true,
  "first": true,
  "sort": {
    "sorted": false,
    "unsorted": true,
    "empty": true
  },
  "numberOfElements": 1,
  "size": 5,
  "number": 0,
  "empty": false
}
```

{% endtab %}
{% endtabs %}

## Buscar todas as senhas de um cofre

<mark style="color:blue;">`GET`</mark> `https://app.rpaidea.com/api/company-key-manager/group/:groupId`

#### Path Parameters

| Name                                      | Type   | Description |
| ----------------------------------------- | ------ | ----------- |
| groupId<mark style="color:red;">\*</mark> | number | ID do cofre |

#### Headers

| Name                                            | Type   | Description                                              |
| ----------------------------------------------- | ------ | -------------------------------------------------------- |
| Authorization<mark style="color:red;">\*</mark> | String | Bearer {RESULT-OF-LOGIN} e permissão de escrita ao cofre |

{% tabs %}
{% tab title="200: OK Lista de senhas" %}

```javascript
[{
    "id":1878098,
    "code":"",
    "description":"test",
    "groupName":"test-group"
}]
```

{% endtab %}
{% endtabs %}

## Buscar uma senha pelo ID

<mark style="color:blue;">`GET`</mark> `https://app.rpaidea.com/api/company-key-manager/:id`

#### Path Parameters

| Name                               | Type   | Description |
| ---------------------------------- | ------ | ----------- |
| <mark style="color:red;">\*</mark> | String | ID da senha |

#### Headers

| Name                                            | Type   | Description                                              |
| ----------------------------------------------- | ------ | -------------------------------------------------------- |
| Authorization<mark style="color:red;">\*</mark> | String | Bearer {RESULT-OF-LOGIN} e permissão de escrita ao cofre |

{% tabs %}
{% tab title="200: OK Retorna os dados da senha criptografada" %}

```javascript
{
    "id":1878098,
    "code":"",
    "description":"test",
    "keyManager":"senhaCriptografada",
    "idUser": 0,
    "idCompany": 0
}
```

{% endtab %}
{% endtabs %}

## Buscar uma senha pelo código

<mark style="color:blue;">`GET`</mark> `https://app.rpaidea.com/api/company-key-manager/code/:code`

#### Path Parameters

| Name                                   | Type   | Description                            |
| -------------------------------------- | ------ | -------------------------------------- |
| code<mark style="color:red;">\*</mark> | String | Código da senha criada no Orquestrador |

#### Headers

| Name                                            | Type   | Description                                              |
| ----------------------------------------------- | ------ | -------------------------------------------------------- |
| Authorization<mark style="color:red;">\*</mark> | String | Bearer {RESULT-OF-LOGIN} e permissão de escrita ao cofre |

{% tabs %}
{% tab title="200: OK Retorna os dados da senha criptografada" %}

```javascript
{
    "id":1878098,
    "code":"",
    "description":"test",
    "keyManager":"senhaCriptografada",
    "idUser": 0,
    "idCompany": 0
}
```

{% endtab %}
{% endtabs %}

## Buscar uma senha pelo código do cofre e código da senha

<mark style="color:blue;">`GET`</mark> `https://app.rpaidea.com/api/company-key-manager/group/:group/code/:code`

#### Path Parameters

| Name                                    | Type   | Description                            |
| --------------------------------------- | ------ | -------------------------------------- |
| code<mark style="color:red;">\*</mark>  | String | Código da senha criada no Orquestrador |
| group<mark style="color:red;">\*</mark> | String | Nome do cofre de senhas                |

#### Headers

| Name                                            | Type   | Description                                              |
| ----------------------------------------------- | ------ | -------------------------------------------------------- |
| Authorization<mark style="color:red;">\*</mark> | String | Bearer {RESULT-OF-LOGIN} e permissão de escrita ao cofre |

{% tabs %}
{% tab title="200: OK Retorna os dados da senha criptografa" %}

```javascript
{
    "id":1878098,
    "code":"",
    "description":"test",
    "keyManager":"senhaCriptografada",
    "idUser": 0,
    "idCompany": 0
}
```

{% endtab %}
{% endtabs %}

## Criar senha em um cofre

<mark style="color:green;">`POST`</mark> `https://app.rpaidea.com/api/company-key-manager`

Este endpoint permite atribuir uma nova senha a um cofre.\
"groupId" é o identificador do cofre.\
"KeyManager" é a propriedade que guarda a senha criptografada.\
"allowsSearchByObject" é a propriedade que habilita o [objeto do Studio](https://docs.roboteasy.tech/studio/geral/cofre-de-senhas) a descriptografar o dados para uma variável string.

#### Headers

| Name                                            | Type   | Description                                              |
| ----------------------------------------------- | ------ | -------------------------------------------------------- |
| Authorization<mark style="color:red;">\*</mark> | String | Bearer {RESULT-OF-LOGIN} e permissão de escrita ao cofre |

#### Request Body

| Name                               | Type   | Description                                                                                                                                                                       |
| ---------------------------------- | ------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| <mark style="color:red;">\*</mark> | object | <p>{</p><p>"code": "code",</p><p>"allowsSearchByObject": true or false,</p><p>"description": "senha do site xpto",</p><p>"keyManager":"minhaSenha",</p><p>"groupId":1</p><p>}</p> |

{% tabs %}
{% tab title="200: OK " %}

```javascript
{
    // Response
}
```

{% endtab %}
{% endtabs %}

## Exclui uma senha de um cofre

<mark style="color:red;">`DELETE`</mark> `https://app.rpaidea.com/api/company-key-manager/:id`

#### Path Parameters

| Name                               | Type   | Description |
| ---------------------------------- | ------ | ----------- |
| <mark style="color:red;">\*</mark> | String | ID da senha |

#### Headers

| Name          | Type   | Description                                               |
| ------------- | ------ | --------------------------------------------------------- |
| Authorization | String | Bearer {RESULT-OF-LOGIN} e permissão de exclusão ao cofre |

{% tabs %}
{% tab title="200: OK " %}

```javascript
{
    // Response
}
```

{% endtab %}
{% endtabs %}
