cURL (Windows)
curl -X PATCH "https://api.bulkneo.com/v1/instances/YOUR_INSTANCE_ID" -H "apikey: YOUR_API_KEY" -H "Content-Type: application/json" -d "{\"label\":\"Sales — Surat\"}"const options = {
method: 'PATCH',
headers: {apikey: '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({label: 'Sales — Surat'})
};
fetch('https://api.bulkneo.com/v1/instances/{id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.bulkneo.com/v1/instances/{id}"
payload = { "label": "Sales — Surat" }
headers = {
"apikey": "<api-key>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text){
"success": true,
"data": {
"instance_id": "3f9c1a2b-7d4e-4c81-9f0a-2b6d5e8c1a34",
"label": "Sales — Surat",
"status": "open"
},
"request_id": "b1f2c3d4-5e6f-4a7b-8c9d-0e1f2a3b4c5d"
}{
"success": false,
"error": {
"code": "invalid_request",
"message": "Field \"text\" is required and must be a non-empty string."
},
"request_id": "b1f2c3d4-5e6f-4a7b-8c9d-0e1f2a3b4c5d"
}{
"success": false,
"error": {
"code": "invalid_api_key",
"message": "Invalid or revoked API key."
},
"request_id": "b1f2c3d4-5e6f-4a7b-8c9d-0e1f2a3b4c5d"
}{
"success": false,
"error": {
"code": "trial_quota_exceeded",
"message": "Trial message quota reached (500 messages). Upgrade to a paid plan to keep sending.",
"details": {
"trial_message_limit": 500
}
},
"request_id": "b1f2c3d4-5e6f-4a7b-8c9d-0e1f2a3b4c5d"
}{
"success": false,
"error": {
"code": "instance_not_found",
"message": "Instance not found. Check the instance_id and that it belongs to your account."
},
"request_id": "b1f2c3d4-5e6f-4a7b-8c9d-0e1f2a3b4c5d"
}{
"success": false,
"error": {
"code": "rate_limit_exceeded",
"message": "Rate limit exceeded, retry in 12s.",
"details": {
"retry_after_seconds": 12,
"limit_per_minute": 20,
"scope": "messages"
}
},
"request_id": "b1f2c3d4-5e6f-4a7b-8c9d-0e1f2a3b4c5d"
}{
"success": false,
"error": {
"code": "internal_error",
"message": "An unexpected error occurred."
},
"request_id": "b1f2c3d4-5e6f-4a7b-8c9d-0e1f2a3b4c5d"
}Instances
Rename a number
PATCH /v1/instances/{id} — change the label on one of your numbers.
PATCH
/
v1
/
instances
/
{id}
cURL (Windows)
curl -X PATCH "https://api.bulkneo.com/v1/instances/YOUR_INSTANCE_ID" -H "apikey: YOUR_API_KEY" -H "Content-Type: application/json" -d "{\"label\":\"Sales — Surat\"}"const options = {
method: 'PATCH',
headers: {apikey: '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({label: 'Sales — Surat'})
};
fetch('https://api.bulkneo.com/v1/instances/{id}', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.bulkneo.com/v1/instances/{id}"
payload = { "label": "Sales — Surat" }
headers = {
"apikey": "<api-key>",
"Content-Type": "application/json"
}
response = requests.patch(url, json=payload, headers=headers)
print(response.text){
"success": true,
"data": {
"instance_id": "3f9c1a2b-7d4e-4c81-9f0a-2b6d5e8c1a34",
"label": "Sales — Surat",
"status": "open"
},
"request_id": "b1f2c3d4-5e6f-4a7b-8c9d-0e1f2a3b4c5d"
}{
"success": false,
"error": {
"code": "invalid_request",
"message": "Field \"text\" is required and must be a non-empty string."
},
"request_id": "b1f2c3d4-5e6f-4a7b-8c9d-0e1f2a3b4c5d"
}{
"success": false,
"error": {
"code": "invalid_api_key",
"message": "Invalid or revoked API key."
},
"request_id": "b1f2c3d4-5e6f-4a7b-8c9d-0e1f2a3b4c5d"
}{
"success": false,
"error": {
"code": "trial_quota_exceeded",
"message": "Trial message quota reached (500 messages). Upgrade to a paid plan to keep sending.",
"details": {
"trial_message_limit": 500
}
},
"request_id": "b1f2c3d4-5e6f-4a7b-8c9d-0e1f2a3b4c5d"
}{
"success": false,
"error": {
"code": "instance_not_found",
"message": "Instance not found. Check the instance_id and that it belongs to your account."
},
"request_id": "b1f2c3d4-5e6f-4a7b-8c9d-0e1f2a3b4c5d"
}{
"success": false,
"error": {
"code": "rate_limit_exceeded",
"message": "Rate limit exceeded, retry in 12s.",
"details": {
"retry_after_seconds": 12,
"limit_per_minute": 20,
"scope": "messages"
}
},
"request_id": "b1f2c3d4-5e6f-4a7b-8c9d-0e1f2a3b4c5d"
}{
"success": false,
"error": {
"code": "internal_error",
"message": "An unexpected error occurred."
},
"request_id": "b1f2c3d4-5e6f-4a7b-8c9d-0e1f2a3b4c5d"
}The playground on this page is live. There is no test mode and no sandbox: pressing Send authenticates with the key you paste and really calls
https://api.bulkneo.com — a send delivers a real WhatsApp message to the number you type, and an instance call really changes your account. Use your own number while you are exploring, and paste a key only from a machine you trust.Your browser remembers what you type into the playground, so a key you paste here is still in the Authorization box on your next visit. Nobody else sees it — it never leaves your machine and it is not part of this site — but on a shared or borrowed computer, clear the site data when you are done.Sales, Support, Warehouse. Nothing about sending depends on one.
Notes
labelis required here (unlike on create, where it is optional) and is capped at 60 characters.- Renaming changes nothing else: the
instance_id, the connection and the phone number are untouched.
Example
curl -X PATCH https://api.bulkneo.com/v1/instances/YOUR_INSTANCE_ID \
-H "apikey: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "label": "Sales — Surat" }'
curl -X PATCH "https://api.bulkneo.com/v1/instances/YOUR_INSTANCE_ID" -H "apikey: YOUR_API_KEY" -H "Content-Type: application/json" -d "{\"label\":\"Sales — Surat\"}"
Authorizations
Your API key, sent in an apikey request header. Never in the URL, never as a Bearer token.
Path Parameters
The instance_id of one of your numbers.
Body
application/json
The new label. Required, and up to 60 characters.
Required string length:
1 - 60Example:
"Sales — Surat"

