{"id":10213,"date":"2016-02-15T05:05:25","date_gmt":"2016-02-15T10:05:25","guid":{"rendered":"https:\/\/docs.gravityforms.com\/?post_type=gdoc&#038;p=10213"},"modified":"2023-08-11T05:43:19","modified_gmt":"2023-08-11T09:43:19","slug":"dynamic_field_map-field","status":"publish","type":"post","link":"https:\/\/docs.gravityforms.com\/dynamic_field_map-field\/","title":{"rendered":"Dynamic Field Map Field Type"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\" id=\"h-introduction\">Introduction<\/h2>\n\n\n\n<p class=\"alert_yellow pad_20\"><strong>Important:<\/strong> The <strong>dynamic_field_map<\/strong> type field is deprecated. Please use the <code><a href=\"https:\/\/docs.gravityforms.com\/generic_map-field\/\">generic_map<\/a><\/code> field type instead.<\/p>\n\n\n\n<p>The <strong>dynamic_field_map<\/strong> type field, part of the <a href=\"\/settings-api\" data-autolink=\"autolink_settings-api\">Settings API<\/a>, allows the user to map their form fields to custom keys (fields), e.g. fields you will be sending to a third-party service such as a CRM.<\/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>name<\/strong><\/td><td><a href=\"https:\/\/docs.gravityforms.com\/string\">string<\/a><\/td><td>Required. Name of the field. Use it to retrieve saved data.<\/td><\/tr><tr><td><strong>label<\/strong><\/td><td><a href=\"https:\/\/docs.gravityforms.com\/string\">string<\/a><\/td><td>Required. Field label. Will be displayed in the UI<\/td><\/tr><tr><td><strong>type<\/strong><\/td><td><a href=\"https:\/\/docs.gravityforms.com\/string\">string<\/a><\/td><td>Required. Field type. Must be set to dynamic_field_map for the Dynamic Field Map field.<\/td><\/tr><tr><td><strong>tooltip<\/strong><\/td><td><a href=\"https:\/\/docs.gravityforms.com\/string\">string<\/a><\/td><td>Optional. Defaults to blank (no tooltip). Displays a question mark icon and a tooltip next to the field label.<\/td><\/tr><tr><td><strong>field_types<\/strong><\/td><td><a href=\"https:\/\/docs.gravityforms.com\/array\">array<\/a><\/td><td>Optional. Defaults to empty (no filtering). Array of form field types to be available as options when mapping to this field. Only form fields of the specified types will be included in the list of fields.<br><br>Example: array( &#8216;text&#8217;, &#8216;name&#8217; )<\/td><\/tr><tr><td><strong>exclude_field_types<\/strong><\/td><td><a href=\"https:\/\/docs.gravityforms.com\/array\">array<\/a><\/td><td>Optional. Defaults to empty (no filtering). Array of form field types to be excluded when mapping to this field.<br><br>Example: array( &#8216;creditcard&#8217; )<\/td><\/tr><tr><td><strong>field_map<\/strong><\/td><td><a href=\"https:\/\/docs.gravityforms.com\/array\">array<\/a><\/td><td>Optional. Defaults to empty.<br><br>By default, the Dynamic Field Map allows users to enter a custom key and map that key to a form field (using the associated form field drop down). See screenshot below:<br><img loading=\"lazy\" decoding=\"async\" width=\"1792\" height=\"314\" class=\"wp-image-30777\" style=\"width: px;\" src=\"https:\/\/docs.gravityforms.com\/wp-content\/uploads\/2021\/12\/dynamic-field-map-1.png\" alt=\"\" srcset=\"https:\/\/docs.gravityforms.com\/wp-content\/uploads\/2021\/12\/dynamic-field-map-1.png 1792w, https:\/\/docs.gravityforms.com\/wp-content\/uploads\/2021\/12\/dynamic-field-map-1-300x53.png 300w, https:\/\/docs.gravityforms.com\/wp-content\/uploads\/2021\/12\/dynamic-field-map-1-1024x179.png 1024w, https:\/\/docs.gravityforms.com\/wp-content\/uploads\/2021\/12\/dynamic-field-map-1-768x135.png 768w, https:\/\/docs.gravityforms.com\/wp-content\/uploads\/2021\/12\/dynamic-field-map-1-1536x269.png 1536w\" sizes=\"auto, (max-width: 1792px) 100vw, 1792px\" \/><br><br>The field_map property allows the Key field to be presented as a drop down list, where users can select from a set of predefined choices. See screenshot below:<br><img loading=\"lazy\" decoding=\"async\" width=\"1800\" height=\"336\" class=\"wp-image-30779\" style=\"width: px;\" src=\"https:\/\/docs.gravityforms.com\/wp-content\/uploads\/2021\/12\/dynamic-field-map-2.png\" alt=\"\" srcset=\"https:\/\/docs.gravityforms.com\/wp-content\/uploads\/2021\/12\/dynamic-field-map-2.png 1800w, https:\/\/docs.gravityforms.com\/wp-content\/uploads\/2021\/12\/dynamic-field-map-2-300x56.png 300w, https:\/\/docs.gravityforms.com\/wp-content\/uploads\/2021\/12\/dynamic-field-map-2-1024x191.png 1024w, https:\/\/docs.gravityforms.com\/wp-content\/uploads\/2021\/12\/dynamic-field-map-2-768x143.png 768w, https:\/\/docs.gravityforms.com\/wp-content\/uploads\/2021\/12\/dynamic-field-map-2-1536x287.png 1536w\" sizes=\"auto, (max-width: 1800px) 100vw, 1800px\" \/><\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"h-field-map\">Field_Map<\/h3>\n\n\n\n<p>Each item in the <strong>field_map<\/strong> array has the following properties:<\/p>\n\n\n\n<figure class=\"wp-block-table is-style-stripes\"><table><thead><tr><th>Prop<\/th><th>Type<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>label<\/strong><\/td><td><a href=\"https:\/\/docs.gravityforms.com\/string\">string<\/a><\/td><td>Required. Choice label to be displayed in the key drop down.<\/td><\/tr><tr><td><strong>value<\/strong><\/td><td><a href=\"https:\/\/docs.gravityforms.com\/string\">string<\/a><\/td><td>Optional. Defaults to the Label value. Value that will be saved.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-parameters-1\">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>choices<\/strong><\/td><td><a href=\"https:\/\/docs.gravityforms.com\/array\">array<\/a><\/td><td>Optional. Defaults to empty.<br>Creates an option group in the drop down. The label property becomes the Option Group label and the choices defined here become the options under the new group.<br><img loading=\"lazy\" decoding=\"async\" width=\"1244\" height=\"536\" class=\"wp-image-30780\" style=\"width: px;\" src=\"https:\/\/docs.gravityforms.com\/wp-content\/uploads\/2021\/12\/dynamic-field-map-choices.png\" alt=\"\" srcset=\"https:\/\/docs.gravityforms.com\/wp-content\/uploads\/2021\/12\/dynamic-field-map-choices.png 1244w, https:\/\/docs.gravityforms.com\/wp-content\/uploads\/2021\/12\/dynamic-field-map-choices-300x129.png 300w, https:\/\/docs.gravityforms.com\/wp-content\/uploads\/2021\/12\/dynamic-field-map-choices-1024x441.png 1024w, https:\/\/docs.gravityforms.com\/wp-content\/uploads\/2021\/12\/dynamic-field-map-choices-768x331.png 768w\" sizes=\"auto, (max-width: 1244px) 100vw, 1244px\" \/><\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"h-choices\">Choices<\/h3>\n\n\n\n<p>Each item in the <strong>choices<\/strong> array has the following properties:<\/p>\n\n\n\n<figure class=\"wp-block-table is-style-stripes\"><table><thead><tr><th>Prop<\/th><th>Type<\/th><th>Description<\/th><\/tr><\/thead><tbody><tr><td><strong>label<\/strong><\/td><td><a href=\"https:\/\/docs.gravityforms.com\/string\">string<\/a><\/td><td>Required. Choice label that is displayed in the drop down.<\/td><\/tr><tr><td><strong>value<\/strong><\/td><td><a href=\"https:\/\/docs.gravityforms.com\/string\">string<\/a><\/td><td>Optional. Defaults to the Label text. Value that is saved.<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-parameters-2\">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>limit<\/strong><\/td><td><a href=\"https:\/\/docs.gravityforms.com\/int\">int<\/a><\/td><td>Optional. Defaults to no limit. Defines the number of fields that can be mapped by the user.<\/td><\/tr><tr><td><strong>enable_custom_key<\/strong><\/td><td><a href=\"https:\/\/docs.gravityforms.com\/bool\">bool<\/a><\/td><td>Optional. Defaults to false. Possible values are true or false. When set to true, allows users to enter a custom value in addition to the options in the drop down field. See screenshot below:<img loading=\"lazy\" decoding=\"async\" width=\"1780\" height=\"332\" class=\"wp-image-30781\" style=\"width: px;\" src=\"https:\/\/docs.gravityforms.com\/wp-content\/uploads\/2021\/12\/dynamic-field-map-custom-key.png\" alt=\"\" srcset=\"https:\/\/docs.gravityforms.com\/wp-content\/uploads\/2021\/12\/dynamic-field-map-custom-key.png 1780w, https:\/\/docs.gravityforms.com\/wp-content\/uploads\/2021\/12\/dynamic-field-map-custom-key-300x56.png 300w, https:\/\/docs.gravityforms.com\/wp-content\/uploads\/2021\/12\/dynamic-field-map-custom-key-1024x191.png 1024w, https:\/\/docs.gravityforms.com\/wp-content\/uploads\/2021\/12\/dynamic-field-map-custom-key-768x143.png 768w, https:\/\/docs.gravityforms.com\/wp-content\/uploads\/2021\/12\/dynamic-field-map-custom-key-1536x286.png 1536w\" sizes=\"auto, (max-width: 1780px) 100vw, 1780px\" \/><br>Selecting &#8220;Add Custom Key&#8221; will transform the field into an open text field. See screenshot below:<img loading=\"lazy\" decoding=\"async\" width=\"1780\" height=\"266\" class=\"wp-image-30782\" style=\"width: px;\" src=\"https:\/\/docs.gravityforms.com\/wp-content\/uploads\/2021\/12\/dynamic-field-map-custom-key-2.png\" alt=\"\" srcset=\"https:\/\/docs.gravityforms.com\/wp-content\/uploads\/2021\/12\/dynamic-field-map-custom-key-2.png 1780w, https:\/\/docs.gravityforms.com\/wp-content\/uploads\/2021\/12\/dynamic-field-map-custom-key-2-300x45.png 300w, https:\/\/docs.gravityforms.com\/wp-content\/uploads\/2021\/12\/dynamic-field-map-custom-key-2-1024x153.png 1024w, https:\/\/docs.gravityforms.com\/wp-content\/uploads\/2021\/12\/dynamic-field-map-custom-key-2-768x115.png 768w, https:\/\/docs.gravityforms.com\/wp-content\/uploads\/2021\/12\/dynamic-field-map-custom-key-2-1536x230.png 1536w\" sizes=\"auto, (max-width: 1780px) 100vw, 1780px\" \/><\/td><\/tr><tr><td><strong>validation_callback<\/strong><\/td><td>(function)<\/td><td>Optional. Defaults to nothing (no callback). Calls a function during validation allow for custom validation logic. The example in the existing documentation page is good.<\/td><\/tr><tr><td><strong>allow_duplicate<\/strong><\/td><td><a href=\"https:\/\/docs.gravityforms.com\/bool\">bool<\/a><\/td><td>Optional. Defaults to false. Controls whether or not the same option in the key field can be mapped multiple times.<br><br>Note: <em>This only prevents options from being selected multiple times in the drop down. If custom keys are enabled, users won\u2019t be prevented from typing the same custom option multiple times.<\/em><\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-example\">Example<\/h2>\n\n\n\n<p>The following example shows how you can allow the user to define a number of custom keys and map them to their form fields, which in this case is limited to twenty. We are also excluding the creditcard field from the drop downs which contain the form fields as choices.<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: php; title: ; notranslate\" title=\"\">\narray(\n\t&#039;title&#039;  =&gt; esc_html__( &#039;This is the title for Section 1&#039;, &#039;sometextdomain&#039; ),\n\t&#039;fields&#039; =&gt; array(\n\t\tarray(\n\t\t\t&#039;name&#039;                =&gt; &#039;metaData&#039;,\n\t\t\t&#039;label&#039;               =&gt; esc_html__( &#039;Metadata&#039;, &#039;sometextdomain&#039; ),\n\t\t\t&#039;type&#039;                =&gt; &#039;dynamic_field_map&#039;,\n\t\t\t&#039;limit&#039;               =&gt; 20,\n\t\t\t&#039;exclude_field_types&#039; =&gt; &#039;creditcard&#039;,\n\t\t\t&#039;tooltip&#039;             =&gt; &#039;&lt;h6&gt;&#039; . esc_html__( &#039;Metadata&#039;, &#039;sometextdomain&#039; ) . &#039;&lt;\/h6&gt;&#039; . esc_html__( &#039;You may send custom meta information to &#x5B;...]. A maximum of 20 custom keys may be sent. The key name must be 40 characters or less, and the mapped data will be truncated to 500 characters per requirements by &#x5B;...]. &#039;, &#039;sometextdomain&#039; ),\n\t\t\t&#039;validation_callback&#039; =&gt; array( $this, &#039;validate_custom_meta&#039; ),\n\t\t),\n\t),\n),\n<\/pre><\/div>\n\n\n<p>The above code would render a field like the following:<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter\"><a href=\"https:\/\/docs.gravityforms.com\/wp-content\/uploads\/2016\/02\/dynamic_field_map-field.png\" rel=\"attachment wp-att-10214\"><img decoding=\"async\" src=\"https:\/\/docs.gravityforms.com\/wp-content\/uploads\/2016\/02\/dynamic_field_map-field.png\" alt=\"dynamic_field_map-field\" class=\"wp-image-10214\"\/><\/a><\/figure>\n<\/div>\n\n\n<h2 class=\"wp-block-heading\" id=\"h-validation\">Validation<\/h2>\n\n\n\n<p>In the above example a validation callback is also specified to ensure that the limit is not exceeded and that the custom keys don&#8217;t exceed the character limit defined by the third-party service.<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: php; title: ; notranslate\" title=\"\">\npublic function validate_custom_meta( $field ) {\n\t\/\/Number of keys is limited to 20 - interface should control this, validating just in case\n\t\/\/key names can only be max of 40 characters\n \n\t$settings = $this-&gt;get_posted_settings();\n\t$metaData = $settings&#x5B;&#039;metaData&#039;];\n \n\tif ( empty( $metaData ) ) {\n\t\treturn;\n\t}\n \n\t\/\/check the number of items in metadata array\n\t$metaCount = count( $metaData );\n\tif ( $metaCount &gt; 20 ) {\n\t\t$this-&gt;set_field_error( array( esc_html__( &#039;You may only have 20 custom keys.&#039; ), &#039;sometextdomain&#039; ) );\n \n\t\treturn;\n\t}\n \n\t\/\/loop through metaData and check the key name length (custom_key)\n\tforeach ( $metaData as $meta ) {\n\t\tif ( empty( $meta&#x5B;&#039;custom_key&#039;] ) &amp;&amp; ! empty( $meta&#x5B;&#039;value&#039;] ) ) {\n\t\t\t$this-&gt;set_field_error( array( &#039;name&#039; =&gt; &#039;metaData&#039; ), esc_html__( &quot;A field has been mapped to a custom key without a name. Please enter a name for the custom key, remove the metadata item, or return the corresponding drop down to &#039;Select a Field&#039;.&quot;, &#039;sometextdomain&#039; ) );\n\t\t\tbreak;\n\t\t} elseif ( strlen( $meta&#x5B;&#039;custom_key&#039;] ) &gt; 40 ) {\n\t\t\t$this-&gt;set_field_error( array( &#039;name&#039; =&gt; &#039;metaData&#039; ), sprintf( esc_html__( &#039;The name of custom key %s is too long. Please shorten this to 40 characters or less.&#039;, &#039;sometextdomain&#039; ), $meta&#x5B;&#039;custom_key&#039;] ) );\n\t\t\tbreak;\n\t\t}\n\t}\n}\n<\/pre><\/div>\n\n\n<h2 class=\"wp-block-heading\" id=\"h-helpers\">Helpers<\/h2>\n\n\n\n<p>The following functions may come in helpful when interacting with the <strong>dynamic_field_map<\/strong> field type during feed processing.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"h-get-dynamic-field-map-fields\">get_dynamic_field_map_fields()<\/h3>\n\n\n\n<p>Retrieves the individual field_map fields from the meta property of the <a href=\"\/feed-object\" data-autolink=\"autolink_feed-object\">Feed Object<\/a> for the supplied field name.<\/p>\n\n\n<div class=\"wp-block-syntaxhighlighter-code \"><pre class=\"brush: php; title: ; notranslate\" title=\"\">\n$metaData = $this-&gt;get_dynamic_field_map_fields( $feed, &#039;metaData&#039; );\n<\/pre><\/div>\n\n\n<div class=\"gf-docs-parameters\">\n<ul>\n<li><strong>$feed<\/strong> <a href=\"\/feed-object\" data-autolink=\"autolink_feed-object\">Feed Object<\/a>\n<p>The Entry Object to be checked.<\/p>\n<\/li>\n<li>\n<p><strong>$name<\/strong> <a href=\"\/string\" data-autolink=\"autolink_string\">string<\/a><\/p>\n<p>The <strong>name<\/strong> property of the <strong>dynamic_field_map<\/strong> field to retrieve the mapped fields for.<\/p>\n<\/li>\n<li>\n<p><strong>Returns<\/strong> <a href=\"\/array\" data-autolink=\"autolink_array\">array<\/a><\/p>\n<p>An array containing the field names or custom keys as the keys to the mapped form field ID or entry meta key.<\/p>\n<\/li>\n<\/ul>\n<\/div>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"h-uses\">Uses<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/docs.gravityforms.com\/helper-functions\/#settings_dynamic_field_map\">settings_dynamic_field_map()<\/a><\/li>\n<\/ul>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>The dynamic_field_map type field, part of the Settings API, allows the user to map their form fields to custom keys (fields), e.g. fields you will be sending to a third-party service such as a CRM.<\/p>\n","protected":false},"author":16,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"_autodraft_ids":[],"jetpack_post_was_ever_published":false,"_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":"","cf_checklist_status":[]},"categories":[317],"tags":[],"class_list":["post-10213","post","type-post","status-publish","format-standard","hentry","category-settings-api","wpautop"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v27.3 (Yoast SEO v27.4) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Dynamic Field Map Field Type - Gravity Forms Documentation<\/title>\n<meta name=\"description\" content=\"The dynamic_field_map type field, part of the Settings API, allows the user to map their form fields to custom keys (fields), e.g. fields you will be sending to a third-party service such as a CRM.\" \/>\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\/dynamic_field_map-field\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Dynamic Field Map Field Type\" \/>\n<meta property=\"og:description\" content=\"The dynamic_field_map type field, part of the Settings API, allows the user to map their form fields to custom keys (fields), e.g. fields you will be sending to a third-party service such as a CRM.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/docs.gravityforms.com\/dynamic_field_map-field\/\" \/>\n<meta property=\"og:site_name\" content=\"Gravity Forms Documentation\" \/>\n<meta property=\"article:published_time\" content=\"2016-02-15T10:05:25+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-08-11T09:43:19+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/docs.gravityforms.com\/wp-content\/uploads\/2021\/12\/dynamic-field-map-1.png\" \/>\n<meta name=\"author\" content=\"Justin Pakes\" \/>\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=\"Justin Pakes\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"6 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/docs.gravityforms.com\\\/dynamic_field_map-field\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/docs.gravityforms.com\\\/dynamic_field_map-field\\\/\"},\"author\":{\"name\":\"Justin Pakes\",\"@id\":\"https:\\\/\\\/docs.gravityforms.com\\\/#\\\/schema\\\/person\\\/8a88745ec2ee5bc1bb24eea8634bf376\"},\"headline\":\"Dynamic Field Map Field Type\",\"datePublished\":\"2016-02-15T10:05:25+00:00\",\"dateModified\":\"2023-08-11T09:43:19+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/docs.gravityforms.com\\\/dynamic_field_map-field\\\/\"},\"wordCount\":735,\"publisher\":{\"@id\":\"https:\\\/\\\/docs.gravityforms.com\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/docs.gravityforms.com\\\/dynamic_field_map-field\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/docs.gravityforms.com\\\/wp-content\\\/uploads\\\/2021\\\/12\\\/dynamic-field-map-1.png\",\"articleSection\":[\"Settings API\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/docs.gravityforms.com\\\/dynamic_field_map-field\\\/\",\"url\":\"https:\\\/\\\/docs.gravityforms.com\\\/dynamic_field_map-field\\\/\",\"name\":\"Dynamic Field Map Field Type - Gravity Forms Documentation\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/docs.gravityforms.com\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/docs.gravityforms.com\\\/dynamic_field_map-field\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/docs.gravityforms.com\\\/dynamic_field_map-field\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/docs.gravityforms.com\\\/wp-content\\\/uploads\\\/2021\\\/12\\\/dynamic-field-map-1.png\",\"datePublished\":\"2016-02-15T10:05:25+00:00\",\"dateModified\":\"2023-08-11T09:43:19+00:00\",\"description\":\"The dynamic_field_map type field, part of the Settings API, allows the user to map their form fields to custom keys (fields), e.g. fields you will be sending to a third-party service such as a CRM.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/docs.gravityforms.com\\\/dynamic_field_map-field\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/docs.gravityforms.com\\\/dynamic_field_map-field\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/docs.gravityforms.com\\\/dynamic_field_map-field\\\/#primaryimage\",\"url\":\"https:\\\/\\\/docs.gravityforms.com\\\/wp-content\\\/uploads\\\/2021\\\/12\\\/dynamic-field-map-1.png\",\"contentUrl\":\"https:\\\/\\\/docs.gravityforms.com\\\/wp-content\\\/uploads\\\/2021\\\/12\\\/dynamic-field-map-1.png\",\"width\":1792,\"height\":314},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/docs.gravityforms.com\\\/dynamic_field_map-field\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/docs.gravityforms.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Dynamic Field Map Field Type\"}]},{\"@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\\\/8a88745ec2ee5bc1bb24eea8634bf376\",\"name\":\"Justin Pakes\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/791cb5bec00c6dd4bec2e80cf4df9638297207d8f77890c96b6b483be434ecea?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/791cb5bec00c6dd4bec2e80cf4df9638297207d8f77890c96b6b483be434ecea?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/791cb5bec00c6dd4bec2e80cf4df9638297207d8f77890c96b6b483be434ecea?s=96&d=mm&r=g\",\"caption\":\"Justin Pakes\"},\"url\":\"https:\\\/\\\/docs.gravityforms.com\\\/author\\\/pakes\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Dynamic Field Map Field Type - Gravity Forms Documentation","description":"The dynamic_field_map type field, part of the Settings API, allows the user to map their form fields to custom keys (fields), e.g. fields you will be sending to a third-party service such as a CRM.","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\/dynamic_field_map-field\/","og_locale":"en_US","og_type":"article","og_title":"Dynamic Field Map Field Type","og_description":"The dynamic_field_map type field, part of the Settings API, allows the user to map their form fields to custom keys (fields), e.g. fields you will be sending to a third-party service such as a CRM.","og_url":"https:\/\/docs.gravityforms.com\/dynamic_field_map-field\/","og_site_name":"Gravity Forms Documentation","article_published_time":"2016-02-15T10:05:25+00:00","article_modified_time":"2023-08-11T09:43:19+00:00","og_image":[{"url":"https:\/\/docs.gravityforms.com\/wp-content\/uploads\/2021\/12\/dynamic-field-map-1.png","type":"","width":"","height":""}],"author":"Justin Pakes","twitter_card":"summary_large_image","twitter_creator":"@gravityforms","twitter_site":"@gravityforms","twitter_misc":{"Written by":"Justin Pakes","Est. reading time":"6 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/docs.gravityforms.com\/dynamic_field_map-field\/#article","isPartOf":{"@id":"https:\/\/docs.gravityforms.com\/dynamic_field_map-field\/"},"author":{"name":"Justin Pakes","@id":"https:\/\/docs.gravityforms.com\/#\/schema\/person\/8a88745ec2ee5bc1bb24eea8634bf376"},"headline":"Dynamic Field Map Field Type","datePublished":"2016-02-15T10:05:25+00:00","dateModified":"2023-08-11T09:43:19+00:00","mainEntityOfPage":{"@id":"https:\/\/docs.gravityforms.com\/dynamic_field_map-field\/"},"wordCount":735,"publisher":{"@id":"https:\/\/docs.gravityforms.com\/#organization"},"image":{"@id":"https:\/\/docs.gravityforms.com\/dynamic_field_map-field\/#primaryimage"},"thumbnailUrl":"https:\/\/docs.gravityforms.com\/wp-content\/uploads\/2021\/12\/dynamic-field-map-1.png","articleSection":["Settings API"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/docs.gravityforms.com\/dynamic_field_map-field\/","url":"https:\/\/docs.gravityforms.com\/dynamic_field_map-field\/","name":"Dynamic Field Map Field Type - Gravity Forms Documentation","isPartOf":{"@id":"https:\/\/docs.gravityforms.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/docs.gravityforms.com\/dynamic_field_map-field\/#primaryimage"},"image":{"@id":"https:\/\/docs.gravityforms.com\/dynamic_field_map-field\/#primaryimage"},"thumbnailUrl":"https:\/\/docs.gravityforms.com\/wp-content\/uploads\/2021\/12\/dynamic-field-map-1.png","datePublished":"2016-02-15T10:05:25+00:00","dateModified":"2023-08-11T09:43:19+00:00","description":"The dynamic_field_map type field, part of the Settings API, allows the user to map their form fields to custom keys (fields), e.g. fields you will be sending to a third-party service such as a CRM.","breadcrumb":{"@id":"https:\/\/docs.gravityforms.com\/dynamic_field_map-field\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/docs.gravityforms.com\/dynamic_field_map-field\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/docs.gravityforms.com\/dynamic_field_map-field\/#primaryimage","url":"https:\/\/docs.gravityforms.com\/wp-content\/uploads\/2021\/12\/dynamic-field-map-1.png","contentUrl":"https:\/\/docs.gravityforms.com\/wp-content\/uploads\/2021\/12\/dynamic-field-map-1.png","width":1792,"height":314},{"@type":"BreadcrumbList","@id":"https:\/\/docs.gravityforms.com\/dynamic_field_map-field\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/docs.gravityforms.com\/"},{"@type":"ListItem","position":2,"name":"Dynamic Field Map Field Type"}]},{"@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\/8a88745ec2ee5bc1bb24eea8634bf376","name":"Justin Pakes","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/791cb5bec00c6dd4bec2e80cf4df9638297207d8f77890c96b6b483be434ecea?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/791cb5bec00c6dd4bec2e80cf4df9638297207d8f77890c96b6b483be434ecea?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/791cb5bec00c6dd4bec2e80cf4df9638297207d8f77890c96b6b483be434ecea?s=96&d=mm&r=g","caption":"Justin Pakes"},"url":"https:\/\/docs.gravityforms.com\/author\/pakes\/"}]}},"jetpack_featured_media_url":"","jetpack_shortlink":"https:\/\/wp.me\/pdGaEa-2EJ","_links":{"self":[{"href":"https:\/\/docs.gravityforms.com\/wp-json\/wp\/v2\/posts\/10213","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\/16"}],"replies":[{"embeddable":true,"href":"https:\/\/docs.gravityforms.com\/wp-json\/wp\/v2\/comments?post=10213"}],"version-history":[{"count":7,"href":"https:\/\/docs.gravityforms.com\/wp-json\/wp\/v2\/posts\/10213\/revisions"}],"predecessor-version":[{"id":36990,"href":"https:\/\/docs.gravityforms.com\/wp-json\/wp\/v2\/posts\/10213\/revisions\/36990"}],"wp:attachment":[{"href":"https:\/\/docs.gravityforms.com\/wp-json\/wp\/v2\/media?parent=10213"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/docs.gravityforms.com\/wp-json\/wp\/v2\/categories?post=10213"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/docs.gravityforms.com\/wp-json\/wp\/v2\/tags?post=10213"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}