Skip to content
Ronaldo Meneguite edited this page Jul 4, 2018 · 1 revision

GET /v1/users - Retorna a listagem dos usuários do gateway

Required Permission: users.list

Parâmetros

[
  {
    "name": "Authorization",
    "in": "header",
    "type": "string",
    "required": true,
    "description": "Token válido"
  },
  {
    "name": "gateway",
    "in": "query",
    "type": "string",
    "required": false,
    "description": "Filtra usuário de um gateway",
    "comment": "Se nenhum valor for passado todas as unidades que o usuário tem acesso serão listadas"
  },
  {
    "name": "limit",
    "in": "query",
    "type": "number",
    "required": false,
    "description": "Limite de registros por página",
    "default": 10
  },
  {
    "name": "orderBy",
    "in": "query",
    "type": "string",
    "required": false,
    "description": "Campo referência para a ordenação",
    "default": "id"
  },
  {
    "name": "orderByDirection",
    "in": "query",
    "type": "list",
    "accepted": ["asc", "desc"],
    "required": false,
    "description": "Direção da ordenação",
    "default": "desc"
  },
  {
    "name": "include",
    "in": "query",
    "type": "string",
    "accepted": [
      "assets", "unrelatedAssets", "roles", "units", "managerUnits", "referrals", "invoices", "withdrawals", 
      "notifications", "authorizedWithdrawals", "review", "reviews"
    ],
    "required": false,
    "description": "Inclui relacionamentos separados por virgula"
  },
  {
    "name": "filters",
    "in": "query",
    "type": "array[json]",
    "required": false,
    "description": "Inclui um array com os filtros avançados para limitar a listagem",
    "definition": [
      {
        "name": "field",
        "type": "string",
        "required": true,
        "description": "Nome do campo a ser usado no filtro",
        "example": "status"
      },
      {
        "name": "operation",
        "type": "list",
        "required": true,
        "accepted": ["=", ">", ">=", "<", "<=", "<>", "in", "nin"],
        "description": "Operação a ser utilizada na comparação do filtro",
        "example": "="
      },
      {
        "name": "value",
        "type": "string|array",
        "required": true,
        "description": "Valor para o filtro",
        "example": "name"
      }
    ]
  }
]

Exemplo de Envio via query string:

{
  "gateway": "gboqbk",
  "limit": "2",
  "orderBy": "id",
  "orderByDirection": "desc",
  "include": "owner,users,gateway,invoices,operations",
  "filters": [
    {"field": "status",  "operation": "nin",  "value":  ["NEW", "OK"]}
  ]
}

Resultando em uma url como:

https://sandbox.hashlee.com/v1/users?gateway=gboqbk&include=owner,users,gateway,invoices,operations&filters[]={"field":"status","operation":"nin","value":["NEW", "REVISE"]}&limit=2&orderBy=id&orderByDirection=desc

Respostas

HTTP 200 - Listagem das unidades do gateway

{
  "data": [
    {
      "hash": "xjvlpv",
      "user_id": "nzvneq",
      "gateway_id": "xjvlpv",
      "name": "Gateway Default",
      "nickname": "Gateway Default",
      "email": "user@grupocitar.com.br",
      "document": null,
      "document_secondary": null,
      "website": "http://grupocitar.com.br",
      "custody_currency": "CRYPTO",
      "status": "OK",
      "a2fa": false,
      "fee": "0.01500000",
      "addresses": [
        {
          "city": "Vila Jácomo",
          "number": "1022",
          "address": "Rua Grego",
          "country": "Birmânia",
          "district": "Vila Cristóvão do Norte",
          "zip_code": "28086-212",
          "complement": "Anexo"
        }
      ],
      "verified_at": "2018-06-07T14:54:42-03:00",
      "expires_in": null,
      "created_at": "2018-04-03T18:18:05-03:00",
      "updated_at": "2018-06-07T14:54:42-03:00"
    }
  ],
  "meta": {
    "pagination": {
      "total": 301,
      "count": 10,
      "per_page": 10,
      "current_page": 1,
      "total_pages": 31,
      "links": {
        "next": "https://sandbox.hashlee.com/v1/users?page=2"
      }
    }
  }
}

HTTP 401 - Acesso não autorizado

{
  "message":"Unauthorized"
}

HTTP 429 - Excedido o número de tentativas de acesso

{
  "message":"Exceeded the limit of attempts. Wait for 5 minutes for another try."
}

GET /v1/users/{hash} - Retorna os detalhes de um usuário

Required Permission: users.show

Parâmetros

[
  {
    "name": "Authorization",
    "in": "header",
    "type": "string",
    "required": true,
    "description": "Token válido"
  },
  {
    "name": "hash",
    "in": "path",
    "type": "string",
    "required": true,
    "description": "Identificador do usuário"
  },
  {
    "name": "include",
    "in": "query",
    "type": "list",
    "accepted": [
      "assets", "unrelatedAssets", "roles", "units", "managerUnits", "referrals", "invoices", "withdrawals", 
      "notifications", "authorizedWithdrawals", "review", "reviews"
    ],
    "required": false,
    "description": "Inclui relacionamentos separados por virgula"
  }
]

Respostas

HTTP 200 - Detalhes de um usuário

{
  "data": {
    "hash": "xjvlpv",
    "user_id": "nzvneq",
    "gateway_id": "xjvlpv",
    "name": "Gateway Default",
    "nickname": "Gateway Default",
    "email": "user@grupocitar.com.br",
    "document": null,
    "document_secondary": null,
    "website": "http://grupocitar.com.br",
    "custody_currency": "CRYPTO",
    "status": "OK",
    "a2fa": false,
    "fee": "0.01500000",
    "addresses": [
      {
        "city": "Vila Jácomo",
        "number": "1022",
        "address": "Rua Grego",
        "country": "Birmânia",
        "district": "Vila Cristóvão do Norte",
        "zip_code": "28086-212",
        "complement": "Anexo"
      }
    ],
    "verified_at": "2018-06-07T14:54:42-03:00",
    "expires_in": null,
    "created_at": "2018-04-03T18:18:05-03:00",
    "updated_at": "2018-06-07T14:54:42-03:00"
  }
}

HTTP 400 - Um Identificador inválido foi passado

{
  "message":"Invalid identifier to requested resource"
}

HTTP 401 - Acesso não autorizado

{
  "message":"Unauthorized"
}

HTTP 429 - Excedido o número de tentativas de acesso

{
  "message":"Exceeded the limit of attempts. Wait for 5 minutes for another try."
}

Clone this wiki locally