diff --git a/AWS/EC2/Instance.hs b/AWS/EC2/Instance.hs
--- a/AWS/EC2/Instance.hs
+++ b/AWS/EC2/Instance.hs
@@ -1,4 +1,4 @@
-{-# LANGUAGE FlexibleContexts #-}
+{-# LANGUAGE FlexibleContexts, RankNTypes #-}
 
 module AWS.EC2.Instance
     ( describeInstances
diff --git a/AWS/EC2/Snapshot.hs b/AWS/EC2/Snapshot.hs
--- a/AWS/EC2/Snapshot.hs
+++ b/AWS/EC2/Snapshot.hs
@@ -2,6 +2,8 @@
 
 module AWS.EC2.Snapshot
     ( describeSnapshots
+    , createSnapshot
+    , deleteSnapshot
     ) where
 
 import Data.Text (Text)
@@ -25,7 +27,8 @@
     -> [Filter] -- ^ Filters
     -> EC2 m (Source m Snapshot)
 describeSnapshots ssids owners restby filters =
-    ec2QuerySource "DescribeSnapshots" params snapshotSet
+    ec2QuerySource "DescribeSnapshots" params $
+        itemConduit "snapshotSet" snapshotSink
   where
     params =
         [ ArrayParams "SnapshotId" ssids
@@ -33,10 +36,10 @@
         , ArrayParams "RestorableBy" restby
         , FilterParams filters
         ]
-    snapshotSet :: MonadThrow m
-        => GLConduit Event m Snapshot
-    snapshotSet = itemConduit "snapshotSet" $
-        snapshot
+
+snapshotSink :: MonadThrow m
+    => GLSink Event m Snapshot
+snapshotSink = snapshot
         <$> getT "snapshotId"
         <*> getT "volumeId"
         <*> getF "status" snapshotStatus
@@ -47,3 +50,23 @@
         <*> getT "description"
         <*> getMT "ownerAlias"
         <*> resourceTagSink
+
+createSnapshot
+    :: (MonadResource m, MonadBaseControl IO m)
+    => Text -- ^ SnapshotId
+    -> Maybe Text -- ^ Description
+    -> EC2 m Snapshot
+createSnapshot volid desc =
+    ec2Query "CreateSnapshot" params snapshotSink
+  where
+    params = [ValueParam "VolumeId" volid]
+        ++ maybe [] (\a -> [ValueParam "Description" a]) desc
+
+deleteSnapshot
+    :: (MonadResource m, MonadBaseControl IO m)
+    => Text -- ^ SnapshotId
+    -> EC2 m Bool
+deleteSnapshot ssid =
+    ec2Query "DeleteSnapshot" params $ getF "return" textToBool
+  where
+    params = [ValueParam "SnapshotId" ssid]
diff --git a/aws-sdk.cabal b/aws-sdk.cabal
--- a/aws-sdk.cabal
+++ b/aws-sdk.cabal
@@ -1,5 +1,5 @@
 name:                aws-sdk
-version:             0.1.1.0
+version:             0.1.2.0
 synopsis:            AWS SDK for Haskell
 description:         An AWS(Amazon Web Services) liblary for Haskell.
 license:             BSD3
