Configurações de Usuários
Cadastro de Usuários

Cadastrar Múltiplos Usuários (V2)

Por meio da chamada abaixo é realizado o cadastro de uma lista de usuários. Sendo possível realizar o cadastro de até 10 usuários na mesma chamada.

ℹ️

Observação: Para o cadastro de um usuário a mesma chamada pode ser utilizada, passando apenas um usuário na lista.

Requisição - POST

http://192.168.1.201/cgi-bin/AccessUser.cgi?action=insertMulti

Body - application/json

  {
    "UserList": [
      {
        "UserID": "5",
        "UserName": "test",
        "UserType": 0,
        "Authority": 1,
        "Password": "234",
        "Doors": [
          0
        ],
        "TimeSections": [
          255
        ],
        "ValidFrom": "2019-01-02 00:00:00",
        "ValidTo": "2037-01-02 01:00:00"
      },
      {
        "UserID": "6",
        "UserName": "test",
        "UserType": 0,
        "Password": "234",
        "Doors": [
          0
        ],
        "TimeSections": [
          255
        ],
        "SpecialDaysSchedule": [
          255
        ],
        "ValidFrom": "2019-01-02 00:00:00",
        "ValidTo": "2037-01-02 01:00:00"
      },
      {
        "UserID": "7",
        "UserName": "test",
        "UserType": 0,
        "UserStatus": 0,
        "Password": "234",
        "Doors": [
          0
        ],
        "TimeSections": [
          255
        ],
        "ValidFrom": "2019-01-02 00:00:00",
        "ValidTo": "2037-01-02 01:00:00"
      },
      {
        "UserID": "8",
        "UserName": "test",
        "UserType": 0,
        "UserStatus": 0,
        "Password": "234",
        "Doors": [
          0
        ],
        "TimeSections": [
          255
        ],
        "ValidFrom": "2019-01-02 00:00:00",
        "ValidTo": "2037-01-02 01:00:00"
      }
    ]
  }
paramtypedescription
UserID *StringID do Usuário, exemplo: 16. É recomendado a utilização de valores em decimal de até 30 digitos
UserName *StringNome do Usuário, exemplo: Alexandre
UserType *NumberTipo de usuário, sendo 0: General user, 2: Guest user
UseTime *NumberLimite de acessos válidos, necessário ser um usuário do tipo visitante ( 2: Guest user)
PasswordNumberSenha de Acesso do Usuário, exemplo: 878485
AuthorityNumberDefine se o usuário será administrador ou não, sendo 1 administrador e 2 usuário normal
DoorsNumberPortas que o usuário irá possuir acesso, sendo necessário quando cadastrado um TimeSections ao usuário.
TimeSectionsNumberZona de tempo de acesso do usuário, padrão: 255
ValidFrom*StringData de Inicio de Validade, Exemplo: 2019-01-02 00:00:00
ValidTo*StringData de Final de Validade, Exemplo: 2037-01-02 01:00:00

Exemplo de Retorno - text/plain

OK

Exemplos

import requests
 
url = "http://192.168.1.201/cgi-bin/AccessUser.cgi?action=insertMulti"
 
json_data = {
    "UserList": [
        {
            "UserID": "5",
            "UserName": "test",
            "UserType": 0,
            "Authority": 1,
            "Password": "234",
            "Doors": [0],
            "TimeSections": [255],
            "ValidFrom": "2019-01-02 00:00:00",
            "ValidTo": "2037-01-02 01:00:00"
        },
        {
            "UserID": "6",
            "UserName": "test",
            "UserType": 0,
            "Password": "234",
            "Doors": [0],
            "TimeSections": [255],
            "SpecialDaysSchedule": [255],
            "ValidFrom": "2019-01-02 00:00:00",
            "ValidTo": "2037-01-02 01:00:00"
        },
        {
            "UserID": "7",
            "UserName": "test",
            "UserType": 0,
            "UserStatus": 0,
            "Password": "234",
            "Doors": [0],
            "TimeSections": [255],
            "ValidFrom": "2019-01-02 00:00:00",
            "ValidTo": "2037-01-02 01:00:00"
        },
        {
            "UserID": "8",
            "UserName": "test",
            "UserType": 0,
            "UserStatus": 0,
            "Password": "234",
            "Doors": [0],
            "TimeSections": [255],
            "ValidFrom": "2019-01-02 00:00:00",
            "ValidTo": "2037-01-02 01:00:00"
        }
    ]
}
username = "admin"
password = "acesso1234"
 
