gravityflow_post_webhook

Description

The gravityflow_post_webhook action fires after the webhook request providing a way to customize the response before it is sent back to the requesting server.

Parameters

ParameterTypeDetails
$responseArrayThe response returned from webhook.
$argsArrayThe arguments used for executing the webhook request.
$entryEntryThe current entry.
$stepStepThe current step.

Examples

Convert a get request of a file into a local file and store in a file upload field

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
add_action( 'gravityflow_post_webhook', 'jo_action_gravityflow_post_webhook', 10, 4 );
function jo_action_gravityflow_post_webhook( $response, $args, $entry, $current_step ) {
    //Ensure it only executes on our desired step.
    if( $current_step->get_id() !== '83' ) {
    return;
    }
    //Ensure the response is a valid scenario for processing
    if ( ! is_wp_error( $response ) && isset( $response['response']['code'] ) && $response['response']['code'] == 200 && isset( $response['body'] ) ) {
        //Define where we will be retrieving the file to.
        $folder = '/tmp-pdf/';
        $filename = 'product-entry-' . $entry['id'] . '.pdf';<br>        $field_id = '2';
        $upload_dir   = wp_upload_dir();
    //Store the PDF to uploads directory
        file_put_contents( $upload_dir['basedir'] . $folder . $filename, $response['body'] );
        //Update the entry upload field with URL to file.
        GFAPI::update_entry_field( $entry['id'], $field_id, $upload_dir['baseurl'] . $folder . $filename );
    }
}

Placement

This code can be used in the functions.php file of the active theme, a custom functions plugin, a custom add-on, or with a code snippets plugin.

See also the PHP section in this article: Where Do I Put This Code?