Foreman

Messin' with the API

httpie

Use httpie, I couldn't get it right with curl.

http -a admin:${PASS} PUT https://foreman.intert00bz.nl/api/subnets/48 dns_id=4

curl, only for the diehards, I recommend httpie!

curl -u "admin:${PASS}" -k -H "Accept:application/json,version=2" -H "Content-Type:application/json" https://foreman/api/domains/25 | jq


curl -u admin:${PASS} -H "Accept: application/json" https://foreman.intert00bz.nl/api/subnets/48

Moar oneliners!

for ID in $(http -a admin:${PASS} GET https://foreman.intert00bz.nl/api/subnets | jq ' .results[] | select(.dns_id == 1) | .id'); do echo ">>> ${ID}"; http -a admin:${PASS} PUT https://foreman.intert00bz.nl/api/subnets/${ID} dns_id=4 ; done