sro

    4.0.0 • Public • Published

    SRO

    npm package version Build status Code coverage Dependencies status JavaScript Standard Style

    📦🔍 Friendly Correios SRO API wrapper and command-line utility.

    • Validate tracking numbers and their check digits
    • Batch API requests whenever possible
    • Strip empty or whitespace-only fields
    • Create proper ISO date strings from events
    • Handle crazy server responses, like unclosed XML tags
    • Provide command-line utility with human-readable output

    Installation

    npm install sro
    

    Usage

    import * as sro from 'sro'
    
    sro.track('TE123456789BR', (err, items, failures) => {
      if (err) throw err
    
      items.forEach(item => console.log(item.eventos[0]?.descricao))
      failures.forEach(failure => console.log(failure.error))
    })

    If installed globally using the npm -g flag, SRO can also be invoked from the command-line:

    $ sro
    Usage: sro [options] <numbers...>
    
    Options:
      -V, --version          output the version number
      -o, --output <format>  specify the output format (table|json|pretty) [table] (default: "table")
      -c, --check            check tracking number check digit (default: false)
      -h, --help             display help for command

    API

    track(numbers, options?): Promise<[items, failures]>

    Tracks a collection of tracking numbers.

    Arguments

    • numbers (String|Array) - Tracking number or array of tracking numbers to be tracked.
    • options (Object) - Optional tracking options:
      • checkDigit (Boolean) - Whether to validate the tracking number check digit
      • onProgress(progress, item) (Function) - Callback function called for each number once its data has been retrieved. progress is a float number between 0 and 1. item is the item object. Invalid tracking numbers are filtered before any requests are made, so they will not be passed here.

    Return

    [items, failures] (Array)

    • items (Array) - Item objects.
    • failures (Array) - Objects containing the tracking numbers that did not pass validation.

    validate(number, options?): [passes, failures]

    Validates a collection of tracking numbers.

    Arguments

    • numbers (String|Array) - Tracking number or array of tracking numbers to be validated
    • options (Object) - Optional tracking options:
      • checkDigit (Boolean) - Whether to validate the tracking number check digit

    Return

    [passes, failures] (Array)

    • passes (Array) - Objects containing the tracking numbers that passed validation.
    • failures (Array) - Objects containing the tracking numbers that did not pass validation.

    Install

    npm i sro

    DownloadsWeekly Downloads

    22

    Version

    4.0.0

    License

    MIT

    Unpacked Size

    13.9 kB

    Total Files

    16

    Last publish

    Collaborators

    • rbardini