diff --git a/api/BUILD.gn b/api/BUILD.gn
index e1aedd3..9e8c48d 100644
--- a/api/BUILD.gn
+++ b/api/BUILD.gn
@@ -134,6 +134,62 @@
   ]
 }
 
+# TODO(bugs.webrtc.org/8733): Switch to rtc_library.
+rtc_library("candidate") {
+  # TODO(bugs.webrtc.org/8733): Uncomment.
+  # sources = [
+  #   "candidate.cc",
+  #   "candidate.h",
+  # ]
+  deps = [
+    "../rtc_base",
+    "../rtc_base:checks",
+    "../rtc_base:ip_address",
+    "../rtc_base:logging",
+    "../rtc_base:network_constants",
+    "../rtc_base:socket_address",
+    "../rtc_base:stringutils",
+    "../rtc_base/system:rtc_export",
+  ]
+  absl_deps = [ "//third_party/abseil-cpp/absl/strings" ]
+}
+
+rtc_source_set("turn_customizer") {
+  # TODO(bugs.webrtc.org/8733): Uncomment.
+  # sources = [ "turn_customizer.h" ]
+}
+
+rtc_source_set("ice_transport_interface") {
+  # TODO(bugs.webrtc.org/8733): Uncomment.
+  # sources = [ "ice_transport_interface.h" ]
+  deps = [
+    ":async_dns_resolver",
+    ":packet_socket_factory",
+    ":rtc_error",
+    ":scoped_refptr",
+    "../rtc_base:refcount",
+    "rtc_event_log:rtc_event_log",
+  ]
+}
+
+# TODO(bugs.webrtc.org/8733): Switch to rtc_library.
+rtc_source_set("dtls_transport_interface") {
+  # TODO(bugs.webrtc.org/8733): Uncomment.
+  # sources = [
+  #   "dtls_transport_interface.cc",
+  #   "dtls_transport_interface.h",
+  # ]
+  deps = [
+    ":ice_transport_interface",
+    ":rtc_error",
+    ":scoped_refptr",
+    "../rtc_base",
+    "../rtc_base:refcount",
+    "../rtc_base/system:rtc_export",
+  ]
+  absl_deps = [ "//third_party/abseil-cpp/absl/types:optional" ]
+}
+
 rtc_library("libjingle_peerconnection_api") {
   visibility = [ "*" ]
   cflags = []
