Sending Surveys via Email Integration

Pisano can collect feedback integrated into the email services used by companies, along with the adapter infrastructure it provides.

The following steps should be followed for sending surveys via email:

  • The email service provider can be configured by using interactive video

  • Defining the email channel, connecting it to the relevant flow, and selecting the service provider to be used.
  • Triggering the email survey
    • Manual triggering by uploading a CSV file: Preferred for bulk survey sending. Used when survey sending is not frequent on a daily basis. Since surveys will be triggered manually, preparation by the business unit is required.

    • Triggering the email survey via workflow: Preferred if bulk survey sending is desired to be done automatically at scheduled times.

    • Triggering the survey via API (Email Sharing) (on this page): Preferred for automatically triggering transaction-based surveys. Surveys can be sent immediately after the customer completes a transaction. The system sending the request decides when the API will be triggered. Once the API is triggered, email sending is facilitated

Triggering the survey via API (Email Sharing)

Endpoint Details

POST  https://<pisanoURL>/v1/email_campaigns/:campaign_id/email_sharings/

*** The pisanoURL information will be shared with you by Pisano.

Parameters

Parameter Value
campaign_id Campaign ID to be sent via email
emails Array of email addresses
custom_attributes "Customer-specific information fields and values. JSON Object"
built_in_responses Feedback-based information to be embedded in the link. JSON Object

 

Headers (HTTP Header)

Header Value
Content-Type application/json

Authorization

Token token= <API TOKEN>

 

Sample cURL Request

curl --location 'https://<pisanoEnvironment>/v1/email_campaigns/<campaignID>/email_sharings' \
--header 'Authorization: <token>' \
--header 'Content-Type: application/json' \
--data '{
"emails": [
"<email1>",
"<email2>"
],
"custom_attributes": {
"<email1>": {
"name": "<name1>",
"external_id": "<external_id1>",
"phone_number": "<phone_number1>"
},
"<email2>": {
"name": "<name2>",
"external_id": "<external_id2>",
"phone_number": "<phone_number2>"
}
},
"transactional_data": {
"<email1>": {
"Segment": "<Segment1>",
"Location": "<Location1>",
"TransactionDate": "<TransactionDate1>"
},
"<email2>": {
"Segment": "<Segment2>",
"Location": "<Location2>",
"TransactionDate": "<TransactionDate2>"
}
}
}'

#   - 20 requests in 5 seconds

#   - 40 requests in 25 seconds

#   - 80 requests in 125 seconds (~2 min)

#   - 160 requests in 625 seconds (~10 min)

It is recommended as a best practice to trigger a maximum of 5000 customers in a single request.

Throttle limits for Email & SMS & Link can be increased or completely removed in on-premises installations. Throttle rules can be configured based on IP in on-premises installations

 

Obtaining API ID (campaign_id)

  • Go to Channels > Email Channels, and click on the 'Edit Campaign' button.

    image (3)-1
  • The API ID determining which campaign to send is obtained from this screen in API usage. Example API ID: 735c19a7-ee54-4b03-a84a-93dfe2a94a56
    image (2)-2
  • In the opened screen, the service provider should be selected. If the subject of the email will not be managed by the Email service provider, it should be entered under the 'Subject' heading.

Obtaining a TOKEN

For all API usages in Pisano, you must obtain a TOKEN

API Response Codes

Response Status Code

 

Status

 

Status Code

 

Message

 

200

OK (Successful)

 

 

400

bad_request

13000

An error occured

401

unauthorized

13001

Wrong authentication token

404

NOT_FOUND

13002

Requested resource not found!

404

not_found

13003

Reset Token not found

404

not_found

13005

This node, nor any of their parent has any flow

403

forbidden

13007

It's not allowed to update Pisano node

400

bad_request

13008

Record could not be deleted

400

bad_request

13009

Updated question already has responses

404

not_found

13010

User not found

401

unauthorized

13011

User is inactive

409

conflict

13012

Password does not match the old password

403

forbidden

13013

Permission denied

400

bad_request

13014

Wrong activation code

400

bad_request

13015

Required field not present in params!

404

not_found

13016

Token not found

400

bad_request

13017

Duplicate value

404

not_found

13018

Response not found

404

not_found

13019

Activation token not found

400

bad_request

13020

You selected a reserved node type. Please choose another one.

400

bad_request

13024

Multiple responses given for a non-multiple choice question

400

bad_request

13026

Captcha is invalid

400

bad_request

13028

Invalid parameters

400

bad_request

13029

Invalid security hash

400

bad_request

13030

Invalid authentication token

400

bad_request

13031

Invalid proxy server parameters

409

conflict

13032

Wrong credentials

400

bad_request

13033

Invalid SDK credentials

400

bad_request

13034

Invalid Flow

404

not_found

13035

Node not found

403

forbidden

13036

Account locked

400

bad_request

13037

Malformatted CSV

400

bad_request

13038

Required customer identitiy keys not present in params!