     
     /**
      Fetches the issues of the authenticated user
+     - parameter page: Current page for issue pagination. `1` by default.
+     - parameter perPage: Number of issues per page. `100` by default.
      - parameter completion: Callback for the outcome of the fetch.
      */
-    public func myIssues(completion: (response: Response<[Issue]>) -> Void) {
-        let router = IssueRouter.ReadAuthenticatedIssues(configuration)
+    public func myIssues(page: String = "1", perPage: String = "100", completion: (response: Response<[Issue]>) -> Void) {
+        let router = IssueRouter.ReadAuthenticatedIssues(configuration, page, perPage)
         router.loadJSON([[String: AnyObject]].self) { json, error in
             if let error = error {
                 completion(response: Response.Failure(error))
             } else {
                 if let json = json {
-                    let parsedIssue = json.map { Issue($0) }
-                    completion(response: Response.Success(parsedIssue))
+                    let parsedIssues = json.map { Issue($0) }
+                    completion(response: Response.Success(parsedIssues))
                 }
             }
         }

    
    var configuration: Configuration {
        switch self {
        case .ReadAuthenticatedIssues(let config): return config
        }
    }
    
    var path: String {
        switch self {
        case .ReadAuthenticatedIssues:
            return "user/issues"
        }
    }
    
    var params: [String: String] {
        return [:]
    }
}


// MARK: Router

enum IssueRouter: Router {
    case ReadAuthenticatedIssues(Configuration, String, String)
    
    var method: HTTPMethod {
        return .GET
