Post /surveys/{{survey-id}}/webhooks

Example Request

https://api.questionpro.{{env}}/a/api/v2/surveys/{{survey-id}}/webhooks

The value of environment {{env}} variable depends upon your datacenter. Refer to the Environment page for more details.


Authorization

arrow_rightSecurity - API Key
Name : api-key
required
Location : Request Header
Type : string

Request Parameters

arrow_rightPath Parameters
survey-id integer
required

Request Body

arrow_rightpayload
Snippet copied successfully.
application/json

                        {
                              "description": "WebHook via API",
                              "requestURL": "https://webhook.site/12345678-0000-4090-0000-ab25s0156xx6",
                              "requestHeader": "",
                              "requestJSON": "{complete_response}",
                              "requestMethod": "METHOD_POST",
                              "location": "LOCATION_AFTER_SURVEY",
                              "type": 1
                            }

                    

Example Code

arrow_rightcURL
Snippet copied successfully.
application/json

                                
curl --location 'https://api.questionpro.{{env}}/a/api/v2/surveys/{{survey-id}}/webhooks' \
--header 'Content-Type: application/json' \
--header 'api-key: {{api-key}}' \
--data '{
    "description": "WebHook via API",
    "requestURL": "https://webhook.site/12345678-0000-4090-0000-ab25s0156xx6",
    "requestHeader": "",
    "requestJSON": "{complete_response}",
    "requestMethod": "METHOD_POST",
    "location": "LOCATION_AFTER_SURVEY",
    "type": 1
}'
                        
arrow_rightPython
Snippet copied successfully.
application/json

import requests
import json

url = "https://api.questionpro.{{env}}/a/api/v2/surveys/{{survey-id}}/webhooks"

payload = json.dumps({
  "description": "WebHook via API",
  "requestURL": "https://webhook.site/12345678-0000-4090-0000-ab25s0156xx6",
  "requestHeader": "",
  "requestJSON": "{complete_response}",
  "requestMethod": "METHOD_POST",
  "location": "LOCATION_AFTER_SURVEY",
  "type": 1
})
headers = {
  'Content-Type': 'application/json',
  'api-key': '{{api-key}}'
}

response = requests.request("POST", url, headers=headers, data=payload)

print(response.text)

                            
arrow_rightPHP - cURL
Snippet copied successfully.
application/json

<?php

$curl = curl_init();

curl_setopt_array($curl, array(
  CURLOPT_URL => 'https://api.questionpro.{{env}}/a/api/v2/surveys/{{survey-id}}/webhooks',
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_ENCODING => '',
  CURLOPT_MAXREDIRS => 10,
  CURLOPT_TIMEOUT => 0,
  CURLOPT_FOLLOWLOCATION => true,
  CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
  CURLOPT_CUSTOMREQUEST => 'POST',
  CURLOPT_POSTFIELDS =>'{
    "description": "WebHook via API",
    "requestURL": "https://webhook.site/12345678-0000-4090-0000-ab25s0156xx6",
    "requestHeader": "",
    "requestJSON": "{complete_response}",
    "requestMethod": "METHOD_POST",
    "location": "LOCATION_AFTER_SURVEY",
    "type": 1
}',
  CURLOPT_HTTPHEADER => array(
    'Content-Type: application/json',
    'api-key: {{api-key}}'
  ),
));

$response = curl_exec($curl);

curl_close($curl);
echo $response;

                            

Responses

arrow_rightExample
application/json

                            {
                                "response": {
                                    "webhookID": 12345,
                                    "surveyID": 1234567,
                                    "userID": 9876543,
                                    "questionID": 0,
                                    "description": "WebHook via API",
                                    "requestURL": "https://webhook.site/12345678-0000-4090-0000-ab25s0156xx6",
                                    "requestHeader": "",
                                    "requestJSON": "{complete_response}",
                                    "requestMethod": "METHOD_POST",
                                    "location": "LOCATION_AFTER_SURVEY",
                                    "type": 1,
                                    "createdDate": "Mon 07 Dec, 10:48:01 GMT 2020"
                                },
                            "requestID": "3012fedc-e8ce-48ae-b800-6q5ce287987a7dac"
                            }
                    
arrow_rightSchema
application/json

                         {
                                "response": {
                                    "webhookID": 12345,
                                    "surveyID": 1234567,
                                    "userID": 9876543,
                                    "questionID": 0,
                                    "description": "WebHook via API",
                                    "requestURL": "https://webhook.site/12345678-0000-4090-0000-ab25s0156xx6",
                                    "requestHeader": "",
                                    "requestJSON": "{complete_response}",
                                    "requestMethod": "METHOD_POST",
                                    "location": "LOCATION_AFTER_SURVEY",
                                    "type": 1,
                                    "createdDate": "Mon 07 Dec, 10:48:01 GMT 2020"
                                },
                            "requestID": "3012fedc-e8ce-48ae-b800-6q5ce287987a7dac"
                            }
                    
arrow_right400 example
application/json

{
    "response": {
     "error": {
         "docs": www.questionpro.com/api/error-codes.html
         "name": "BAD_REQUEST",
         "httpStatusCode": 400,
         "id" : "1000",
         "message": "Invalid URL parameters",
         "resourceUrl":"resource_url"
        }
    }
}
                                
arrow_rightSchema
application/json

