diff --git a/libpurple/account.h b/libpurple/account.h
--- a/libpurple/account.h
+++ b/libpurple/account.h
@@ -31,6 +31,10 @@
  * @section_id: libpurple-account
  * @short_description: <filename>account.h</filename>
  * @title: Account Object
+ *
+ * A #PurpleAccount is the core configuration for connecting to a specific
+ * account. User interfaces typically allow users to create these in a dialog
+ * or wizard.
  */
 
 #include <glib.h>
@@ -75,6 +79,11 @@
 
 /**
  * PurpleAccountRequestResponse:
+ * @PURPLE_ACCOUNT_RESPONSE_IGNORE: Silently ignore the request.
+ * @PURPLE_ACCOUNT_RESPONSE_DENY: Block the request potentially informing the
+ *                                sender based on the protocol.
+ * @PURPLE_ACCOUNT_RESPONSE_PASS: Prompt the user with the request.
+ * @PURPLE_ACCOUNT_RESPONSE_ACCEPT: Grant the request.
  *
  * Account request response types
  */
@@ -88,6 +97,12 @@
 
 /**
  * PurpleAccountPrivacyType:
+ * @PURPLE_ACCOUNT_PRIVACY_ALLOW_ALL: Allow everything.
+ * @PURPLE_ACCOUNT_PRIVACY_DENY_ALL: Deny everything.
+ * @PURPLE_ACCOUNT_PRIVACY_ALLOW_USERS: Allow specific users.
+ * @PURPLE_ACCOUNT_PRIVACY_DENY_USERS: Deny specific users.
+ * @PURPLE_ACCOUNT_PRIVACY_ALLOW_BUDDYLIST: Allow users found in the buddy
+ *                                          list.
  *
  * Privacy data types.
  */
diff --git a/libpurple/accounts.h b/libpurple/accounts.h
--- a/libpurple/accounts.h
+++ b/libpurple/accounts.h
@@ -31,6 +31,8 @@
  * @short_description: <filename>accounts.h</filename>
  * @title: Accounts Subsystem API
  * @see_also: <link linkend="chapter-signals-account">Account signals</link>
+ *
+ * The accounts API is used to help manage #PurpleAccount's.
  */
 
 #include "account.h"
@@ -57,6 +59,12 @@
  * @close_account_request: Close a pending request for authorization.
  *                         @ui_handle is a handle as returned by
  *                         @request_authorize.
+ * @permit_added: Called during a call to purple_account_privacy_permit_add().
+ * @permit_removed: Called during a call to
+ *                  purple_account_privacy_permit_removed().
+ * @deny_added: Called during a call to purple_account_privacy_deny_add().
+ * @deny_removed: Called during a call to
+ *                purple_account_privacy_deny_removed().
  *
  * Account UI operations, used to notify the user of status changes and when
  * buddies add this account to their buddy lists.
@@ -96,10 +104,7 @@
 	void (*deny_removed)(PurpleAccount *account, const char *name);
 
 	/*< private >*/
-	void (*_purple_reserved1)(void);
-	void (*_purple_reserved2)(void);
-	void (*_purple_reserved3)(void);
-	void (*_purple_reserved4)(void);
+	gpointer reserved[4];
 };
 
 G_BEGIN_DECLS
diff --git a/libpurple/action.h b/libpurple/action.h
--- a/libpurple/action.h
+++ b/libpurple/action.h
@@ -29,6 +29,15 @@
 #include <glib.h>
 #include <glib-object.h>
 
+/**
+ * SECTION:action
+ * @section_id: libpurple-action
+ * @short_description: <filename>action.h</filename>
+ * @title: Protocol Actions
+ *
+ * This API allows protocols to expose actions to a user interface.
+ */
+
 #define PURPLE_TYPE_PROTOCOL_ACTION (purple_protocol_action_get_type())
 typedef struct _PurpleProtocolAction PurpleProtocolAction;
 
diff --git a/libpurple/media/enum-types.h b/libpurple/media/enum-types.h
--- a/libpurple/media/enum-types.h
+++ b/libpurple/media/enum-types.h
@@ -80,6 +80,11 @@
 
 /**
  * PurpleMediaCandidateType:
+ * @PURPLE_MEDIA_CANDIDATE_TYPE_HOST: A host candidate (local).
+ * @PURPLE_MEDIA_CANDIDATE_TYPE_SRFLX: A server reflexive candidate.
+ * @PURPLE_MEDIA_CANDIDATE_TYPE_PRFLX: A peer reflexive candidate.
+ * @PURPLE_MEDIA_CANDIDATE_TYPE_RELAY: A relay candidate.
+ * @PURPLE_MEDIA_CANDIDATE_TYPE_MULTICAST: A multicast address.
  *
  * Media candidate types
  */
