Firebase query using a list of ids (iOS)

No, you can't do a batch query like that in Firebase.

You will need to loop over your restaurant IDs and query each one using observeSingleEvent. For instance:

let restaurantIDs: NSArray = ...
let db = FIRDatabase.database().reference()
for id in restaurantIDs as! [String] {
    db.child("Restaurants").child(id).observeSingleEvent(of: .value) {
        (snapshot) in
        let restaurant = snapshot.value as! [String: Any]
        // Process restaurant...
    }
}

If you are worried about performance, Firebase might be able to group all these observeSingleEvent calls and send them as a batch to the server, which may answer your original question after all ;-)