diff --git a/buffet/manager.cc b/buffet/manager.cc
index 4daa9fc..e0a9b7a 100644
--- a/buffet/manager.cc
+++ b/buffet/manager.cc
@@ -28,9 +28,16 @@
                                   dbus_constants::kManagerUpdateStateMethod,
                                   base::Bind(&Manager::HandleUpdateState,
                                              base::Unretained(this)));
+  properties_.reset(new Properties(exported_object));
+  // TODO(wiley): Initialize all properties appropriately before claiming
+  //              the properties interface.
+  properties_->state_.SetValue("{}");
+  properties_->ClaimPropertiesInterface();
 }
 
 Manager::~Manager() {
+  // Prevent the properties object from making calls to the exported object.
+  properties_.reset(nullptr);
   // Unregister ourselves from the Bus.  This prevents the bus from calling
   // our callbacks in between the Manager's death and the bus unregistering
   // our exported object on shutdown.  Unretained makes no promises of memory
@@ -89,7 +96,8 @@
   }
 
   LOG(INFO) << "Received call to Manager.UpdateState()";
-  // TODO(wiley): Do something with these parameters to update state.
+  // TODO(wiley): Merge json state blobs intelligently.
+  properties_->state_.SetValue(json_state_fragment);
 
   // Send back our response.
   return dbus::Response::FromMethodCall(method_call);
diff --git a/buffet/manager.h b/buffet/manager.h
index d373a5e..cc65868 100644
--- a/buffet/manager.h
+++ b/buffet/manager.h
@@ -9,6 +9,9 @@
 #include <base/memory/scoped_ptr.h>
 #include <dbus/message.h>
 
+#include "buffet/dbus_constants.h"
+#include "buffet/exported_property_set.h"
+
 namespace buffet {
 
 class DBusManager;
@@ -22,6 +25,16 @@
   ~Manager();
 
  private:
+  struct Properties: public dbus_utils::ExportedPropertySet {
+   public:
+    dbus_utils::ExportedProperty<std::string> state_;
+    Properties(dbus::ExportedObject *manager_object)
+        : dbus_utils::ExportedPropertySet(manager_object) {
+      RegisterProperty(dbus_constants::kManagerInterface, "State", &state_);
+    }
+    virtual ~Properties() {}
+  };
+
   // Handles calls to org.chromium.Buffet.Manager.RegisterDevice().
   scoped_ptr<dbus::Response> HandleRegisterDevice(
       dbus::MethodCall* method_call);
@@ -30,6 +43,7 @@
       dbus::MethodCall* method_call);
 
   DBusManager* dbus_manager_;  // Weak;  DBusManager should outlive Manager.
+  scoped_ptr<Properties> properties_;
 
   DISALLOW_COPY_AND_ASSIGN(Manager);
 };
