DocsAPI ReferenceCustomer/api/v1/customer/create
postCustomerPublic API v1

/api/v1/customer/create

Registers a new customer or returns an existing one by email. Returns the full customer profile with a flag indicating whether a new account was created.

customerpostApiV1CustomerCreate

Parameters

1 query · 5 body

6 total
Query · 1
apiKeystringRequired

Your BizKitHub API key (passed as GET parameter).

Key format: A 32-character string matching: ^(PROD|DEV_|ROOT)[A-Za-z0-9]{28}$
Prefixes: PROD (production key), DEV_ (individual developer), ROOT (system key with no limits). Learn more

Body · 5
emailstringRequired

Contact email address.

The system validates the input as a standard email address and automatically applies normalization and canonicalization.

All API responses return the normalized form, and each email address is unique per organisation within the system.

Phone-only contacts: Since 2026-06-10 a contact may exist without an e-mail when it was registered only by phone (e.g. imports of phone-only records). Responses that expose such contacts use API_EMAIL_NULLABLE instead, where this field can be null. Endpoints that accept e-mail as input still require a valid value here — phone-only creation goes through admin-only import / BFF flows.

companyNamestring
companyRegistrationNumberstring
taxIdentificationNumberstring
customerRealIpstring

User IP address used for GEO/IP intelligence.
Accepted formats: IPv4 (e.g. 1.1.1.1), IPv6 (e.g. 2001:4860:4860::8888)
Normalization:

  • ::1, 0.0.0.0, localhost (or empty value) is normalized to 127.0.0.1
  • Invalid values are rejected (the API expects a valid IP string).

If provided, the system can resolve additional context (reverse DNS, geolocation, ASN, proxy/hosting flags) via our internal VikiTron GEO/IP resolver. Learn more

Request

POST /api/v1/customer/create

post
curl -X POST "https://api.bizkithub.com/api/v1/customer/create?apiKey=PRODPGrFxpGEtrOZfuWhnoJohUYBXuOE" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -d '{
  "email": "jan@barasek.com",
  "companyName": "BizKitHub",
  "companyRegistrationNumber": "05103118",
  "taxIdentificationNumber": "CZ9609040727",
  "customerRealIp": "1.1.1.1"
}'

Response

JSON payload

{
  "success": true,
  "newAccount": true,
  "cuRefNo": "1cGIHvFoQDGLAbcA",
  "creditBalance": 123,
  "phone": "+420 777123456",
  "firstName": "Jan",
  "lastName": "Barášek",
  "companyName": "BizKitHub",
  "premium": true,
  "ban": false,
  "groups": [
    {
      "name": "Personal Trainer",
      "slug": "trainer"
    }
  ],
  "meta": {},
  "customFields": {},
  "referral": {
    "code": "1cGIHvFoQDGLAbcA",
    "email": "jan@barasek.com",
    "firstName": "Jan",
    "lastName": "Barášek"
  },
  "runningSubscriptionList": [
    {
      "externalId": "d9DfQL3ZF01t7Ykk",
      "productSlug": "predplatne-rocni",
      "productCode": "predplatne-rocni",
      "orderNumber": "25000001",
      "orderHash": "CuS08iXV3cOwweQsQB3TwYXtDr67K4kW",
      "autoRenew": true
    }
  ]
}

All response codes

1 status code documented

Need an API key?

All BizKitHub API endpoints require authentication via API key.

Get API Key