def send_user(url, json_data, username, password):
    # Realiza a requisição HTTP POST com autenticação digest
    response = requests.post(url, auth=requests.auth.HTTPDigestAuth(username, password), json=json_data)
    # Retorna o status code e o conteúdo da resposta
    return response.status_code, response.content
 
status_code, response_content = send_user(url, json_data, username, password)
 
print("Status Code:", status_code)
print("Response Content:", response_content)

Atualizar Múltiplos Usuários (V2)

Por meio da chamada abaixo é realizar o atualização de múltiplos e único usuário em uma chamada. Sendo possível realizar o cadastro de até 10 usuários na mesma chamada.

Requisição - POST

http://192.168.1.201/cgi-bin/AccessUser.cgi?action=updateMulti

Body - application/json

  {
    "UserList": [
      {
        "UserID": "5",
        "UserName": "test",
        "UserType": 0,
        "Authority": 1,
        "Password": "234",
        "Doors": [
          0
        ],
        "TimeSections": [
          255
        ],
        "ValidFrom": "2019-01-02 00:00:00",
        "ValidTo": "2037-01-02 01:00:00"
      },
      {
        "UserID": "6",
        "UserName": "test",
        "UserType": 0,
        "Password": "234",
        "Doors": [
          0
        ],
        "TimeSections": [
          255
        ],
        "SpecialDaysSchedule": [
          255
        ],
        "ValidFrom": "2019-01-02 00:00:00",
        "ValidTo": "2037-01-02 01:00:00"
      },
      {
        "UserID": "7",
        "UserName": "test",
        "UserType": 0,
        "UserStatus": 0,
        "Password": "234",
        "Doors": [
          0
        ],
        "TimeSections": [
          255
        ],
        "ValidFrom": "2019-01-02 00:00:00",
        "ValidTo": "2037-01-02 01:00:00"
      },
      {
        "UserID": "8",
        "UserName": "test",
        "UserType": 0,
        "UserStatus": 0,
        "Password": "234",
        "Doors": [
          0
        ],
        "TimeSections": [
          255
        ],
        "ValidFrom": "2019-01-02 00:00:00",
        "ValidTo": "2037-01-02 01:00:00"
      }
    ]
  }
paramtypedescription
UserID *StringID do Usuário, exemplo: 16. É possível também realizar o cadastro de um valor em Hexadecimal
UserName *StringNome do Usuário, exemplo: Alexandre
UserType *NumberTipo de usuário, sendo 0: General user, 2: Guest user
PasswordNumberSenha de Acesso do Usuário, exemplo: 878485
AuthorityNumberDefine se o usuário será administrador ou não, sendo 1 administrador e 2 usuário normal
DoorsNumberPortas que o usuário irá possuir acesso, sendo necessário quando cadastrado um TimeSections ao usuário.
TimeSectionsNumberZona de tempo de acesso do usuário, padrão: 255
ValidFrom*StringData de Inicio de Validade, Exemplo: 2019-01-02 00:00:00
ValidTo*StringData de Final de Validade, Exemplo: 2037-01-02 01:00:00

Exemplo de Retorno - text/plain

OK

Exemplos

import requests
 
url = "http://192.168.1.201/cgi-bin/AccessUser.cgi?action=insertMulti"
 
