         return try StripeRequest(client: self.client, method: .post, route: .skus(skuId), query: [:], body: Body.data(body.formURLEncoded()), headers: nil)
     }
     
+    /**
+     List all SKUs
+     Returns a list of your SKUs. The SKUs are returned sorted by creation date, with the most 
+     recently created SKUs appearing first.
+     
+     - parameter filter: A Filter item to pass query parameters when fetching results
+     
+     - returns: A StripeRequest<> item which you can then use to convert to the corresponding node
+     */
     public func listAll(filter: StripeFilter? = nil) throws -> StripeRequest<SKUList> {
      var query = [String : NodeRepresentable]()
      if let data = try filter?.createQuery() {

     return try StripeRequest(client: self.client, method: .get, route: .sku, query: query, body: nil, headers: nil)
     }
    
    public func delete(sku skuId: String) throws -> StripeRequest<DeletedObject> {
        return try StripeRequest(client: self.client, method: .delete, route: .skus(skuId), query: [:], body: nil, headers: nil)
    }

        self.client = client
    }
    
    /**
     Create a SKU
     Creates a new SKU associated with a product.
     
     - parameter currency:          Three-letter ISO currency code, in lowercase.
     - parameter inventory:         Description of the SKU’s inventory.
     - parameter price:             The cost of the item as a nonnegative integer in the smallest 
                                    currency unit (that is, 100 cents to charge $1.00, or 100 to 
                                    charge ¥100, Japanese Yen being a zero-decimal currency).
     - parameter product:           The ID of the product this SKU is associated with.
     - parameter id:                The ID of the product this SKU is associated with.
     - parameter active:            Whether or not the SKU is available for purchase. Default to true.
     - parameter attributes:        A dictionary of attributes and values for the attributes defined by 
                                    the product. If, for example, a product’s attributes are ["size", "gender"], 
                                    a valid SKU has the following dictionary of attributes: 
                                    {"size": "Medium", "gender": "Unisex"}.
     - parameter image:             The URL of an image for this SKU, meant to be displayable to the customer.
     - parameter packageDimensions: The dimensions of this SKU for shipping purposes.
     - parameter metadata:          A set of key/value pairs that you can attach to a SKU object. It can be 
                                    useful for storing additional information about the SKU in a structured format.
     
     - returns: A StripeRequest<> item which you can then use to convert to the corresponding node
     */
    public func create(currency: StripeCurrency, inventory: Node, price: Int, product: String, id: String? = nil, active: Bool? = nil, attributes: Node? = nil, image: String? = nil, packageDimensions: Node? = nil, metadata: Node? = nil) throws -> StripeRequest<SKU> {
        var body = Node([:])
        
