)]}'
{"api-ref/source/os-security-group-rules.inc":[{"author":{"_account_id":6873,"name":"Matt Riedemann","email":"mriedem.os@gmail.com","username":"mriedem"},"change_message_id":"4768dbddc5ea8834ff5a7617c190d36293d4b8cb","unresolved":false,"context_lines":[{"line_number":51,"context_line":"  - to_port: to_port"},{"line_number":52,"context_line":"  - ip_range: ip_range"},{"line_number":53,"context_line":"  - cidr: cidr"},{"line_number":54,"context_line":"  - id: id"},{"line_number":55,"context_line":"  - group: group"},{"line_number":56,"context_line":"  - parent_group_id: parent_group_id"},{"line_number":57,"context_line":"  - name: name"}],"source_content_type":"text/x-c++src","patch_set":1,"id":"dab17558_9fd94c86","line":54,"range":{"start_line":54,"start_character":8,"end_line":54,"end_character":10},"updated":"2016-05-10 00:28:39.000000000","message":"This is actually wrong, it would show up as:\n\n\"The security group name or UUID.\"\n\nSo we need a different parameter for security group rule id\u0027s.\n\nBut I guess we can leave that for parameter verification.","commit_id":"02df290991f6302eac0096905a7ec587994bbd2e"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"1f75a05e4ac52e0f23bebafeb5c6df2b44ffa0f1","unresolved":false,"context_lines":[{"line_number":51,"context_line":"  - to_port: to_port"},{"line_number":52,"context_line":"  - ip_range: ip_range"},{"line_number":53,"context_line":"  - cidr: cidr"},{"line_number":54,"context_line":"  - id: id"},{"line_number":55,"context_line":"  - group: group"},{"line_number":56,"context_line":"  - parent_group_id: parent_group_id"},{"line_number":57,"context_line":"  - name: name"}],"source_content_type":"text/x-c++src","patch_set":1,"id":"dab17558_6f330015","line":54,"range":{"start_line":54,"start_character":8,"end_line":54,"end_character":10},"in_reply_to":"dab17558_9fd94c86","updated":"2016-05-10 09:28:50.000000000","message":"+1","commit_id":"02df290991f6302eac0096905a7ec587994bbd2e"},{"author":{"_account_id":782,"name":"John Garbutt","email":"john@johngarbutt.com","username":"johngarbutt"},"change_message_id":"1f75a05e4ac52e0f23bebafeb5c6df2b44ffa0f1","unresolved":false,"context_lines":[{"line_number":71,"context_line":""},{"line_number":72,"context_line":"Normal response codes: 202"},{"line_number":73,"context_line":""},{"line_number":74,"context_line":"Error response codes: badRequest(400), unauthorized(401), forbidden(403), conflict(409)"},{"line_number":75,"context_line":""},{"line_number":76,"context_line":"Request"},{"line_number":77,"context_line":"-------"}],"source_content_type":"text/x-c++src","patch_set":1,"id":"dab17558_2fa9f824","line":74,"updated":"2016-05-10 09:28:50.000000000","message":"Isn\u0027t itemNotFound(404) needed here, for where you delete something that doesn\u0027t exist?\nhttps://github.com/openstack/nova/blob/master/nova/api/openstack/compute/security_groups.py#L307","commit_id":"02df290991f6302eac0096905a7ec587994bbd2e"}]}
