{"id":32460,"date":"2022-05-19T10:11:47","date_gmt":"2022-05-19T14:11:47","guid":{"rendered":"https:\/\/docs.gravityforms.com\/?p=32460"},"modified":"2025-09-18T16:05:22","modified_gmt":"2025-09-18T20:05:22","slug":"validating-forms-with-the-gfapi","status":"publish","type":"post","link":"https:\/\/docs.gravityforms.com\/validating-forms-with-the-gfapi\/","title":{"rendered":"Validating Form Submissions with the GFAPI"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\" id=\"h-introduction\">Introduction<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">The <strong>GFAPI::validate_form()<\/strong> method validates the form input values. <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">If the form passes validation, the configured anti-spam checks will also be performed.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">The following features and processes are NOT supported: <\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Saving progress for the save and continue feature<\/li>\n\n\n\n<li>Payment add-on validation<\/li>\n\n\n\n<li>Saving the entry<\/li>\n\n\n\n<li>Add-on feeds<\/li>\n\n\n\n<li>Notifications<\/li>\n\n\n\n<li>Confirmations<\/li>\n\n\n\n<li>Most of the filters and action hooks triggered by a regular form submission. Note: validation filters such as <a href=\"https:\/\/docs.gravityforms.com\/gform_pre_validation\/\" target=\"_blank\" rel=\"noreferrer noopener\">gform_pre_validation<\/a>, <a href=\"https:\/\/docs.gravityforms.com\/gform_field_validation\/\" target=\"_blank\" rel=\"noreferrer noopener\">gform_field_validation<\/a>, and <a href=\"https:\/\/docs.gravityforms.com\/gform_validation\/\" target=\"_blank\" rel=\"noreferrer noopener\">gform_validation<\/a> will be triggered.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">If you require any of the above, see <a href=\"https:\/\/docs.gravityforms.com\/submitting-forms-with-the-gfapi\/\">Submitting Forms with the GFAPI<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-method-overview\">Method Overview<\/h2>\n\n\n\n<figure class=\"wp-block-table\"><table><tbody><tr><td>Class<\/td><td><strong>GFAPI<\/strong><\/td><\/tr><tr><td>Function<\/td><td><strong>validate_form<\/strong><\/td><\/tr><tr><td>Parameters<\/td><td><a href=\"#h-parameters\">see below<\/a><\/td><\/tr><tr><td>Returns<\/td><td><a href=\"#h-returns\">see below<\/a><\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-source-code\">Source Code<\/h2>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: php; auto-links: false; gutter: false; title: ; quick-code: false; notranslate\" title=\"\">\npublic static function validate_form( $form_id, $input_values = array(), $field_values = array(), $target_page = 0, $source_page = 1 ) {}\n<\/pre><\/div>\n\n\n<p class=\"wp-block-paragraph\">This method is located in  \/includes\/<em>api.php<\/em>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-parameters\">Parameters<\/h2>\n\n\n\n<figure class=\"wp-block-table is-style-stripes\"><table><thead><tr><th>Param<\/th><th>Type<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>$form_id<\/strong><\/td><td><a href=\"https:\/\/docs.gravityforms.com\/integer\">integer<\/a><\/td><td>The ID of the form this submission belongs to.<\/td><\/tr><tr><td><strong>$input_values<\/strong><\/td><td><a href=\"https:\/\/docs.gravityforms.com\/array\">array<\/a><\/td><td>An associative array containing the values to be validated using the field input names as the keys. <br>Will be merged into the <code>$_POST<\/code>.<br>The expected input names are identical to the input names found in the form markup. If you have any doubts about the name of an input, use your browsers developer tools to inspect the inputs via the form preview page.<\/td><\/tr><tr><td><strong>$field_values<\/strong><\/td><td><a href=\"https:\/\/docs.gravityforms.com\/array\">array<\/a><\/td><td>Optional. <br>An array of dynamic population parameter keys with their corresponding values used to populate the fields.<br>Overwrites <code>$_POST['gform_field_values']<\/code>.<\/td><\/tr><tr><td><strong>$target_page<\/strong><\/td><td><a href=\"https:\/\/docs.gravityforms.com\/integer\">integer<\/a><\/td><td>Optional. <br>Default is <code>0<\/code>. <br>For multi-page forms; indicates which page would be loaded next if the current page passes validation.<br>Overwrites <code>$_POST[ 'gform_target_page_number_' . $form_id ]<\/code>.<\/td><\/tr><tr><td><strong>$source_page<\/strong><\/td><td><a href=\"https:\/\/docs.gravityforms.com\/integer\">integer<\/a><\/td><td>Optional. <br>Default is <code>1<\/code>. <br>For multi-page forms; indicates which page was active when the values were submitted for validation.<br>Overwrites <code>$_POST[ 'gform_source_page_number_' . $form_id ]<\/code>.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-returns\">Returns<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">An associative <a href=\"https:\/\/docs.gravityforms.com\/array\" target=\"_blank\" rel=\"noreferrer noopener\">array<\/a> containing the result properties or a <a href=\"https:\/\/developer.wordpress.org\/reference\/classes\/wp_error\/\" target=\"_blank\" rel=\"noreferrer noopener nofollow\">WP_Error<\/a> instance if the form can&#8217;t be found, isn&#8217;t active, is trashed, doesn&#8217;t have any fields, or requires login.<\/p>\n\n\n\n<figure class=\"wp-block-table is-style-stripes\"><table><thead><tr><th>Key<\/th><th>Type<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>is_valid<\/strong><\/td><td><a href=\"https:\/\/docs.gravityforms.com\/bool\" target=\"_blank\" rel=\"noreferrer noopener\">bool<\/a><\/td><td>The form validation result.<\/td><\/tr><tr><td><strong>validation_messages<\/strong><\/td><td><a href=\"https:\/\/docs.gravityforms.com\/array\" target=\"_blank\" rel=\"noreferrer noopener\">array<\/a><\/td><td>An array of validation error messages.<\/td><\/tr><tr><td><strong>page_number<\/strong><\/td><td><a href=\"https:\/\/docs.gravityforms.com\/integer\" target=\"_blank\" rel=\"noreferrer noopener\">integer<\/a><\/td><td>For multi-page forms.<br>The page that should be displayed.<\/td><\/tr><tr><td><strong>source_page_number<\/strong><\/td><td><a href=\"https:\/\/docs.gravityforms.com\/integer\" target=\"_blank\" rel=\"noreferrer noopener\">integer<\/a><\/td><td>For multi-page forms.<br>The page that was submitted.<\/td><\/tr><tr><td><strong>is_spam<\/strong><\/td><td><a href=\"https:\/\/docs.gravityforms.com\/bool\" target=\"_blank\" rel=\"noreferrer noopener\">bool<\/a><\/td><td>Only present when <code>is_valid<\/code> is <code>true<\/code>.<br>Indicates if the submission has been identified as spam.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-usage-examples\">Usage Examples<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"h-form-submission\">Form Submission<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">This example shows how you can submit values for validation and handle the result.<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: php; auto-links: false; gutter: false; title: ; quick-code: false; notranslate\" title=\"\">\n$form_id                    = 52;\n$input_values               = array();\n$input_values&#x5B;&#039;input_1&#039;]    = &#039;Single line text&#039;;\n$input_values&#x5B;&#039;input_2_3&#039;]  = &#039;First name&#039;;\n$input_values&#x5B;&#039;input_2_6&#039;]  = &#039;Last name&#039;;\n$input_values&#x5B;&#039;input_5&#039;]    = &#039;A paragraph of text.&#039;;\n\n$result = GFAPI::validate_form( $form_id, $input_values );\nif ( is_wp_error( $result ) ) {\n\t$error_message = $result-&gt;get_error_message();\n\t\/\/ Do something with the error message.\n\treturn;\n}\n\nif ( ! rgar( $result, &#039;is_valid&#039; ) ) {\n\t$error_message = &#039;Submission is invalid.&#039;;\n\t$field_errors  = rgar( $result, &#039;validation_messages&#039;, array() );\n\t\/\/ Do something with the message and errors.\n\treturn;\n} else {\n\t\/\/ Do something with the valid values.\n}\n<\/pre><\/div>\n\n\n<h2 class=\"wp-block-heading\" id=\"h-since\">Since<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Added in Gravity Forms 2.6.3.2.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>The GFAPI::validate_form() method, added in Gravity Forms 2.6.3.2, is used to validate the form input values. If the form passes validation the configured anti-spam checks will also be performed.<\/p>\n","protected":false},"author":11,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"_autodraft_ids":[],"_sb_is_suggestion_mode":false,"_sb_show_suggestion_boards":false,"_sb_show_comment_boards":false,"_sb_suggestion_history":"","_sb_update_block_changes":"","_is_real_time_mode":false,"_realtime_collaborators":"","footnotes":"","jetpack_post_was_ever_published":false,"cf_checklist_status":["SEO Title Length","Content Word Count","Internal Links","External Links","Alt Text for All Images","Category Assigned"]},"categories":[12522],"tags":[],"class_list":["post-32460","post","type-post","status-publish","format-standard","hentry","category-api-functions","wpautop"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v28.8 (Yoast SEO v28.8) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Validating Forms with GFAPI: A Guide<\/title>\n<meta name=\"description\" content=\"The GFAPI::validate_form() method, added in Gravity Forms 2.6.3.2, is used to validate the form input values. If the form passes validation the configured anti-spam checks will also be performed.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/docs.gravityforms.com\/validating-forms-with-the-gfapi\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Validating Form Submissions with the GFAPI\" \/>\n<meta property=\"og:description\" content=\"The GFAPI::validate_form() method, added in Gravity Forms 2.6.3.2, is used to validate the form input values. If the form passes validation the configured anti-spam checks will also be performed.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/docs.gravityforms.com\/validating-forms-with-the-gfapi\/\" \/>\n<meta property=\"og:site_name\" content=\"Gravity Forms Documentation\" \/>\n<meta property=\"article:published_time\" content=\"2022-05-19T14:11:47+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-09-18T20:05:22+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/docs.gravityforms.com\/wp-content\/uploads\/2023\/08\/gf-docs-default-v3.png\" \/>\n\t<meta property=\"og:image:width\" content=\"544\" \/>\n\t<meta property=\"og:image:height\" content=\"288\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"richardW8k\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@gravityforms\" \/>\n<meta name=\"twitter:site\" content=\"@gravityforms\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"richardW8k\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/docs.gravityforms.com\\\/validating-forms-with-the-gfapi\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/docs.gravityforms.com\\\/validating-forms-with-the-gfapi\\\/\"},\"author\":{\"name\":\"richardW8k\",\"@id\":\"https:\\\/\\\/docs.gravityforms.com\\\/#\\\/schema\\\/person\\\/4c82034441a37deac30e22211cac7e44\"},\"headline\":\"Validating Form Submissions with the GFAPI\",\"datePublished\":\"2022-05-19T14:11:47+00:00\",\"dateModified\":\"2025-09-18T20:05:22+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/docs.gravityforms.com\\\/validating-forms-with-the-gfapi\\\/\"},\"wordCount\":384,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/docs.gravityforms.com\\\/#organization\"},\"articleSection\":[\"API Functions\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/docs.gravityforms.com\\\/validating-forms-with-the-gfapi\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/docs.gravityforms.com\\\/validating-forms-with-the-gfapi\\\/\",\"url\":\"https:\\\/\\\/docs.gravityforms.com\\\/validating-forms-with-the-gfapi\\\/\",\"name\":\"Validating Forms with GFAPI: A Guide\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/docs.gravityforms.com\\\/#website\"},\"datePublished\":\"2022-05-19T14:11:47+00:00\",\"dateModified\":\"2025-09-18T20:05:22+00:00\",\"description\":\"The GFAPI::validate_form() method, added in Gravity Forms 2.6.3.2, is used to validate the form input values. If the form passes validation the configured anti-spam checks will also be performed.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/docs.gravityforms.com\\\/validating-forms-with-the-gfapi\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/docs.gravityforms.com\\\/validating-forms-with-the-gfapi\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/docs.gravityforms.com\\\/validating-forms-with-the-gfapi\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/docs.gravityforms.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Validating Form Submissions with the GFAPI\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/docs.gravityforms.com\\\/#website\",\"url\":\"https:\\\/\\\/docs.gravityforms.com\\\/\",\"name\":\"Gravity Forms Documentation\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\\\/\\\/docs.gravityforms.com\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/docs.gravityforms.com\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/docs.gravityforms.com\\\/#organization\",\"name\":\"Gravity Forms\",\"url\":\"https:\\\/\\\/docs.gravityforms.com\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/docs.gravityforms.com\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/docs.gravityforms.com\\\/wp-content\\\/uploads\\\/2020\\\/01\\\/gravity-forms-2020-logo-stacked.png\",\"contentUrl\":\"https:\\\/\\\/docs.gravityforms.com\\\/wp-content\\\/uploads\\\/2020\\\/01\\\/gravity-forms-2020-logo-stacked.png\",\"width\":392,\"height\":515,\"caption\":\"Gravity Forms\"},\"image\":{\"@id\":\"https:\\\/\\\/docs.gravityforms.com\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/x.com\\\/gravityforms\",\"http:\\\/\\\/@gravityforms.com\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/docs.gravityforms.com\\\/#\\\/schema\\\/person\\\/4c82034441a37deac30e22211cac7e44\",\"name\":\"richardW8k\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/0999d2e69b1221040a6b6f4356714e596be89ba9eff784ea5cd421129dcf82ea?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/0999d2e69b1221040a6b6f4356714e596be89ba9eff784ea5cd421129dcf82ea?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/0999d2e69b1221040a6b6f4356714e596be89ba9eff784ea5cd421129dcf82ea?s=96&d=mm&r=g\",\"caption\":\"richardW8k\"},\"url\":\"https:\\\/\\\/docs.gravityforms.com\\\/author\\\/richardvav\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Validating Forms with GFAPI: A Guide","description":"The GFAPI::validate_form() method, added in Gravity Forms 2.6.3.2, is used to validate the form input values. If the form passes validation the configured anti-spam checks will also be performed.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/docs.gravityforms.com\/validating-forms-with-the-gfapi\/","og_locale":"en_US","og_type":"article","og_title":"Validating Form Submissions with the GFAPI","og_description":"The GFAPI::validate_form() method, added in Gravity Forms 2.6.3.2, is used to validate the form input values. If the form passes validation the configured anti-spam checks will also be performed.","og_url":"https:\/\/docs.gravityforms.com\/validating-forms-with-the-gfapi\/","og_site_name":"Gravity Forms Documentation","article_published_time":"2022-05-19T14:11:47+00:00","article_modified_time":"2025-09-18T20:05:22+00:00","og_image":[{"width":544,"height":288,"url":"https:\/\/docs.gravityforms.com\/wp-content\/uploads\/2023\/08\/gf-docs-default-v3.png","type":"image\/png"}],"author":"richardW8k","twitter_card":"summary_large_image","twitter_creator":"@gravityforms","twitter_site":"@gravityforms","twitter_misc":{"Written by":"richardW8k","Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/docs.gravityforms.com\/validating-forms-with-the-gfapi\/#article","isPartOf":{"@id":"https:\/\/docs.gravityforms.com\/validating-forms-with-the-gfapi\/"},"author":{"name":"richardW8k","@id":"https:\/\/docs.gravityforms.com\/#\/schema\/person\/4c82034441a37deac30e22211cac7e44"},"headline":"Validating Form Submissions with the GFAPI","datePublished":"2022-05-19T14:11:47+00:00","dateModified":"2025-09-18T20:05:22+00:00","mainEntityOfPage":{"@id":"https:\/\/docs.gravityforms.com\/validating-forms-with-the-gfapi\/"},"wordCount":384,"commentCount":0,"publisher":{"@id":"https:\/\/docs.gravityforms.com\/#organization"},"articleSection":["API Functions"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/docs.gravityforms.com\/validating-forms-with-the-gfapi\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/docs.gravityforms.com\/validating-forms-with-the-gfapi\/","url":"https:\/\/docs.gravityforms.com\/validating-forms-with-the-gfapi\/","name":"Validating Forms with GFAPI: A Guide","isPartOf":{"@id":"https:\/\/docs.gravityforms.com\/#website"},"datePublished":"2022-05-19T14:11:47+00:00","dateModified":"2025-09-18T20:05:22+00:00","description":"The GFAPI::validate_form() method, added in Gravity Forms 2.6.3.2, is used to validate the form input values. If the form passes validation the configured anti-spam checks will also be performed.","breadcrumb":{"@id":"https:\/\/docs.gravityforms.com\/validating-forms-with-the-gfapi\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/docs.gravityforms.com\/validating-forms-with-the-gfapi\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/docs.gravityforms.com\/validating-forms-with-the-gfapi\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/docs.gravityforms.com\/"},{"@type":"ListItem","position":2,"name":"Validating Form Submissions with the GFAPI"}]},{"@type":"WebSite","@id":"https:\/\/docs.gravityforms.com\/#website","url":"https:\/\/docs.gravityforms.com\/","name":"Gravity Forms Documentation","description":"","publisher":{"@id":"https:\/\/docs.gravityforms.com\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/docs.gravityforms.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/docs.gravityforms.com\/#organization","name":"Gravity Forms","url":"https:\/\/docs.gravityforms.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/docs.gravityforms.com\/#\/schema\/logo\/image\/","url":"https:\/\/docs.gravityforms.com\/wp-content\/uploads\/2020\/01\/gravity-forms-2020-logo-stacked.png","contentUrl":"https:\/\/docs.gravityforms.com\/wp-content\/uploads\/2020\/01\/gravity-forms-2020-logo-stacked.png","width":392,"height":515,"caption":"Gravity Forms"},"image":{"@id":"https:\/\/docs.gravityforms.com\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/x.com\/gravityforms","http:\/\/@gravityforms.com"]},{"@type":"Person","@id":"https:\/\/docs.gravityforms.com\/#\/schema\/person\/4c82034441a37deac30e22211cac7e44","name":"richardW8k","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/0999d2e69b1221040a6b6f4356714e596be89ba9eff784ea5cd421129dcf82ea?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/0999d2e69b1221040a6b6f4356714e596be89ba9eff784ea5cd421129dcf82ea?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/0999d2e69b1221040a6b6f4356714e596be89ba9eff784ea5cd421129dcf82ea?s=96&d=mm&r=g","caption":"richardW8k"},"url":"https:\/\/docs.gravityforms.com\/author\/richardvav\/"}]}},"jetpack_shortlink":"https:\/\/wp.me\/pdGaEa-8ry","jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/docs.gravityforms.com\/wp-json\/wp\/v2\/posts\/32460","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/docs.gravityforms.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/docs.gravityforms.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/docs.gravityforms.com\/wp-json\/wp\/v2\/users\/11"}],"replies":[{"embeddable":true,"href":"https:\/\/docs.gravityforms.com\/wp-json\/wp\/v2\/comments?post=32460"}],"version-history":[{"count":20,"href":"https:\/\/docs.gravityforms.com\/wp-json\/wp\/v2\/posts\/32460\/revisions"}],"predecessor-version":[{"id":45832,"href":"https:\/\/docs.gravityforms.com\/wp-json\/wp\/v2\/posts\/32460\/revisions\/45832"}],"wp:attachment":[{"href":"https:\/\/docs.gravityforms.com\/wp-json\/wp\/v2\/media?parent=32460"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/docs.gravityforms.com\/wp-json\/wp\/v2\/categories?post=32460"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/docs.gravityforms.com\/wp-json\/wp\/v2\/tags?post=32460"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}