# JSON parsing

**URL:** <https://forum.ansible.com/t/json-parsing/18342>\
**Category:** Ansible Developer\
**Tags:** aws\
**Created:** [May 29, 2015, 5:25am UTC](https://forum.ansible.com/t/json-parsing/18342 "2015-05-29T05:25:42Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![Stanley\_Nguyen](https://avatars.discourse-cdn.com/v4/letter/s/958977/32.png) [@Stanley\_Nguyen](https://forum.ansible.com/u/Stanley_Nguyen)\
**Post date:** [May 29, 2015, 5:25am UTC](https://forum.ansible.com/t/json-parsing/18342/1 "2015-05-29T05:25:42Z")

</div>

Hi,

I’m having a very basic problem but I can’t figure out what’s wrong. This is the output I got from a debug statement with my Ansible task. All I’m trying to do is to get the GroupId to use it in the next task but it doesn’t return any value. I tried **groupid.stdout.SecurityGroups[0].GroupId.** Any suggestion here?

Thanks,

Stanley

{  
“var”: {  
“groupid.stdout”: {  
“SecurityGroups”: [  
{  
“Description”: “Database Security Group”,  
“GroupId”: “sg-b5c146d0”,  
“GroupName”: “cbustntest-DBSecurityGroup-173EZM1IXG997”,  
“IpPermissions”: [  
{  
“FromPort”: 1521,  
“IpProtocol”: “tcp”,  
“IpRanges”: [  
{  
“CidrIp”: “192.168.0.0/20”  
}  
],  
“ToPort”: 1521,  
“UserIdGroupPairs”:   
}  
],  
“IpPermissionsEgress”: [  
{  
“IpProtocol”: “-1”,  
“IpRanges”: [  
{  
“CidrIp”: “0.0.0.0/0”  
}  
],  
“UserIdGroupPairs”:   
}  
],  
“OwnerId”: “013185853748”,  
“Tags”: [  
{  
“Key”: “Stack”,  
“Value”: “CB-CloudFormation”  
},  
{  
“Key”: “Name”,  
“Value”: “DBSecurityGroup”  
},  
{  
“Key”: “aws:cloudformation:logical-id”,  
“Value”: “DBSecurityGroup”  
},  
{  
“Key”: “aws:cloudformation:stack-name”,  
“Value”: “cbustntest”  
},  
{  
“Key”: “aws:cloudformation:stack-id”,  
“Value”: “arn:aws:cloudformation:us-west-1:013185853748:stack/cbustntest/2061ebd0-04b8-11e5-91aa-50440c0a5ad2”  
}  
],  
“VpcId”: “vpc-8ea370eb”  
}  
]  
}  
}  
}

---

<div class="post-metadata">

**Author:** ![benno\_joy](https://avatars.discourse-cdn.com/v4/letter/b/73ab20/32.png) [@benno\_joy](https://forum.ansible.com/u/benno_joy)\
**Post date:** [May 29, 2015, 6:24am UTC](https://forum.ansible.com/t/json-parsing/18342/2 "2015-05-29T06:24:36Z")

</div>

Hi,

seems like your stdout is taken as a string. so probably what you could do is

- set\_fact:

grps: “{{ groupid.stdout| from\_json }}”

and then access it via "grps.**SecurityGroups[0].GroupId"**

- Benno

---

<div class="post-metadata">

**Author:** ![Stanley\_Nguyen](https://avatars.discourse-cdn.com/v4/letter/s/958977/32.png) [@Stanley\_Nguyen](https://forum.ansible.com/u/Stanley_Nguyen)\
**Post date:** [May 29, 2015, 5:10pm UTC](https://forum.ansible.com/t/json-parsing/18342/3 "2015-05-29T17:10:37Z")

</div>

Thanks Benno. That works.
