This paper presents the technical and architectural issues associated with automating Demand Response (DR) programs. The paper focuses on a description of the Demand Response Automation Server (DRAS), which is the main component used to automate the interactions between the Utilities and their customers for DR programs. Use cases are presented that show the role of the DRAS in automating various aspects of DR programs. This paper also describes the various technical aspects of the DRAS including its interfaces and major modes of operation. This includes how the DRAS supports automating such Utility/Customer interactions as automated DR bidding, automated DR event handling, and finally real-time pricing.