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

Example Request

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

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

Authorization

arrow_rightKey - apiKey
  • Name: apiKey
  • Location: query

Request Parameters

arrow_rightPath Parameters
survey-id integer
required

Request Body

arrow_rightpayload
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
application/json

                                
                               curl --location --request POST 'https://{{env}}.questionpro.com/a/api/v2/surveys/{{survey-id}}/webhooks?apiKey={{apiKey}}' \
                                    --header 'Content-Type: application/json' \
                                    --data-raw '   {
                                                                  "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
application/json

                                                                    
                                import requests
                                
                                url = "https://{{env}}.questionpro.com/a/api/v2/surveys/{{survey-id}}/webhooks?apiKey={{apiKey}}"
                                
                                payload="   {\r\n                              \"description\": \"WebHook via API\",\r\n                              \"requestURL\": \"https://webhook.site/12345678-0000-4090-0000-ab25s0156xx6\",\r\n                              \"requestHeader\": \"\",\r\n                              \"requestJSON\": \"{complete_response}\",\r\n                              \"requestMethod\": \"METHOD_POST\",\r\n                              \"location\": \"LOCATION_AFTER_SURVEY\",\r\n                              \"type\": 1\r\n                            }"
                                headers = {
                                  'Content-Type': 'application/json',
                                  
                                }
                                
                                response = requests.request("POST", url, headers=headers, data=payload)
                                
                                print(response.text)

                            
arrow_rightPHP
application/json

                               <?php

                                        $curl = curl_init();
                                        
                                        curl_setopt_array($curl, array(
                                          CURLOPT_URL => 'https://{{env}}.questionpro.com/a/api/v2/surveys/{{survey-id}}/webhooks?apiKey={{apiKey}}',
                                          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'
                                          ),
                                        ));
                                        
                                        $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"
  ]
}