This package has been deprecated

Author message:

package has been moved to @xivapi/js, see https://github.com/xivapi/xivapi-js/releases/tag/v0.3.2

xivapi-js

0.3.0 • Public • Published

xivapi-js

npm version license

This is a pure JS wrapper for interacting with XIVAPI and handling all requests in a simple, promise-driven manner.

Installation

Simply add the module to your node project with npm:

npm i xivapi-js

Usage

Require and initialize the module in your code:

const XIVAPI = require('xivapi-js')
const xiv = new XIVAPI()

...and then check out the wiki for usage help!

If you get really stuck and need some help, or run into any problems/concerns, either open up an issue on github or join the XIVAPI discord server and ping/DM @SacredPixel.

Examples:

Find an item ID, and then get the lowest market board price in a specific server:

const getItemPrice = async () => {
  //find item
  let res = await xiv.search('Stuffed Khloe')
 
  //use item ID for market query
  res = await xiv.market.get(res.Results[0].ID, {servers: 'Excalibur'})
 
  //return lowest price
  return res.Prices[0].PricePerUnit
}

Get the most recent lodestone news post:

const getLatestNews = async () => {
  //get the lodestone state
  let ls = await xiv.lodestone()
 
  //get most recent entry
  let entry = ls.News[0]
 
  //get the time since the entry's creation
  let timeNow = new Date()
  let diff = new Date(timeNow - entry.Time) //xivapi-js converts the timestamp into a Date object,
                                            //so you can just do this!
 
  //return your parsed entry
  console.log(`${entry.Title} (published ${diff.getUTCMinutes()} minutes ago)`)
}

Check for character ownership using a token we generated and provided to the user:

const verifyCharacter = async () => {
  //find the character with their name and server
  let res = await xiv.character.search('Kai Megumi', {server: 'excalibur'}) //case insensitive server names, btw ;)
 
  //get the character's ID
  let id = res.Results[0].ID
 
  //return whether or not the character's lodestone bio matches our token
  return await xiv.character.verification(id, 'token string')
}

Contribute

Feel free to open up issues/PRs or anything else.

Just git clone https://github.com/xivapi/xivapi-js.git, run npm i, and go to town!

License

This project is open source, under the terms described in the MIT License.

Readme

Keywords

Package Sidebar

Install

npm i xivapi-js

Weekly Downloads

1

Version

0.3.0

License

MIT

Unpacked Size

24.5 kB

Total Files

16

Last publish

Collaborators

  • thesacredpixel