40 lines
906 B
Bash
Executable File
40 lines
906 B
Bash
Executable File
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
|
|
# ========= CONFIG =========
|
|
URL="http://127.0.0.1:8080/v1/request"
|
|
|
|
API_KEY="test_api_key"
|
|
API_SECRET="test_api_secret"
|
|
API_USER="test_user"
|
|
|
|
# ========= PAYLOAD =========
|
|
BODY='{
|
|
"name": "João Silva",
|
|
"phone": "+55 11 99999-9999",
|
|
"email": "joao@empresa.com",
|
|
"company_name": "Empresa LTDA",
|
|
"sector": "Tecnologia",
|
|
"number_of_employees": 25,
|
|
"revenue": "1000000",
|
|
"description": "Quero integrar a API"
|
|
}'
|
|
|
|
# ========= HMAC =========
|
|
TIMESTAMP=$(date +%s)
|
|
PAYLOAD="${API_KEY}:${TIMESTAMP}:${API_USER}"
|
|
|
|
SIGNATURE=$(printf "%s" "$PAYLOAD" | \
|
|
openssl dgst -sha256 -hmac "$API_SECRET" | \
|
|
sed 's/^.* //')
|
|
|
|
|
|
# ========= REQUEST =========
|
|
curl -X POST "$URL" \
|
|
-H "Content-Type: application/json" \
|
|
-H "X-API-KEY: $API_KEY" \
|
|
-H "X-API-USER: $API_USER" \
|
|
-H "X-API-TIMESTAMP: $TIMESTAMP" \
|
|
-H "X-API-SIGNATURE: $SIGNATURE" \
|
|
-d "$BODY"
|