smm-api

2.1.2 • Public • Published

What it is

A NodeJS module for interacting with the SMMDB (Super Mario Maker) api.


Installation


$ npm i --save smm-api

apiKey('KEY')

(optional) Sets the application SMMDB API key. Key is used for uploading and staring courses

Accepts one argument:

  • key: SMMDB API Key
const smm = require('smm-api');
    
smm.apiKey('KEY');

getStats(callback)

Gets overall SMMDB stats

Accepts one argument:

  • callback: Callback run when method finishes
    • error: An error, if there was one
    • stats: SMMDB stats
const smm = require('smm-api');
 
smm.getStats((error, stats) => {
    if (error) throw error;
    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) levels
  • accounts: Number of accounts

searchCourses({parameters}, callback)

Searchs SMMDB courses

Accepts two arguments:

const smm = require('smm-api');
 
smm.searchCourses({
    title: 'Test'
}, (error, courses) => {
    if (error) throw error;
    console.log(courses);
});

starUnstarCourse(courseId, callback)

Star and unstar a course (requires API key)

Accepts one argument:

  • callback: Callback run when method finishes
    • error: An error, if there was one
    • course_data: Data of the stared/unstared coures
const smm = require('smm-api');
smm.apiKey('API_KEY');
 
// Stars the course
smm.starUnstarCourse('59ab69804fa8fa5fb0946df3', (error, course_data) => {
    if (error) throw error;
    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) throw error;
    console.log(course_data);
    // Course is now unstared by you
});

downloadCourse(courseId, target, callback)

Downloads course by ID to a specified folder

Accepts three arguments:

  • courseId: ID of the course
  • path: Path to folder to save course to
  • callback: Callback run when method finishes
    • error: An error, if there was one
const smm = require('smm-api');
    
smm.downloadCourse('59722397f160681a439d9b92', './', (error) => {
    if (error) throw error;
    console.log('Done');
})

uploadCourse(buffer, callback)

Uploads course from given path (requires API key)

Accepts two arguments:

  • buffer: Compressed level buffer
  • callback: Callback run when method finishes
    • error: An error, if there was one
    • course_data: Data of the uploaded course
const smm = require('smm-api');
smm.apiKey('API_KEY');
 
let buffer = fs.readFileSync('Course.zip');
smm.uploadCourse(buffer, 'Test Course', (error, course_data) => {
    if (error) throw error;
    console.log(course_data);
})

Dependents (0)

Package Sidebar

Install

npm i smm-api

Weekly Downloads

4

Version

2.1.2

License

ISC

Last publish

Collaborators

  • redducks
  • jonbarrow