Applications and Templates are really the same thing. Internally we are really dealing with the original template used to create the room but for accounting purposes we call the group of rooms created from the same template "application" (and we charge by application).
So, createRoom has a "template" parameter to which you can pass your application/template name (development or production).
getRoomInfo doesn't distinguish between templates so you'll need to keep the list of production rooms in a database you mantain.
listRooms does return the template name as part of the returnend info but again doesn't allow filtering by template name.
finally, rooms are really stored all in the same "bucket" so you cannot have the same room name for production and development (if you want to keep similar names you'll have to add a prefix / suffix to distinguish them)