json_data = {
    "UserList": [
        {
            "UserID": "5",
            "UserName": "test",
            "UserType": 0,
            "Authority": 1,
            "Password": "234",
            "Doors": [0],
            "TimeSections": [255],
            "ValidFrom": "2019-01-02 00:00:00",
            "ValidTo": "2037-01-02 01:00:00"
        },
        {
            "UserID": "6",
            "UserName": "test",
            "UserType": 0,
            "Password": "234",
            "Doors": [0],
            "TimeSections": [255],
            "SpecialDaysSchedule": [255],
            "ValidFrom": "2019-01-02 00:00:00",
            "ValidTo": "2037-01-02 01:00:00"
        },
        {
            "UserID": "7",
            "UserName": "test",
            "UserType": 0,
            "UserStatus": 0,
            "Password": "234",
            "Doors": [0],
            "TimeSections": [255],
            "ValidFrom": "2019-01-02 00:00:00",
            "ValidTo": "2037-01-02 01:00:00"
        },
        {
            "UserID": "8",
            "UserName": "test",
            "UserType": 0,
            "UserStatus": 0,
            "Password": "234",
            "Doors": [0],
            "TimeSections": [255],
            "ValidFrom": "2019-01-02 00:00:00",
            "ValidTo": "2037-01-02 01:00:00"
        }
    ]
}
username = "admin"
password = "acesso1234"
 
def send_user(url, json_data, username, password):
    # Realiza a requisição HTTP POST com autenticação digest
    response = requests.post(url, auth=requests.auth.HTTPDigestAuth(username, password), json=json_data)
    # Retorna o status code e o conteúdo da resposta
    return response.status_code, response.content
 
status_code, response_content = send_user(url, json_data, username, password)
 
print("Status Code:", status_code)
print("Response Content:", response_content)

Cadastrar Usuário (V1) (SS 7520/SS 7530)

Por meio da chamada abaixo é realizar o cadastro de um usuário no sistema de controle de acesso.

ℹ️

Para o dispositivo SS 7520 e SS 7530 é necessário realizar o cadastro do CardNo (Numero do cartão em Hexadecimal) para o cadastro do usuário corretamente.

Requisição - GET

http://192.168.1.201/cgi-bin/recordUpdater.cgi?action=insert&name=AccessControlCard&CardNo=AF79FCC0&CardStatus=0&CardName=AlexandreAlves&UserID=16&Password=112233&ValidDateStart=20151022%20093811&ValidDateEnd=20151222%20093811

paramtypedescription
insert *StringComando de inserção de usuário
CardNo *StringCódigo do Cartão em Hexadecimal, exemplo: AF79FCC0
CardStatus *NumberStatus do Cartão sendo: 0: Normal, 1: Cancelado, 2: Congelado
CardName *StringNome do Usuário, exemplo: Alexandre Alves
UserID *NumberID do Usuário, exemplo: 16. É possível também realizar o cadastro de um valor em Hexadecimal
PasswordNumberSenha de Acesso do Usuário, exemplo: 878485
ValidDateStart *StringData de Inicio de validade. Formato: yyyy-MM-dd HH:mm:ss, exemplo: 20151022%20093811
ValidDateEnd *StringData de Final de validade. Formato: yyyy-MM-dd HH:mm:ss, exemplo: 20151022%20093811

Exemplo de Retorno - text/plain

RecNo=1

Exemplos

import requests
 
device_ip = '192.168.3.87'
username = 'admin'
password = 'acesso1234'
 
url = "http://{}/cgi-bin/recordUpdater.cgi?action=insert&name=AccessControlCard&CardNo=AF79FCC0&CardStatus=0&CardName=AlexandreAlves&UserID=16&Password=112233&ValidDateStart=20151022%20093811&ValidDateEnd=20151222%20093811".format(
                            str(device_ip),
                        )
 
digest_auth = requests.auth.HTTPDigestAuth(username, password)
rval = requests.get(url, auth=digest_auth, stream=True, timeout=20, verify=False)
 
print(rval.text)