diff --git a/docs/r/storage_notification.html.markdown b/docs/r/storage_notification.html.markdown
new file mode 100644
index 00000000000..8e8595e2bbd
--- /dev/null
+++ b/docs/r/storage_notification.html.markdown
@@ -0,0 +1,86 @@
+---
+layout: "google"
+page_title: "Google: google_storage_notification"
+sidebar_current: "docs-google-storage-notification"
+description: |-
+ Creates a new notification configuration on a specified bucket.
+---
+
+# google\_storage\_notification
+
+Creates a new notification configuration on a specified bucket, establishing a flow of event notifications from GCS to a Cloud Pub/Sub topic.
+ For more information see
+[the official documentation](https://cloud.google.com/storage/docs/pubsub-notifications)
+and
+[API](https://cloud.google.com/storage/docs/json_api/v1/notifications).
+
+## Example Usage
+
+```hcl
+resource "google_storage_bucket" "bucket" {
+ name = "default_bucket"
+}
+
+resource "google_pubsub_topic" "topic" {
+ name = "default_topic"
+}
+
+// In order to enable notifications,
+// a GCS service account unique to each project
+// must have the IAM permission "projects.topics.publish" to a Cloud Pub/Sub topic from this project
+// The only reference to this requirement can be found here:
+// https://cloud.google.com/storage/docs/gsutil/commands/notification
+// The GCS service account has the format of @gs-project-accounts.iam.gserviceaccount.com
+// API for retrieving it https://cloud.google.com/storage/docs/json_api/v1/projects/serviceAccount/get
+
+resource "google_pubsub_topic_iam_binding" "binding" {
+ topic = "${google_pubsub_topic.topic.name}"
+ role = "roles/pubsub.publisher"
+
+ members = ["serviceAccount:my-project-id@gs-project-accounts.iam.gserviceaccount.com"]
+}
+
+resource "google_storage_notification" "notification" {
+ bucket = "${google_storage_bucket.bucket.name}"
+ payload_format = "JSON_API_V1"
+ topic = "${google_pubsub_topic.topic.id}"
+ event_types = ["%s","%s"]
+ custom_attributes {
+ new-attribute = "new-attribute-value"
+ }
+ depends_on = ["google_pubsub_topic_iam_binding.binding"]
+}
+```
+
+## Argument Reference
+
+The following arguments are supported:
+
+* `bucket` - (Required) The name of the bucket.
+
+* `payload_format` - (Required) The desired content of the Payload. One of `"JSON_API_V1"` or `"NONE"`.
+
+* `topic` - (Required) The Cloud PubSub topic to which this subscription publishes.
+
+- - -
+
+* `custom_attributes` - (Optional) A set of key/value attribute pairs to attach to each Cloud PubSub message published for this notification subscription
+
+* `event_types` - (Optional) List of event type filters for this notification config. If not specified, Cloud Storage will send notifications for all event types. The valid types are: `"OBJECT_FINALIZE"`, `"OBJECT_METADATA_UPDATE"`, `"OBJECT_DELETE"`, `"OBJECT_ARCHIVE"`
+
+* `object_name_prefix` - (Optional) Specifies a prefix path filter for this notification config. Cloud Storage will only send notifications for objects in this bucket whose names begin with the specified prefix.
+
+## Attributes Reference
+
+In addition to the arguments listed above, the following computed attributes are
+exported:
+
+* `self_link` - The URI of the created resource.
+
+## Import
+
+Storage notifications can be imported using the notification `id` in the format `/notificationConfigs/` e.g.
+
+```
+$ terraform import google_storage_notification.notification default_bucket/notificationConfigs/102
+```
diff --git a/google.erb b/google.erb
index 99590557069..52cb276645e 100644
--- a/google.erb
+++ b/google.erb
@@ -526,6 +526,10 @@
google_storage_default_object_acl
+ >
+ google_storage_notification
+
+
>
google_storage_object_acl