Research
Security News
Malicious npm Packages Inject SSH Backdoors via Typosquatted Libraries
Socket’s threat research team has detected six malicious npm packages typosquatting popular libraries to insert SSH backdoors.
greip-node
Advanced tools
The official Node.js library of Greip API
Report Issue · Request Feature · Greip Website · Documentation
npm i greip-node --save
or
yarn add greip-node
Here's how you can use the Greip package in your Node.js project:
Use this method to retrieve the information of a given IP address.
const { Greip } = require("greip-node");
let greip = new Greip(process.env.GREIP_TOKEN);
greip
.Lookup({
ip: "1.1.1.1"
})
.then((res: any) => {
console.log(res.data); // Log Response
})
.catch((error: any) => {
console.log(error);
});
Retrieve threat intelligence information associated with a given IP address.
const { Greip } = require("greip-node");
let greip = new Greip(process.env.GREIP_TOKEN);
greip
.Threats({
ip: "1.1.1.1"
})
.then((res: any) => {
console.log(res.data); // Log Response
})
.catch((error: any) => {
console.log(error);
});
You can use this method to retrieve the information of multiple IP addresses
(no need to use the Lookup
method inside a loop).
const { Greip } = require("greip-node");
let greip = new Greip(process.env.GREIP_TOKEN);
greip
.BulkLookup({
ips: ["1.1.1.1", "2.2.2.2"]
})
.then((res: any) => {
console.log(res.data); // Log Response
})
.catch((error: any) => {
console.log(error);
});
In this method, Greip will help you lookup any given AS Number and returning all data related to it, like: name, org (the organization name), country, domain, email, phone, totalIPs, list of all routes (v4 & v6) related the given AS Number, etc.
const { Greip } = require("greip-node");
let greip = new Greip(process.env.GREIP_TOKEN);
greip
.ASN({
asn: "AS01"
})
.then((res: any) => {
console.log(res.data); // Log Response
})
.catch((error: any) => {
console.log(error);
});
This method can be used to detect abuse of your website/app. It’s a great way to know more about your user inputs and whether they contain profanity (bad words) or not before releasing them to the public.
const { Greip } = require("greip-node");
let greip = new Greip(process.env.GREIP_TOKEN);
greip
.Profanity({
text: "This is just normal sample text."
})
.then((res: any) => {
console.log(res.data); // Log Response
})
.catch((error: any) => {
console.log(error);
});
This method can help you retrieve information of the given country.
const { Greip } = require("greip-node");
let greip = new Greip(process.env.GREIP_TOKEN);
greip
.Country({
countryCode: "SA"
})
.then((res: any) => {
console.log(res.data); // Log Response
})
.catch((error: any) => {
console.log(error);
});
This method provides an additional layer of validation for your system. While validating email syntax is important, it is not sufficient.
This method goes beyond syntax validation by checking the domain’s validity, the availability of the Mail Service, detecting Disposable Email (Temporary Emails), etc. By utilising this method, you can ensure a more thorough validation process for email addresses.
const { Greip } = require("greip-node");
let greip = new Greip(process.env.GREIP_TOKEN);
greip
.EmailValidation({
email: "name@domain.com"
})
.then((res: any) => {
console.log(res.data); // Log Response
})
.catch((error: any) => {
console.log(error);
});
This method can be used as an extra-layer of your system for validating phone numbers. It validates phone number syntax and valid-possibility.
const { Greip } = require("greip-node");
let greip = new Greip(process.env.GREIP_TOKEN);
greip
.PhoneValidation({
phone: "123123123",
countryCode: "US"
})
.then((res: any) => {
console.log(res.data); // Log Response
})
.catch((error: any) => {
console.log(error);
});
Prevent financial losses by deploying AI-Powered modules.
const { Greip } = require("greip-node");
let greip = new Greip(process.env.GREIP_TOKEN);
greip
.PaymentFraud({
data: {
action: "purchase",
website_domain: "greip.io",
website_name: "Greip",
merchant_id: 21,
shipment_id: 1,
transaction_id: 100,
transaction_amount: 1000,
transaction_currency: "GBP",
cart_items: {
item_id: 1,
item_name: "Product name",
item_quantity: 1,
item_price: "1100.55",
item_category_id: 1
},
isDigitalProducts: true,
coupon: "ASDF",
customer_id: 1,
customer_firstname: "First",
customer_lastname: "Last",
customer_pob: "London",
customer_ip: "1.1.1.1",
customer_country: "GB",
customer_region: "London",
customer_city: "London",
customer_zip: "NW10 7PQ",
customer_street: "7 Coronation Road",
customer_street2: "",
customer_latitude: 0.123,
customer_longitude: 0.123,
customer_device_id: "UNIQUE_DEVICE_ID",
customer_phone: "000000000",
customer_registration_date: 1677554670,
customer_balance: "1000.00",
customer_dob: "1997-19-05",
customer_email: "name@domain.com",
customer_2fa: true,
customer_useragent: "Mozill almaden sdfwer",
shipping_country: "GB",
shipping_region: "London",
shipping_city: "London",
shipping_zip: "NW10 7PQ",
shipping_street: "7 Coronation Road",
shipping_street2: "",
shipping_latitude: 0.123,
shipping_longitude: 0.123,
billing_country: "GB",
billing_region: "London",
billing_city: "London",
billing_zip: "NW10 7PQ",
billing_street: "7 Coronation Road",
billing_street2: "",
billing_latitude: 0.123,
billing_longitude: 0.123,
payment_type: "applepay",
card_name: "First Last",
card_number: "1234XXXXXXXX1234",
card_expiry: "29/05",
cvv_result: true
}
})
.then((res: any) => {
console.log(res.data); // Log Response
})
.catch((error: any) => {
console.log(error);
});
This method allows you to validate International Bank Account Numbers (IBANs) and retrieve additional information about the country associated with the IBAN.
const { Greip } = require("greip-node");
let greip = new Greip(process.env.GREIP_TOKEN);
greip
.IBANValidation({
iban: "BY86AKBB10100000002966000000"
})
.then((res: any) => {
console.log(res); // Log Response
})
.catch((error: any) => {
console.log(error);
});
You can find the full guide of this package by visiting our Documentation Page.
FAQs
Official Node.js library for Greip API
The npm package greip-node receives a total of 3 weekly downloads. As such, greip-node popularity was classified as not popular.
We found that greip-node demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 0 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Research
Security News
Socket’s threat research team has detected six malicious npm packages typosquatting popular libraries to insert SSH backdoors.
Security News
MITRE's 2024 CWE Top 25 highlights critical software vulnerabilities like XSS, SQL Injection, and CSRF, reflecting shifts due to a refined ranking methodology.
Security News
In this segment of the Risky Business podcast, Feross Aboukhadijeh and Patrick Gray discuss the challenges of tracking malware discovered in open source softare.