Skip to content
/ IAB Public

IAB's Vast & VMAP formats handling for Node.js

License

Notifications You must be signed in to change notification settings

etf1/IAB

Repository files navigation

IAB's Vast & VMAP formats handling for Node.js.

dependencies Status Build Status codecov Known Vulnerabilities

const IAB = require('iab');

// VAST 2/3
const parser = new IAB.VAST3Parser(vastXMLContent);
// Or VMAP
const parser = new IAB.VMAPParser(vastXMLContent);

parser.parse()
    .then((document) => {
      // document is now a VAST/VMAP parsed document object.
      // Eg : document.ads[1].adTitle => 'Ad's title'
    })
    .catch((err) => {
      if (err.parsingError) {
        console.err(`Could not parse document : ${err}`);
      } else if (err.parsingError) {
        console.err(`Could not validate document : ${err}`);
      }
    });

Parsed document objects

The parsed document objects definition can be found here :

The TypeScript source is fully documented and should be easy to read for JS developers.

Compatibility

As this module is using Joi for validation, the minimum Node.js version required is 4.

@TODO

  • Correctly handle XMLNS
  • Handle icons
  • Handle nonlinear & companion creative