Creating a REST sensor - Help?

Ok so playing with APIs and the rest sensor is new to me. With that said, I was able to create a simple rest sensor with the following:

Now, using that I created the following sensor:

- platform: rest
  method: GET
  name: "NJ Cannabis"
    - name
    - town
  value_template: '{{ value_json ["name"]["town"] }}'
  scan_interval: 86400

This is great, but it obviously only pulls the first ‘name’ and ‘town’ in the json.
What I would like to do is create a sensor for each listed location, pulling the name, town and location so I can use the proximity sensor to update a card with the location I’m closest to (using my phone’s device tracker).

The main issue is I’m unsure how to specify which ‘name’, ‘town’ etc within the json each sensor should be pulling from. Hopefully that makes sense.

Rest does not allow templating on attributes level. Assuming the json is dynamic I can only see this working…put all json in a single sensor as an attribute and then use templating to get the data into a list, e.g. via markdown card.
to get all in a sinlgle sensor list, this below may work and then you would need to template-your-way through the attribute, a for loop and output in a table

  - platform: command_line
    name: whatevername
    scan_interval: 1500
    command: >
         echo "{\"events\":" $(
         -s '
         ) "}" 
    value_template: > 
        {{ | length }}
        - events