diff --git a/custom_pub.module b/custom_pub.module
index 341c295..9c17c2b 100644
--- a/custom_pub.module
+++ b/custom_pub.module
@@ -135,6 +135,15 @@ function custom_pub_form_alter(&$form, $form_state, $form_id) {
       array_unshift($form['#submit'], 'custom_pub_node_admin_inc_add');
     }
   }
+
+  // add integration for fasttoggle if it exists
+  if ($form_id == 'fasttoggle_settings_form') {
+    $custom_publish_options = custom_pub_types_list();
+
+    foreach ($custom_publish_options as $machine_name => $label) {
+      $form['nodes']['fasttoggle_node_settings']['#options'][$machine_name] = t('!label <small>!custom_publish_link</small>', array('!label' => $label, '!custom_publish_link' => l('(Custom Publish Option)', 'admin/structure/custom_pub')));
+    }
+  }
 }
 
 /**
@@ -457,3 +466,32 @@ function custom_pub_types($rebuild = FALSE) {
 function custom_pub_types_rebuild() {
   custom_pub_types(TRUE);
 }
+
+/**
+ * Add integration with the Fasttoggle module.
+ * @param $type
+ * @param null $object
+ * @return array
+ */
+function custom_pub_fasttoggle_options($type, $object = NULL) {
+  $settings = array();
+
+  if ($type != 'node') {
+    return $settings;
+  }
+
+  $allow = node_access('update', $object);
+
+  // Get an array with all enabled fast toggle links
+  $fasttoggle_settings = variable_get('fasttoggle_node_settings', '');
+
+  $custom_publish_options = custom_pub_types_list();
+
+  foreach ($custom_publish_options as $machine_name => $label) {
+    if ($fasttoggle_settings[$machine_name] && $allow && user_access('edit_custom_pub_' . $machine_name)) {
+      $settings[$machine_name] = array(0 => t('set @option status', array('@option' => $label)), 1 => t('unset @option status', array('@option' => $label)));
+    }
+  }
+
+  return $settings;
+}
