How to Send File to Haptik Using API
- Getting Started
- Bot Building
- Smart Agent Chat
- Conversation Design
-
Developer Guides
Code Step Integration Static Step Integration Shopify Integration SETU Integration Exotel Integration CIBIL integration Freshdesk KMS Integration PayU Integration Zendesk Guide Integration Twilio Integration Razorpay Integration LeadSquared Integration USU(Unymira) Integration Helo(VivaConnect) Integration Salesforce KMS Integration Stripe Integration PayPal Integration CleverTap Integration Fynd Integration HubSpot Integration Magento Integration WooCommerce Integration Microsoft Dynamics 365 Integration
- Deployment
- External Agent Tool Setup
- Analytics & Reporting
- Notifications
- Commerce Plus
- Troubleshooting Guides
- Release Notes
Table of Contents
File Upload
The File upload API allows you to upload user files via a POST
request to the Haptik Platform. The URL for file uploads is generated on the Haptik Platform Dashboard.
URL
https://<BASE_URL>/v1.0/log_file_from_user/
Headers
Authorization: Bearer <TOKEN>
client-id: <CLIENT_ID>
Content-Type: multipart/form-data
- Authorization - The Authorization header of each HTTP request should be “Bearer” followed by your token which will be provided by Haptik
- client-id - The client id for your account which will be provided by Haptik
- Content-Type - multipart/form-data
Request
{
"auth_id": "<AUTH_ID>",
"business_id": "<BUSINESS_ID>",
"message_type": "<MESSAGE_TYPE>",
"message_body": "<MESSAGE_BODY>",
"file": "<FILE>"
}
- auth_id - This is an alphanumeric User identifier from your system
- business_id - This is a numeric identifier for channel/queue on which the message is to be registered.
- message_type - The message type should be
1
for image and52
for document - file - contents of the file (binary). Max file sze allowed is 10MB
- message_body (optional) - The message body containing the message to be sent to the bot or agent.
Response
A successful request will return a 200
status code with a JSON response object with a unique message id and other metadata about the messages.
{
"message_id": 1411200492,
"message_body": "<MESSAGE_BODY>",
"created_at": "2018-10-04T12:41:27.980Z",
"message_type": 1,
"file_url": "https://assets.haptikapi.com/content/42e123411bk1109823bf.jpg"
}
- message_id - message id generated by haptik system
- message_body - message body that was logged in the haptik system
- created_at - ISO timestamp denoting when the message was created in the haptik system
- message_type - The message type should be
1
for image and52
for document - file_url - The url for the uploaded file
Error Response
If the user with auth_id is not registered, then the API will return a 403
status code.
{
"error_message": "user is not registered"
}
If the Authorization Header is missing or invalid, then the API will return a 401
status code.
{
"error_message": "invalid authorization details"
}
Sample CURL command
curl -X POST\
https://<BASE_URL>/v1.0/log_file_from_user/ \
-H 'Authorization: Bearer <TOKEN>' \
-H 'client-id: <CLIENT_ID>' \
-H 'Content-Type: multipart/form-data' \
-F "auth_id=<AUTH_ID>" \
-F "business_id=<BUSINESS_ID>" \
-F "message_type=1" \
-F "file=@/home/user1/Desktop/test.jpg" \
-F "message_body="