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 🙏

© 2025 – Pkg Stats / Ryan Hefner

ixc-orm

v1.10.4

Published

ORM para consumo de dados da API do sistema IXC Provedor

Readme

IXC-ORM

TypeScript npm Status NPM Version

Esse ORM foi criado com o intuito de facilitar o consumo de dados da API oficial do IXC Provedor.
Essa biblioteca não faz parte das bibliotecas oficiais da IXCsoft e foi desenvolvida de forma independente e sem fins lucrativos.

Download

npm install ixc-orm
pnpm add ixc-orm
yarn add ixc-orm

Como utilizar

Para configurar a comunicação da biblioteca com seu servidor IXC Provedor, é necessário adicionar as seguintes variáveis de ambiente a um arquivo .env, que esteja localizado no diretório raiz do seu projeto.

[!NOTE]
Versão 1.10.4 stable

  • IXC_ACCESS_TOKEN Um token de API gerado dentro do IXC Provedor.
  • IXC_SERVER_DOMAIN O domínio do seu servidor IXC Provedor.
IXC_ACCESS_TOKEN=conteúdo-do-token-gerado-dentro-do-ixc
IXC_SERVER_DOMAIN=www.dominio-do-seu-servidor-ixc.com.br

Você também poderá configurar para que o Docker carregue as variáveis, ao invés de carregá-las diretamente do arquivo .env, dessa forma:

services:
  sua-aplicacao:
    build: .
    image: sua-imagem-docker
    environment:
      - IXC_ACCESS_TOKEN=${IXC_ACCESS_TOKEN}
      - IXC_SERVER_DOMAIN=${IXC_SERVER_DOMAIN}
    # Outras configurações do seu serviço

As classes que representarão os diferentes tipos de registros no seu IXC Provedor, deverão herdar da classe IxcOrm (nova versão), como no exemplo a seguir:

[!NOTE]
Versão 1.10.4 stable

import { IxcOrm } from 'ixc-orm';

class Contrato extends IxcOrm {
  constructor() {
    super('cliente_contrato');
  }
}

Após instanciar um objeto com o tipo que você criou (Contrato, como no exemplo a cima), você poderá acessar os métodos de construção da query de busca.

[!NOTE]
Versão 1.10.4 stable

import { IxcResponse, Sort } from 'ixc-orm';

const contrato = new Contrato();

IxcResponse response = await contrato
  .where('data_ativacao')
  .greaterThanEquals('2024-09-24')
  .orderBy('data_ativacao', Sort.DESC)
  .GET();

const contratos = response.registros(); 

Recursos da API do IXC Provedor

Existem alguns endpoints que a API do IXC Provedor disponibiliza, a fim de "encurtar o caminho" para chegar até algumas informações. Como por exemplo, obter o arquivo PDF de uma fatura. Para isso, você não precisará se preocupar em criar uma classe Boleto que herde da classe IxcOrm, por exemplo, nem encadear chamadas de filtros. Basta fazer como no exemplo a seguir:

import { Recurso } from 'ixc-orm';

const id_contrato = 45852;
const response = await Recurso.desbloqueioDeConfianca({ id_contrato });

Dos recursos disponibilizados pela API do IXC Provedor, essa biblioteca já possui as implementações de:
cliente_contrato_ativar_cliente, cliente_contrato_btn_lib_temp_24722, desbloqueio_confianca, get_boleto e radusuarios_25452.
Obs: Os nomes dos recursos estão de acordo com a API do IXC Provedor a fim de facilitar o estudo através da sua própria documentação oficial.

Contribuições

Contribuições são sempre bem-vindas!
Se você conhece uma maneira melhor de fazer algo, por favor, me avise! Caso contrário, é sempre melhor fazer um PR na branch main.

At.te,
Felipe S. Carmo.