Parse property from json file

Hello All,

Greetings..

I have a json file that I need to pase its URLs and other values.
The match should start with "notifications" and output URLs and settings values.

I tried with python or awk but hardly could get URLs only. Or whole URLs from full json file. Could not match with property notifications.

I prefer awk, sed, grep, perl. For macOS using bash shell.

"notifications":{"https://www.test.com:80,*":{"last_modified":"13219862418447583","setting":1},"https://www.example.com:443,*":{"last_modified":"13219862407099344","setting":1},"https://123abc.io:443,*":{"last_modified":"13219957709135648","setting":2},"https://www.facebook.com:443,*":{"last_modified":"13219934734073706","setting":2},"http://www.youtube.com:443,*":{"last_modified":"13219862410929224","setting":1}}

The output would be something like below (full URL/ short URL & settings)

https://www.test.com, setting:1
https://www.example.com, setting:1
https://www.abc123.io, setting:2
https://www.facebook.com, setting:2
http://www.youtube.com, setting:1

I tried using grep that gives me all URLs that is present in json file.

How could I stop matching to property notifications and its values?
"notifications":{{ ...... }}

grep '"notifications"' sample2.txt | grep -Eo '(https?)://[-A-Za-z0-9\+&@#/%?=~_|!.;]*[-A-Za-z0-9\+&@#/%=~_|]'

I am thinking to output all values between "notifications" and "}}" then look for URLs and settings values. Is that correct approach?

FYI, many of us "everyday JSON slingers" here do not process JSON files and JSON API output with grep, awk and sed , etc.

We process JSON with JSON processing tools.

Some use Javascript, PHP and Python (like me) and the built-in JSON processing or libs available, others here use "sed-like" jq.

https://stedolan.github.io/jq/