npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

zeta-middleware-api

v1.0.0

Published

Browser and node module for making API requests against [Zeta Middleware API](http://{host}/api/{version}).

Readme

Zeta Middleware API

Browser and node module for making API requests against Zeta Middleware API.

Please note: This module uses Popsicle to make API requests. Promises must be supported or polyfilled on all target environments.

Installation

npm install zeta-middleware-api --save
bower install zeta-middleware-api --save

Usage

Node

var ZetaMiddlewareApi = require('zeta-middleware-api');

var client = new ZetaMiddlewareApi();

Browsers

<script src="zeta-middleware-api/index.js"></script>

<script>
  var client = new ZetaMiddlewareApi();
</script>

Options

You can set options when you initialize a client or at any time with the options property. You may also override options for a single request by passing an object as the second argument of any request method. For example:

var client = new ZetaMiddlewareApi({ ... });

client.options = { ... };

client.resource('/').get(null, {
  baseUri: 'http://example.com',
  headers: {
    'Content-Type': 'application/json'
  }
});

Base URI

You can override the base URI by setting the baseUri property, or initializing a client with a base URI. For example:

new ZetaMiddlewareApi({
  baseUri: 'https://example.com'
});

Base URI Parameters

If the base URI has parameters inline, you can set them by updating the baseUriParameters property. For example:

client.options.baseUriParameters.version = 'v1';

Resources

All methods return a HTTP request instance of Popsicle, which allows the use of promises (and streaming in node).

resources.entities.schema

var resource = client.resources.entities.schema;
GET

Este endpoint disponibiliza uma lista completa dos recursos disponíveis nesta instância específica do Middleware, com informações sobre a estrutura de dos recursos, campos, tipos de dados, índices de pesquisa e identificadores.

resource.get().then(function (res) { ... });
Query Parameters
resource.get({ ... });
  • extended boolean

Este recurso possui metadados adicionais que pode ser solicitados sob demanda. O parâmetro extended define o modo com que os metadados contidos no recurso em questão serão apresentados. O valor padrão de extended é false, apresentado os metadados em sua representação simples. Para uma representação detalhada o parâmetro deve ser ajustado para true.

resources.entities.schema.name(name)

  • name string

Nome do recurso a ser descrito.

var resource = client.resources.entities.schema.name(name);
GET

Apresenta a estrutura, campos, tipos de dados, índices de pesquisa e identificadores de um único recurso da instância.

resource.get().then(function (res) { ... });
Query Parameters
resource.get({ ... });
  • extended boolean

Este recurso possui metadados adicionais que pode ser solicitados sob demanda. O parâmetro extended define o modo com que os metadados contidos no recurso em questão serão apresentados. O valor padrão de extended é false, apresentado os metadados em sua representação simples. Para uma representação detalhada o parâmetro deve ser ajustado para true.

resources.entities.name(name)

  • name string

Nome do tipo de recurso sobre o qual a operação será executada. Apenas tipos listados no endpoint /resources/schema serão aceitos.

var resource = client.resources.entities.name(name);
GET

Retorna todos os itens de um determinado tipo de recurso. Suporta seleção customizada dos campos das representações padrão dos recursos, ordenação e paginação.

resource.get().then(function (res) { ... });
Query Parameters
resource.get({ ... });
  • limit integer, default: 100

Este recurso suporta paginação. O parâmetro limit define o numero máximo de itens retornados por página. Embora não seja obrigatório, pode trabalhar em conjunto com o parâmtro offset. (ex limit=10 retorna uma página de itens da posição 0 até 10. O valor padrão de limit é 100, quando ajustado para 0 desabilita a paginação.

  • offset integer

O parâmetro offset, ou deslocamento, indica o número de itens saltados antes do inicio da contagem definida por limit (ex: ?limit=10&offset=10 retorna uma página de itens da posição 11 até 20). O valor padão de offset é 0.

  • sort string

Este recurso suporta ordenação. O parâmetro sort define o modo como a lista de itens será ordenada.

  • fields string

É possíve retornar apenas um subconunto de campos da prepresentação padrão do recurso quando necessário. Nem sempre o cliente precisa de todas as informações contidas na representação padrão do recurso, permitir que ele receba somente quais informações que realmente precisa permite utilizar melhor recursos importantes como rede e hardware, otimizando a performance e eficiência do cunsumoa do serviço.

POST

Cria um novo recurso.

resource.post().then(function (res) { ... });
Body

application/json

resources.entities.name(name).id(id)

  • id string

Identificador único do recurso sobre o qual a operação será executada. Apenas recursos listados no endpoint /resources/schema serão aceitos.

var resource = client.resources.entities.name(name).id(id);
GET

Retorna um recurso.

resource.get().then(function (res) { ... });
Query Parameters
resource.get({ ... });
  • fields string

É possíve retornar apenas um subconunto de campos da prepresentação padrão do recurso quando necessário. Nem sempre o cliente precisa de todas as informações contidas na representação padrão do recurso, permitir que ele receba somente quais informações que realmente precisa permite utilizar melhor recursos importantes como rede e hardware, otimizando a performance e eficiência do cunsumoa do serviço.

DELETE

Destrói um recurso.

resource.delete().then(function (res) { ... });
PATCH

Atualiza parcialmente um recurso.

resource.patch().then(function (res) { ... });
Body

application/json

PUT

Atualiza um recurso.

resource.put().then(function (res) { ... });
Body

application/json

resources.entities.search

var resource = client.resources.entities.search;
GET

Endpoint que expõe uma interface de consulta nativa, baseada em SQL (ODBC 3.0)

resource.get().then(function (res) { ... });
Query Parameters
resource.get({ ... });
  • limit integer, default: 100

Este recurso suporta paginação. O parâmetro limit define o numero máximo de itens retornados por página. Embora não seja obrigatório, pode trabalhar em conjunto com o parâmtro offset. (ex limit=10 retorna uma página de itens da posição 0 até 10. O valor padrão de limit é 100, quando ajustado para 0 desabilita a paginação.

  • offset integer

O parâmetro offset, ou deslocamento, indica o número de itens saltados antes do inicio da contagem definida por limit (ex: ?limit=10&offset=10 retorna uma página de itens da posição 11 até 20). O valor padão de offset é 0.

  • extended boolean

Este recurso possui metadados adicionais que pode ser solicitados sob demanda. O parâmetro extended define o modo com que os metadados contidos no recurso em questão serão apresentados. O valor padrão de extended é false, apresentado os metadados em sua representação simples. Para uma representação detalhada o parâmetro deve ser ajustado para true.

  • q string

Uma declaração de cláusula SELECT da SQL (ODBC 3.0)

resources.health

var resource = client.resources.health;
GET
resource.get().then(function (res) { ... });

resources.artifacts

var resource = client.resources.artifacts;
GET
resource.get().then(function (res) { ... });
Query Parameters
resource.get({ ... });
  • sort string

Este recurso suporta ordenação. O parâmetro sort define o modo como a lista de itens será ordenada.

resources.artifacts.name(name)

  • name string
var resource = client.resources.artifacts.name(name);
GET
resource.get().then(function (res) { ... });

Custom Resources

You can make requests to a custom path in the API using the #resource(path) method.

client.resource('/example/path').get();

License

Apache 2.0