APIPreçosDocumentaçãoBlogParceirosContato
Voltar à Documentação

Referência Rápida PHP / API

5 passos para conectar sua aplicação. Funciona com Postman, cURL ou qualquer cliente HTTP.

URL Base: https://api.punchconnect.com/api/v2/zk

1

Configure Seus Headers de Autenticação

Toda requisição precisa destes headers. Obtenha suas credenciais no painel.

HeaderValor
X-CLIENT-IDSeu ID de cliente da API
X-CLIENT-SECRETSeu segredo de cliente da API
Content-Typeapplication/json
Acceptapplication/json
bashPostman / cURL
curl https://api.punchconnect.com/api/v2/zk/devices \
  -H "X-CLIENT-ID: your_client_id" \
  -H "X-CLIENT-SECRET: your_client_secret" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json"
2

Listar e Atualizar Dispositivos

Dispositivos são registrados pelo painel. Use a API para listá-los e atualizá-los.

bashGET /devices
curl https://api.punchconnect.com/api/v2/zk/devices \
  -H "X-CLIENT-ID: your_client_id" \
  -H "X-CLIENT-SECRET: your_client_secret" \
  -H "Accept: application/json"

Atualizar um dispositivo:

bashPUT /devices/{id}
curl -X PUT https://api.punchconnect.com/api/v2/zk/devices/1 \
  -H "X-CLIENT-ID: your_client_id" \
  -H "X-CLIENT-SECRET: your_client_secret" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "Main Entrance",
    "site_name": "Head Office",
    "site_id": 1,
    "timezone": 1
  }'

Também disponível: GET /devices/{id} para obter detalhes de um dispositivo específico.

3

Adicionar um Funcionário a um Dispositivo

bashPOST /employees
curl -X POST https://api.punchconnect.com/api/v2/zk/employees \
  -H "X-CLIENT-ID: your_client_id" \
  -H "X-CLIENT-SECRET: your_client_secret" \
  -H "Content-Type: application/json" \
  -d '{
    "user_id": "EMP-0042",
    "uid": 1001,
    "name": "Ahmed Mansouri",
    "card_no": "0012345678",
    "privilege": "user",
    "verify_mode": 1,
    "device_id": 1
  }'
CampoTipoObrigatório
user_idstringSim
uidintegerSim
namestringSim
device_idintegerSim
employee_idintegerNão
card_nostringNão
passwordstringNão
privilege"user" ou "admin"Não
verify_modeinteger (1–15)Não

Outros endpoints: PUT /employees/{id} (atualizar), DELETE /employees/{ids} (remover, separados por vírgula), GET /devices/{device}/employees (listar funcionários em um dispositivo), POST /employees/{id}/sync-from-device (sincronizar do dispositivo).

4

Enviar Registros de Presença

bashPOST /attendances/push
curl -X POST https://api.punchconnect.com/api/v2/zk/attendances/push \
  -H "X-CLIENT-ID: your_client_id" \
  -H "X-CLIENT-SECRET: your_client_secret" \
  -H "Content-Type: application/json" \
  -d '[
    {
      "id": 5001,
      "uid": 1001,
      "timestamp": "2026-03-10 08:01:23",
      "site_id": 1,
      "site_name": "Head Office",
      "device_name": "Main Entrance",
      "mac_address": "AA:BB:CC:DD:EE:FF"
    }
  ]'
jsonResponse
{
  "status": true,
  "data": [5001]
}

Buscar registros: GET /devices/{device}/attendances. Excluir: DELETE /devices/{device}/attendances/{ids}.

5

Enviar Comandos ao Dispositivo

bashPOST /commands
curl -X POST https://api.punchconnect.com/api/v2/zk/commands \
  -H "X-CLIENT-ID: your_client_id" \
  -H "X-CLIENT-SECRET: your_client_secret" \
  -H "Content-Type: application/json" \
  -d '{ "device_id": 1, "command": "reboot" }'
ComandoO que faz
rebootReinicia o dispositivo (~30s de inatividade)
clear_logLimpa o registro de presença no dispositivo
clear_dataRemove todos os funcionários + registros de presença do dispositivo
clear_adminsRemove privilégios de administrador de todos os usuários no dispositivo

Códigos de Erro

StatusSignificado
200Sucesso
401Credenciais de API inválidas ou ausentes
404Recurso não encontrado
422Erro de validação (verifique seus campos)
429Limite de requisições excedido — reduza a frequência
500Erro no servidor — tente novamente mais tarde

Próximos passos

Referência Rápida PHP / API | PunchConnect