Hibot Bulk Management for Authentication Templates in WhatsApp Business API
- Bot Automation

- Apr 8
- 4 min read
Managing authentication templates one by one can become difficult when your business supports multiple languages.
With Hibot WhatsApp Business API Bulk Management, you can create or update multiple authentication templates in different languages using a single API request.
The /upsert_message_templates endpoint allows you to:
Create authentication templates in multiple languages at once
Update existing templates automatically
Add or remove security recommendations
Add or remove expiration warnings
Support Copy Code, One-Tap Autofill, and Zero-Tap templates
What Is the Upsert Message Templates Endpoint?
The bulk management endpoint is:
POST /<WHATSAPP_BUSINESS_ACCOUNT_ID>/upsert_message_templates
The word “upsert” means:
If a template already exists with the same name and language, Hibot updates it
If no template exists, Hibot creates a new one
This makes it easy to manage authentication templates across multiple regions and languages.
Why Use Bulk Template Management?
Bulk management is useful when your business serves users in multiple countries.
Instead of creating separate requests for:
English
Spanish
French
German
Arabic
You can create them all in a single API call.
Benefits include:
Faster template setup
Easier multi-language support
Consistent OTP messages across languages
Less API maintenance
Automatic update of existing templates
Supported Authentication Template Types
The bulk endpoint supports all authentication template types:
Copy Code
One-Tap Autofill
Zero-Tap
You can also include:
Security recommendation text
Code expiration warning
Android app package and signature hash for One-Tap and Zero-Tap
Request Structure
{
"name": "template_name",
"languages": ["en_US", "es_ES", "fr"],
"category": "AUTHENTICATION",
"components": [
{
"type": "BODY",
"add_security_recommendation": true
},
{
"type": "FOOTER",
"code_expiration_minutes": 10
},
{
"type": "BUTTONS",
"buttons": [
{
"type": "OTP",
"otp_type": "COPY_CODE"
}
]
}
]
}
Important Differences from Normal Template Creation
The bulk management endpoint works slightly differently from the normal message_templates endpoint.
Use languages Instead of language
Normal template creation uses:
"language": "en_US"
Bulk management uses:
"languages": ["en_US", "es_ES", "fr"]
This lets you create multiple language versions in one request.
The text Property Is Not Supported
You cannot include:
"text": "Copy Code"
WhatsApp automatically uses the default localized button text for each language.
Examples:
English: Copy Code
Spanish: Copiar código
French: Copier le code
The autofill_text Property Is Not Supported
For One-Tap and Zero-Tap templates, you cannot customize the Autofill button label when using bulk management.
WhatsApp automatically chooses the correct localized text.
Create Copy Code Templates in Multiple Languages
This example creates Copy Code authentication templates in:
English
Spanish
French
curl 'https://graph.facebook.com/v25.0/WHATSAPP_BUSINESS_ACCOUNT_ID/upsert_message_templates' \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer ACCESS_TOKEN' \
-d '
{
"name": "authentication_code_copy_code_button",
"languages": ["en_US", "es_ES", "fr"],
"category": "AUTHENTICATION",
"components": [
{
"type": "BODY",
"add_security_recommendation": true
},
{
"type": "FOOTER",
"code_expiration_minutes": 10
},
{
"type": "BUTTONS",
"buttons": [
{
"type": "OTP",
"otp_type": "COPY_CODE"
}
]
}
]
}'
This request creates or updates three authentication templates with the same template name.
Create One-Tap Autofill Templates in Multiple Languages
For One-Tap templates, you must include your Android app package name and signature hash.
curl 'https://graph.facebook.com/v25.0/WHATSAPP_BUSINESS_ACCOUNT_ID/upsert_message_templates' \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer ACCESS_TOKEN' \
-d '
{
"name": "authentication_code_autofill_button",
"languages": ["en_US", "es_ES", "fr"],
"category": "AUTHENTICATION",
"components": [
{
"type": "BODY",
"add_security_recommendation": true
},
{
"type": "FOOTER",
"code_expiration_minutes": 15
},
{
"type": "BUTTONS",
"buttons": [
{
"type": "OTP",
"otp_type": "ONE_TAP",
"supported_apps": [
{
"package_name": "com.example.luckyshrub",
"signature_hash": "K8a/AINcGX7"
}
]
}
]
}
]
}'
This request:
Updates the English template if it already exists
Creates new Spanish and French versions if they do not exist
Create Zero-Tap Templates in Multiple Languages
You can also create Zero-Tap templates in multiple languages.
{
"type": "OTP",
"otp_type": "ZERO_TAP",
"supported_apps": [
{
"package_name": "com.example.luckyshrub",
"signature_hash": "K8a/AINcGX7"
}
]
}
Remember:
Zero-Tap only works on Android
You must configure the app handshake correctly
The app package name and signature hash must match your Android app
Example Successful Response
After the bulk request succeeds, Hibot returns the template ID, approval status, and language for each template.
{
"data": [
{
"id": "954638012257287",
"status": "APPROVED",
"language": "en_US"
},
{
"id": "969725527415202",
"status": "APPROVED",
"language": "es_ES"
},
{
"id": "969725530748535",
"status": "APPROVED",
"language": "fr"
}
]
}
This response confirms which templates were created or updated successfully.
Supported Language Examples
You can include almost any supported WhatsApp language and locale.
Examples:
[
"en_US",
"en_GB",
"es_ES",
"es_MX",
"fr",
"de",
"it",
"pt_BR",
"ar",
"hi",
"ja"
]
Use the correct locale if your business serves multiple versions of the same language.
Example:
en_US for United States English
en_GB for United Kingdom English
es_ES for Spain Spanish
es_MX for Mexico Spanish
Best Practices for Bulk Authentication Templates
To get the best results:
Use the same template name across all languages
Keep expiration times consistent
Enable the security recommendation for every language
Test each language before sending to customers
Use localized language codes correctly
Verify Android package names and signature hashes for One-Tap and Zero-Tap
Keep the same authentication flow across all regions
Recommended expiration values:
Login OTP: 5 minutes
Password reset OTP: 10 minutes
Payment confirmation OTP: 3 minutes
Common Bulk Template Mistakes
Avoid these common errors:
Using language instead of languages
Adding unsupported text property
Adding unsupported autofill_text property
Forgetting the supported_apps array for One-Tap or Zero-Tap
Using an invalid signature hash
Using language codes in the wrong format
Incorrect:
"language": "en_US"
Correct:
"languages": ["en_US", "es_ES"]
Why Businesses Use Hibot Bulk Management
Businesses choose Hibot bulk authentication template management because it:
Saves time
Supports global customers
Reduces API calls
Keeps templates synchronized across languages
Simplifies OTP template maintenance
This is especially useful for:
International apps
SaaS products
E-commerce platforms
Banking and fintech apps
Multi-country login systems
Final Thoughts
The upsert_message_templates endpoint is the fastest way to manage authentication templates across multiple languages in Hibot WhatsApp Business API.
Instead of creating each template separately, you can create or update all language versions in a single request.
Whether you use Copy Code, One-Tap Autofill, or Zero-Tap authentication, bulk management makes your OTP setup easier, faster, and more scalable.
.png)
Comments