fastly-lib

Node.js client to interface with the Fastly API

View project on GitHub

fastly-lib

Dependencies-free client to interface with the Fastly API.

NPM

[![codecov](https://codecov.io/gh/luisan00/fastly-lib/branch/master/graph/badge.svg?token=S5tjNuzXaS)](https://codecov.io/gh/luisan00/fastly-lib) [![](https://img.shields.io/website?url=https%3A%2F%2Fluisan00.github.io%2Ffastly-lib%2F)](https://luisan00.github.io/fastly-lib/)

Requirements

Node.js version 16 or greater

Installing

The simplest method is to use npm in your source code folder

npm install fastly-lib

Usage

Firstly and before to use the client, i strongly recommend reading the documentation about the Fastly API and our WiKi for a detailed description of each library method.

const fastlyLib = require('fastly-lib');
const fastly = new fastlyLib('your_api_key');

fastly.get('/public-ip-list')
    .then((res) => {
        // do something with the response.
    })
    .catch((err) => {
        // something in case of error.
    })
 
// Or use the method that corresponds to each action
fastly.post(...)
fastly.purge(...)
fastly.delete(...)

Or using helpers

// get a list of Fastly datacenters.
fastly.datacenters()
  .then((res) => {
    // do something with the response.
  })
  .catch((err) => {
    // or something in case of errors.
  })

Helpers

fastly-lib also provides access to Fastly API functions through the following few methods

Configuration

Method Params Description
.domains(service_id, version) service_id: String
version: Number
[?]
.service() None [?]
.versions(service_id) service_id: String [?]

Purging

.purge(url) url: String Purge an individual URL [?].
.purge_all(service_id) service_id: String [?]
.purge_by_key(service_id, key) service_id: String
key: String
[?]
.purge_multiple(service_id, keys) service_id: String</br> keys: Array of Strings [?]
.softpurge(url) url: String [?]
.softpurge_by_key(service_id, key) service_id: String</br> key: String [?]

Utilities

.content(url) url: String List of URLs cached on each edge server.[?]
.datacenters() None List of Fastly datacenters[?]
.docs() None Gets all the Fastly API documentation. [?]
.public_ip_list() None Return the list of public IP addresses for the Fastly network. [?]

Extra

Method Params Description
.list_domains() None List of all domains associated with a Fastly account [?].

Contributing

I’ll be happy to hear your ideas or fix some bug. Please feel free to send me a message or create a new issue

License

fastly-lib is licensed under the MIT License © 2017-2019 luisan00