Contact Form 7?has a feature called SPECIAL MAIL TAG to get data from user, post and request to mail (you can check it here). In the form settings add to “webhook” tab in “Special Mail Tags” section:
You can use a label to change the “key” of data (remote_ip in example).
The value sent to mail will be sent to webhook.
]]>Hi, I’ve noticed there are a lot if files in our database in folder cf7-to-webhook-uploads.
Is there a way to delete these? Or is there a way to not have them stay in the database after form is sent?
Thank you!
]]>Hi there,
How does the plugin manage errors if the website can’t connect to the webhook URL to send data? I did not see a log in the dashboard to check the status of form submissions—like whether a submission succeeded or failed.
]]>Hi there
I have translated this plugin to 100% yet, the text still stay in English. When I look at the code, I notice the text-domain is written with a variable, which the handbook doesn’t recommend: https://developer.www.ads-software.com/plugins/internationalization/how-to-internationalize-your-plugin/
Now, I know of other plugins do it the way you do it… But I can’t see what goes wrong and why tools like Loco Translate doesn’t find any strings?
Could you take a look at this? Or am I overlooking something?
Thanks in advance!
Kind regards
]]>Hi dev,
The plugin used to work fine, the webhook sends an email address to Zapier via webhook to add an email to our list.
However since Thursday, Sept 11th. (When WP updated):
The Webhook now triggers the same email multiple times to Zapier when a user subscribes.
And it varies, some times it’ll trigger once, another will trigger 11 times and the another 5 times, etc
hello everyone, i am trying to connect c7 with keila.io (newsletter tool). keila needs the data in the following form:
{
“data”:
{
“email”: “[email protected]”,
“last_name”: “mustermann”
}
}
(https://app.keila.io/api#/Contacts/KeilaWeb.ApiContactController.index)
cf7 plus webhook send this:
{
“email”: “[email protected]”,
“last_name”: “mustermann”
}
So I need this
{
“data”:
}
to “enclose” the actual data
is that possible?
]]>Hello. I have a problem – data from hidden fields added by the wpcf7_add_form_tag method is not transmitted. An email arrives with the data in these hidden fields, and an empty value arrives in the webhook. Please help me figure out this problem.
Form Template: https://pastebin.com/A4N20mX4
Letter Template: https://pastebin.com/1g72zkeT
Web hook template: https://pastebin.com/6RjgDaRq
The code in the theme functions that adds hidden data fields: https://pastebin.com/iKnZex1y
After sending the form, all the data is sent to the mail correctly, and the webhook receives a void in the variables [product-title] and [exc-price] (screenshot showing empty fields in the webhook – https://i.imgur.com/jaMaAsg.png )
Hi,
How can I fetch data from an URL on submission with the webhook so I can transfer the ID to Zapier?
When I submit the CF7 form, I cannot fetch the submission unique ID number.
I’ve tried with a field [hidden edit default:get] but it did not help.
]]>This is similar to a problem people have had with utm grabber, but it’s a different plugin.
This utm tracker plugin is sending the utm information through hidden fields
The hidden fields are being filled and record, other hidden fields, not populated by this plugin are going through with the webhooks, but all hidden fields that are being filled by AFL are not going on the webhook.
Contact Form 7 has a feature called PIPE when you want to have one value to be shown to user and another to be sent to mail (you can check it here). For example:
[select your-recipient "CEO|[email protected]" "Sales|[email protected]" "Support|[email protected]"]
The value sent to mail will be sent to webhook (the mail address in this example).
But I want to get the label values.
You can use RAW values.
CF7 provides you with RAW values on mail tags: [_raw_{field name}]
(“raw_your-recipient” in this example) so you can add it to Special Mail Tags section on webhook tab.
Hi.
I am using CF7 and webhook/zapier.
I have translations on my multiselect fields and wanted to only fetch data from the original language (Norwegian) to zapier without changing the original field structure. I found a way to fetch the original language (hidden field which is a copy without the translations).
However, this does not seem to work with multiselect fields. If a user chooses more than 1 option, only the English fields / choices are all fetched. The webhook seems to only fetch the first value and ignore the choices.
I’ve tried to solve this issue with GPT4 but didn’t succeed. Any ideas?
My config_:
<h4>Foretrukne ukedager</h4>
[checkbox your-3c use_label_element “Mandag|Monday” “Tirsdag|Tuesday” “Onsdag|Wednesday” “Torsdag|Thursday” “Fredag|Friday” “L?rdag|Saturday”]
[hidden ukedager_webhook: checkbox your-3c use_label_element “Mandag” “Tirsdag” “Onsdag” “Torsdag” “Fredag” “L?rdag”]
For example, if a user selects “Mandag”, “Tirsdag” and “L?rdag”, the webhook will only return the first value “Mandag”. How can I fix this?
]]>Hello.
Please tell me why the webhook might not work.
The form does not send data to Zapier. I use Zapier webhook.
WordPress Version 4.9.23;
CF 7 to Zapier Version 2.0.0;
Contact Form 7 Version 5.1.4.
Could this be due to version incompatibility?
And will the latest version of CF 7 Zapier work with WordPress Version 4.9.23
Thank you.
Hello,
Is it possible to access the form ID before the submission is sent, or would this be handled by Zapier.
I want to have 2 “send to” emails and each one will be used alternatively. I think that the easiest way to do this would be to access the form ID and then have an if/else function that would set the email address.
Something like this…
add_filter( 'ctz_get_data_from_contact_form', 'set_email' );
function set_email( $data ) {
// SET THE EMAIL ADDRESS
if ($data['id']%2 = 0){
$data['send_to']= '[email protected];
} else {
$data['send_to']= '[email protected];
}
return $data;
}
]]>
Good morning everyone, can you please tell me which version of this plugin I should download for an old installation of wordpress (WordPress 5.1.18) and php 5.4?
Thank you
Hey,
when I’m using the plugin on our website, the webhook and e-mail from CF7 will be sent, where it needs to, but on the front end the spinning loading Icon doesn’t stop and there is no validation message. In the console it tells me that “The response is not a valid JSON response.”
I am using make.com to catch the webhook if that helps.
]]>Hello!
I was recently working on a client’s site that uses this plugin and I discovered a potential improvement.
I found that if whitespace is accidentally added to the Webhook URL field, each line of whitespace is treated as a separate Webhook URL and an “A valid URL was not provided” exception is thrown which then causes a mail_failed error to be returned and the form to not submit.
Until I dug into the plugin’s code and logged the exception’s message, I was confused as to what was going wrong.
Since the accidental whitespace issue is pretty easy to miss, it may be worth skipping any empty webhook URLs at the beginning of the webhook loop in the wpcf7_mail_sent callback function.
Thank you for your work on this plugin!
]]>So, i got the same issue as describe in the old post – https://www.ads-software.com/support/topic/handl-utm-grabber-not-passing-to-webhooks/
what i am not understanding, is where do i put the code?
I added this to CF 7 and added the webhook URL from n8n
I can test the webhook URL in the browser and it triggers.
I know that it is running the plugin because if I have empty webhook URL or if I have a new line With empty then form will error
But when I run the form there’s nothing on my listener.
How would I debug this?
]]>Hi there,
I am trying to use a different webhook URL depending on the option selected by the user from a select / dropdown field named "Sector".
I have three sectors and three slightly different webhook URLs, which are as follows:
Sector 1: https://webhookurl.com/crm/portal/api/callback_wp.jsp?schema=companyname
Sector 2: https://webhookurl.com/crm/portal/api/callback_wp.jsp?schema=companyname®ion=sector2
Sector 3: https://webhookurl.com/crm/portal/api/callback_wp.jsp?schema=companyname®ion=sector3
I used the pipe feature on the select / dropdown field, which makes it look like the following:
[select* Choosesector "Choose sector|schema=businessname" "Sector 1|schema=businessname" "Sector 2|schema=businessname®ion=sector2" "Sector 3|schema=pvgeneration®ion=sector3"]
I then set the webhook URL to the following:
https://webhookurl.com/crm/portal/api/callback_wp.jsp?[Choosesector]
But this doesn't seem to work. If I add the above to the email body and fill in the contact form and view the email, it displays the URL perfectly.
Do you have any idea how I can get this working?
Please note, the issue isn't with the URLs, they all work fine. If I create separate forms for each sector instead of just using one and a select / dropdown field, and then put the full webhook URL on to each of the separate forms, it works with no issues. But now I need to go with one form instead of multiple separate ones.
Thanks.
]]>
Hi there,
We have been using your plugin on our website and it has been working perfectly, thank you. We have different forms for different sectors within the business, and each sector has its own webhook URL.
Now we are changing it to just one form, and the user selects the relevant sector from a select field / dropdown.
The webhook URLs for each sector look like the following:
Sector 1: https://webhookurl.com/api/callback_wp.jsp?schema=companyname
Sector 2: https://webhookurl.com/api/callback_wp.jsp?schema=companyname®ion=sector2
Sector 3: https://webhookurl.com/api/callback_wp.jsp?schema=companyname®ion=sector3
On the webhook tab, we have ticked send to webhook button and set the webhook URL to the following:
With [Choosesector] being the Sector select / dropdown field, and that dropdown field being set up with pipes for example:
“Sector 1|schema=companyname”
“Sector 2|schema=companyname®ion=sector2”
“Sector 3|schema=companyname®ion=sector3”
This isn’t working though. It was working fine when we were using separate forms for each sector, and just putting the full webhook URL in instead.
Any idea how to get this working? Any help would be much appreciated.
Thanks
]]>If you can’t change your webhook schema you can change our sent data before request.
WARNING: Be careful using snippets!
1 – First of all, add a filter:
add_filter( 'ctz_get_data_from_contact_form', 'example_ctz_get_data_from_contact_form' );
2 – And change your data:
function example_ctz_get_data_from_contact_form( $data ) {
// EDIT YOUR DATA
// For example: multiply a price by 100 because webhook expects price in cents
$data['price'] = 100 * (float) ( $data['price'] ?? 0.0 );
return $data;
}
]]>
Since?3.0.0?we accept placeholders in webhook URL.
For example:
https://example.com/[your-email]/?user_ids=[users]
Will be sent to:
https://example.com/email%40example.com/?user_ids=1|2|4
If your form has [your-email]
field with “[email protected]” value and a checkbox list for [users]
with “1”, “2” and “4” selected.
Hi,
I installed the plugin, and with Zapier it is indeed working and sending data. I tried doing the same thing with Make.com and it is not working, no data is being recived by make.
Is it supposed to work only with Zapier? If not, what am I missing here? there are special steps to do with Make?
Thank you.
]]>I hope you don’t mind me reaching out but I could do with some help and i’m not an expert with PHP or JSON. I am trying to integrate CF7 with Flodesk and while I have been able to set this up with Zapier I think it would be great to see if I can figure out how to integrate with Flodesk.
I have been testing in postman and have been able to get around certain areas but the bit I am stuck on is how to prevent certain fields from being sent to Flodesk. I’ve searched the forums and I can see references to Github examples but I don’t understand what they’re doing to be able to prevent my field “msg-notes” from being included in my JSON array.
I am following the Flodesk guidance to add the email address, first name and last name onto the subscriber list. The flodesk JSON structure is the following:
{
"id": "string",
"status": "active",
"email": "string",
"source": "manual",
"first_name": "string",
"last_name": "string",
"segments": [
{
"id": "string",
"name": "string"
}
],
"custom_fields": {
"property1": "string",
"property2": "string"
},
"optin_ip": "string",
"optin_timestamp": "2019-08-24T14:15:22Z",
"created_at": "2019-08-24T14:15:22Z"
}
what i’ve renamed all my fields so they match but i’m hoping that if i can find away to not send the ‘tel_number’ field and ‘msg_notes’ fields then my array will work?
Any help would be really beneficial
]]>Hi Mário,
I hope you’re well. I’ve linked our Contact Form 7 forms to Zapier. When we submit the form, we’re getting this error message:
“There was an error trying to send your message. Please try again later.”
How can I fix this?
Thanks in advance,
Jenni
]]>I’ve seen this across several different websites now.
When CF7 to webhook is enabled, the form fails when submitted. It takes a while to process, then fails. However, the webhook is being submitted.
This doesn’t happen when using a webhook from Zapier, only when using a webhook from our own service (https://proline.app)
I believe that CF7 to webhook might just not be waiting long enough for the response, and failing due to a lack of a response.
Is it possible to increase the amount of time the form waits for a response? Or else is is possible to have the form ignore responses and errors and show a success as long as there was no error on the site it’s installed on?
Another strange thing: If I’m inspecting the page with the Chrome developer console, the form submission works. If the the developer console is closed (as it normally would be), it fails. Very confusing.
Since 2.4.0 we accept multiple webhooks in every contact form: ust add one webhook per line in “Webhook URL” settings.
We will trigger one webhook by time.
If one of them fail, the next WILL NOT be trigged.
To make webhooks optionals (not stop when fails) you should:
1 – Return any error messages:
add_filter( 'ctz_trigger_webhook_error_message', '__return_empty_string' );
2 – Trigger errors at end (optional):
add_action( 'ctz_trigger_webhook_errors', 'example_ctz_trigger_webhook_errors', 10, 2 );
function example_ctz_trigger_webhook_errors( $errors, $contact_form ) {
// Here you can use $errors to get exception messages
// $errors is a array of 'webhook' (the URL) and 'exception' (the catched one)
$submission = WPCF7_Submission::get_instance();
$submission->set_status( 'mail_failed' );
$submission->set_response( $contact_form->message( 'mail_sent_ng' ) );
}
]]>
Is there an option to add multiple webhook URLs per form? If not, could that be added in the future?
]]>Hi, is there a reason for debug functions to be included within the plugin? I’m using Roots.io ecosystem which has those bulit in as its a laravel instance within WordPress. I’m getting errors becuase of the overrides from ‘/cf7-to-zapier/includes/functions-debug.php‘
]]>Is there a way to include the current date and time with the webhook call when someone fills in the CF7 form?
]]>