title: How to prevent Jinja2 substitution in Ansible playbook?
body: <p>In my playbook, a JSON file is included using the <code>include_vars</code> module. The content of the JSON file is as given below:</p>
  
  <pre><code>{
    "Component1": {
      "parameter1" : "value1",
      "parameter2" : "value2"
    },
  
    "Component2": {
      "parameter1" : "{{ NET_SEG_VLAN }}",
      "parameter2": "value2"       
    }
  }
  </code></pre>
  
  <p>After the JSON file is included in the playbook, I am using <code>uri</code> module to sent an http request as given below:</p>
  
  <pre><code>- name: Configure Component2 variables using REST API
    uri:
        url: "http://0.0.0.0:5000/vse/api/v1.0/config/working/Component2/configvars/"
        method: POST
        return_content: yes
        HEADER_x-auth-token: "{{ login_resp.json.token }}"
        HEADER_Content-Type: "application/json"
        body:  "{{ Component2 }}"
        body_format: json
  </code></pre>
  
  <p>As it can be seen, the body of the http request is send with the JSON data <code>Component2</code>. However, Jinja2 tries to substitute the <code>{{ NET_SEG_VLAN }}</code> in the JSON file and throws and <code>undefined</code> error. The intention is not to substitute anything inside the JSON file using Jinja2 and send the body as it is in http request. </p>
  
  <p>How to prevent the Jinja2 substitution for the variables included from the JSON file?</p>