{
  "$schema": "http://json-schema.org/draft-06/schema#                                 ",
  "type": "object",
  "properties": {
    "response": {
      "type": "object",
      "properties": {
        "error": {
          "type": "object",
          "properties": {
            "docs": {
              "type": "string"
            },
            "resourceUrl": {
              "type": "string"
            },
            "name": {
              "type": "string"
            },
            "id": {
              "type": "string"
            },
            "message": {
              "type": "string"
            },
            "httpStatusCode": {
              "type": "integer"
            }
          },
          "additionalProperties": false,
          "required": [
            "docs",
            "resourceUrl",
            "name",
            "id",
            "message",
            "httpStatusCode"
          ]
        }
      },
      "additionalProperties": false,
      "required": [
        "error"
      ]
    }
  },
  "additionalProperties": false,
  "required": [
    "response"
  ]
}
                                
arrow_right401 example
application/json

{
    "response": {
     "error": {
         "docs": www.questionpro.com/api/error-codes.html
         "name": "UNAUTHORIZED",
         "httpStatusCode": 401,
         "id" : "1010",
         "message": "Incorrect API Key",
         "resourceUrl":"resource_url"
        }
    }
}
						
							
arrow_rightSchema
application/json

{
  "$schema": "http://json-schema.org/draft-06/schema#                                 ",
  "type": "object",
  "properties": {
    "response": {
      "type": "object",
      "properties": {
        "error": {
          "type": "object",
          "properties": {
            "docs": {
              "type": "string"
            },
            "resourceUrl": {
              "type": "string"
            },
            "name": {
              "type": "string"
            },
            "id": {
              "type": "string"
            },
            "message": {
              "type": "string"
            },
            "httpStatusCode": {
              "type": "integer"
            }
          },
          "additionalProperties": false,
          "required": [
            "docs",
            "resourceUrl",
            "name",
            "id",
            "message",
            "httpStatusCode"
          ]
        }
      },
      "additionalProperties": false,
      "required": [
        "error"
      ]
    }
  },
  "additionalProperties": false,
  "required": [
    "response"
  ]
}
                                
arrow_right403 example
application/json

{
    "response": {
     "error": {
         "docs": www.questionpro.com/api/error-codes.html
         "name": "FORBIDDEN",
         "httpStatusCode": 403,
         "id" : "1013",
         "message": "The user does not have permission to access the resource",
         "resourceUrl":"resource_url"
        }
    }
}				
							
arrow_rightSchema
application/json

{
  "$schema": "http://json-schema.org/draft-06/schema#                                 ",
  "type": "object",
  "properties": {
    "response": {
      "type": "object",
      "properties": {
        "error": {
          "type": "object",
          "properties": {
            "docs": {
              "type": "string"
            },
            "resourceUrl": {
              "type": "string"
            },
            "name": {
              "type": "string"
            },
            "id": {
              "type": "string"
            },
            "message": {
              "type": "string"
            },
            "httpStatusCode": {
              "type": "integer"
            }
          },
          "additionalProperties": false,
          "required": [
            "docs",
            "resourceUrl",
            "name",
            "id",
            "message",
            "httpStatusCode"
          ]
        }
      },
      "additionalProperties": false,
      "required": [
        "error"
      ]
    }
  },
  "additionalProperties": false,
  "required": [
    "response"
  ]
}
                                
arrow_right404 example
application/json

{
    "response": {
     "error": {
         "docs": www.questionpro.com/api/error-codes.html
         "name": "NOT_FOUND",
         "httpStatusCode": 404,
         "id" : "1040",
         "message": "The resource that you're trying to access doesn't exist",
         "resourceUrl":"resource_url"
        }
    }
}
							
							
arrow_rightSchema
application/json

{
  "$schema": "http://json-schema.org/draft-06/schema#                                 ",
  "type": "object",
  "properties": {
    "response": {
      "type": "object",
      "properties": {
        "error": {
          "type": "object",
          "properties": {
            "docs": {
              "type": "string"
            },
            "resourceUrl": {
              "type": "string"
            },
            "name": {
              "type": "string"
            },
            "id": {
              "type": "string"
            },
            "message": {
              "type": "string"
            },
            "httpStatusCode": {
              "type": "integer"
            }
          },
          "additionalProperties": false,
          "required": [
            "docs",
            "resourceUrl",
            "name",
            "id",
            "message",
            "httpStatusCode"
          ]
        }
      },
      "additionalProperties": false,
      "required": [
        "error"
      ]
    }
  },
  "additionalProperties": false,
  "required": [
    "response"
  ]
}
                                
arrow_right500 example
application/json

{
    "response": {
     "error": {
         "docs": www.questionpro.com/api/error-codes.html
         "name": "INTERNAL_SERVER_ERROR",
         "httpStatusCode": 500,
         "id" : "1026",
         "message": "We are not able to process your request",
         "resourceUrl":"resource_url"
        }
    }
}
							
arrow_rightSchema
application/json

{
  "$schema": "http://json-schema.org/draft-06/schema#                                 ",
  "type": "object",
  "properties": {
    "response": {
      "type": "object",
      "properties": {
        "error": {
          "type": "object",
          "properties": {
            "docs": {
              "type": "string"
            },
            "resourceUrl": {
              "type": "string"
            },
            "name": {
              "type": "string"
            },
            "id": {
              "type": "string"
            },
            "message": {
              "type": "string"
            },
            "httpStatusCode": {
              "type": "integer"
            }
          },
          "additionalProperties": false,
          "required": [
            "docs",
            "resourceUrl",
            "name",
            "id",
            "message",
            "httpStatusCode"
          ]
        }
      },
      "additionalProperties": false,
      "required": [
        "error"
      ]
    }
  },
  "additionalProperties": false,
  "required": [
    "response"
  ]
}