I think this is the same thing as you were trying to accomplish.
Sleep for 6 minutes or when interrupted. I have a reed switch on pin 2
pinMode(REED_SWITCH, INPUT); // set the reed switch digital pin as input
//digitalWrite(REED_SWITCH, HIGH);
pinMode(REED_SWITCH, INPUT_PULLUP);
sleep(digitalPinToInterrupt(REED_SWITCH), CHANGE, 360000); //3600000 hour