@@ -93,6 +98,15 @@
 
 /**
  * PurpleMediaCaps:
+ * @PURPLE_MEDIA_CAPS_NONE: No capabilities.
+ * @PURPLE_MEDIA_CAPS_AUDIO: Bi-directional audio.
+ * @PURPLE_MEDIA_CAPS_AUDIO_SINGLE_DIRECTION: Single direction audio.
+ * @PURPLE_MEDIA_CAPS_VIDEO: Bi-directional video.
+ * @PURPLE_MEDIA_CAPS_VIDEO_SINGLE_DIRECTION: Single direction video.
+ * @PURPLE_MEDIA_CAPS_AUDIO_VIDEO: Bi-directional audio and video.
+ * @PURPLE_MEDIA_CAPS_MODIFY_SESSION: Modifiable session.
+ * @PURPLE_MEDIA_CAPS_CHANGE_DIRECTION: Initiator and destination can be
+ *                                      switched.
  *
  * Media caps
  */
@@ -109,6 +123,10 @@
 
 /**
  * PurpleMediaComponentType:
+ * @PURPLE_MEDIA_COMPONENT_NONE: Use this when specifying a component is
+ *                               innapropriate.
+ * @PURPLE_MEDIA_COMPONENT_RTP: This component is for RTP data.
+ * @PURPLE_MEDIA_COMPONENT_RTCP: This component is for RTCP control.
  *
  * Media component types
  */
@@ -120,6 +138,16 @@
 
 /**
  * PurpleMediaInfoType:
+ * @PURPLE_MEDIA_INFO_HANGUP: Terminate the media.
+ * @PURPLE_MEDIA_INFO_ACCEPT: Create/join the media.
+ * @PURPLE_MEDIA_INFO_REJECT: Terminate the media, possibly noting that it was
+ *                            rejected.
+ * @PURPLE_MEDIA_INFO_MUTE: Mute the media.
+ * @PURPLE_MEDIA_INFO_UNMUTE: Unmute the media.
+ * @PURPLE_MEDIA_INFO_PAUSE: Pause the media.
+ * @PURPLE_MEDIA_INFO_UNPAUSE: Unpause the media.
+ * @PURPLE_MEDIA_INFO_HOLD: Put the media on hold.
+ * @PURPLE_MEDIA_INFO_UNHOLD: Remove the media from hold.
  *
  * Media info types
  */
@@ -137,6 +165,16 @@
 
 /**
  * PurpleMediaNetworkProtocol:
+ * @PURPLE_MEDIA_NETWORK_PROTOCOL_UDP: A UDP based protocol.
+ * @PURPLE_MEDIA_NETWORK_PROTOCOL_TCP_PASSIVE: A TCP based protocol, will
+ *                                             listen for incoming connections.
+ * @PURPLE_MEDIA_NETWORK_PROTOCOL_TCP_ACTIVE: A TCP based protocol, will
+ *                                            attempt to open an outbound
+ *                                            connection.
+ * @PURPLE_MEDIA_NETWORK_PROTOCOL_TCP_SO: A TCP based protocol, will listen for
+ *                                        incoming connections and attempt an
+ *                                        outbound connection at the same time
+ *                                        as the peer (Simultanuous-Open).
  *
  * Media network protocols
  */
@@ -149,6 +187,21 @@
 
 /**
  * PurpleMediaSessionType:
+ * @PURPLE_MEDIA_NONE: Used for errors.
+ * @PURPLE_MEDIA_RECV_AUDIO: The session has incoming audio.
+ * @PURPLE_MEDIA_SEND_AUDIO: The session has outgoing audio.
+ * @PURPLE_MEDIA_RECV_VIDEO: The session has incoming video.
+ * @PURPLE_MEDIA_SEND_VIDEO: The session has outgoing video.
+ * @PURPLE_MEDIA_RECV_APPLICATION: The session has incoming application
+ *                                 specific data.
+ * @PURPLE_MEDIA_SEND_APPLICATION: The session has outgoing application
+ *                                 specific data.
+ * @PURPLE_MEDIA_AUDIO: An alias for #PURPLE_MEDIA_RECV_AUDIO and
+ *                      #PURPLE_MEDIA_SEND_AUDIO.
+ * @PURPLE_MEDIA_VIDEO: An alias for #PURPLE_MEDIA_RECV_VIDEO and
+ *                      #PURPLE_MEDIA_SEND_VIDEO.
+ * @PURPLE_MEDIA_APPLICATION: An alias for #PURPLE_MEDIA_RECV_APPLICATION
+ *                            and #PURPLE_MEDIA_SEND_APPLICATION.
  *
  * Media session types
  */
@@ -168,6 +221,10 @@
 
 /**
  * PurpleMediaState:
+ * @PURPLE_MEDIA_STATE_NEW: The media has not yet connected.
+ * @PURPLE_MEDIA_STATE_CONNECTED: The media is connected.
+ * @PURPLE_MEDIA_STATE_END: The media has previously connected but has since
+ *                          disconnected.
  *
  * Media state-changed types
  */
