A NodeJS module for interacting with the SMMDB (Super Mario Maker) api.
$ npm i --save smm-api
(optional) Sets the application SMMDB API key. Key is used for uploading and staring courses
Accepts one argument:
key: SMMDB API Key
constsmm=require('smm-api');smm.apiKey('KEY');Gets overall SMMDB stats
Accepts one argument:
callback: Callback run when method finisheserror: An error, if there was onestats: SMMDB stats
constsmm=require('smm-api');smm.getStats((error,stats)=>{if(error)throwerror;console.log(stats);});If no error, returns object:
courses: Number of SMM courses (total 3DS and WiiU)courses64: Number of SM64M (Super Mario 64 Maker) levelsaccounts: Number of accounts
Searchs SMMDB courses
Accepts two arguments:
parameters: Search parameterscallback: Callback run when method finisheserror: An error, if there was onecourses: Courses list For a list of accepted parameters, see https://github.com/Tarnadas/smmdb#receive-course-list
constsmm=require('smm-api');smm.searchCourses({title: 'Test'},(error,courses)=>{if(error)throwerror;console.log(courses);});Star and unstar a course (requires API key)
Accepts one argument:
callback: Callback run when method finisheserror: An error, if there was onecourse_data: Data of the stared/unstared coures
constsmm=require('smm-api');smm.apiKey('API_KEY');// Stars the coursesmm.starUnstarCourse('59ab69804fa8fa5fb0946df3',(error,course_data)=>{if(error)throwerror;console.log(course_data);// Course is now stared by you});// Unstars the course (call method 2nd time)smm.starUnstarCourse('59ab69804fa8fa5fb0946df3',(error,course_data)=>{if(error)throwerror;console.log(course_data);// Course is now unstared by you});Downloads course by ID to a specified folder
Accepts three arguments:
courseId: ID of the coursepath: Path to folder to save course tocallback: Callback run when method finisheserror: An error, if there was one
constsmm=require('smm-api');smm.downloadCourse('59722397f160681a439d9b92','./',(error)=>{if(error)throwerror;console.log('Done');})Uploads course from given path (requires API key)
Accepts two arguments:
buffer: Compressed level buffercallback: Callback run when method finisheserror: An error, if there was onecourse_data: Data of the uploaded course
constsmm=require('smm-api');smm.apiKey('API_KEY');letbuffer=fs.readFileSync('Course.zip');smm.uploadCourse(buffer,'Test Course',(error,course_data)=>{if(error)throwerror;console.log(course_data);})