GET
https://api.myidvirtual.com
/
account-app
Gerenciamento de Contas VPN
curl --request GET \
  --url https://api.myidvirtual.com/account-app \
  --header 'Authorization: <authorization>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "status": true,
  "username": "<string>",
  "passwordText": "<string>",
  "expirationDate": "<string>"
}
'
[
  {
    "id": "123e4567-e89b-12d3-a456-426614174000",
    "username": "1234567",
    "passwordText": "7654321",
    "status": true,
    "is_trial": false,
    "expirationDate": "2024-12-31T23:59:59.000Z",
    "user": {
      "id": "user-id",
      "email": "[email protected]",
      "name": "João Silva"
    },
    "createdAt": "2024-01-15T10:30:00.000Z",
    "updatedAt": "2024-01-15T10:30:00.000Z"
  }
]

Gerenciamento de Contas VPN

Endpoints para gerenciamento completo de contas VPN, incluindo consulta, atualização e gerenciamento de status.

Autenticação

Authorization
string
required
Bearer token JWT do usuário autenticado

Query Parameters

is_trial
boolean
Filtrar por contas de teste (true/false)
status
boolean
Filtrar por status ativo/inativo

Buscar Conta por ID

Parâmetros

id
string
required
ID da conta VPN

Buscar Minhas Contas de Clientes

Autorização

Retorna as contas VPN dos clientes do usuário autenticado (hierarquia respeitada).

Atualizar Conta

Request Body

status
boolean
Status da conta (ativo/inativo)
username
string
Nome de usuário da conta VPN
passwordText
string
Senha em texto plano (será criptografada)
expirationDate
string
Data de expiração (formato ISO)

Renovar PassID

Gera novo username e senha aleatórios para a conta VPN.
Este endpoint só pode ser usado uma vez por dia por conta de segurança.

Alterar Status da Conta

Autorização

Request Body

status
boolean
required
Novo status da conta

Responses

[
  {
    "id": "123e4567-e89b-12d3-a456-426614174000",
    "username": "1234567",
    "passwordText": "7654321",
    "status": true,
    "is_trial": false,
    "expirationDate": "2024-12-31T23:59:59.000Z",
    "user": {
      "id": "user-id",
      "email": "[email protected]",
      "name": "João Silva"
    },
    "createdAt": "2024-01-15T10:30:00.000Z",
    "updatedAt": "2024-01-15T10:30:00.000Z"
  }
]

Exemplo de Requisição

# Listar contas
curl --location --request GET 'http://localhost:3333/account-app' \
--header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...'

# Buscar conta específica
curl --location --request GET 'http://localhost:3333/account-app/123e4567-e89b-12d3-a456-426614174000' \
--header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...'

# Atualizar conta
curl --location --request PATCH 'http://localhost:3333/account-app/123e4567-e89b-12d3-a456-426614174000' \
--header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...' \
--header 'Content-Type: application/json' \
--data-raw '{
  "status": true,
  "expirationDate": "2024-12-31T23:59:59.000Z"
}'

# Renovar PassID
curl --location --request PATCH 'http://localhost:3333/account-app/new/123e4567-e89b-12d3-a456-426614174000' \
--header 'Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...'
Use o endpoint /account-app/filter/accounts para filtros mais avançados e busca por múltiplos critérios.
Revendedores e Masters só podem visualizar e gerenciar contas de seus próprios clientes (respeitando a hierarquia).