RSS Git Download  Clone
  .idea p3x-robot sunday release 2017-7-1 13:17:02 2 years, 1 month ago
  src robo8x [chore] 1/4/2019, 10:40:51 PM 7 months ago
  test robo8x [chore] 1/5/2019, 10:47:55 AM 7 months ago
  .gitignore 216B p3x-robot sunday release 2018-5-4 21:36:03 1 year, 2 months ago
  .npmignore 146B p3x-robot 2 years, 1 month ago
  .travis.yml 792B robo8x [chore] 12/31/2018, 4:03:14 PM 7 months ago
  Gruntfile.js 300B p3x-robot 2 years, 1 month ago
  LICENSE 1kB robo8x [chore] 1/4/2019, 10:23:03 PM 7 months ago
  README.md 5kB robo8x [chore] 1/5/2019, 10:47:55 AM 7 months ago
  freenom.iml 404B p3x-robot sunday release 2018-2-24 10:38:10 1 year, 5 months ago
  package.json 1kB robo8x [chore] 1/5/2019, 10:47:55 AM 7 months ago
  README.md
[//]: #@corifeus-header [![NPM](https://nodei.co/npm/p3x-freenom.png?downloads=true&downloadRank=true&stars=true)](https://www.npmjs.com/package/p3x-freenom/) **I am trying to save up for a static IP address, if you have to give, any small amount, please donate! Thank you very much!** [![Like Corifeus @ Facebook](https://img.shields.io/badge/LIKE-Corifeus-3b5998.svg)](https://www.facebook.com/corifeus.software) [![Donate for Corifeus / P3X](https://img.shields.io/badge/Donate-Corifeus-003087.svg)](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=QZVM4V6HVZJW6) [![Contact Corifeus / P3X](https://img.shields.io/badge/Contact-P3X-ff9900.svg)](https://www.patrikx3.com/en/front/contact) [![Build Status](https://api.travis-ci.com/patrikx3/freenom.svg?branch=master)](https://travis-ci.com/patrikx3/freenom) [![Uptime Robot ratio (30 days)](https://img.shields.io/uptimerobot/ratio/m780749701-41bcade28c1ea8154eda7cca.svg)](https://uptimerobot.patrikx3.com/) # 🌐 Freenom API - Promise and auto renew expiring domains v2019.1.5-1 This is an open-source project. Star this repository, if you like it, or even donate! Thank you so much! :) I run my own server with dynamic IP address, so, it may happen, that the server can not be reachable for about max 15 minutes, due to nature of the dynamic DNS. The server may also be unreachable, when I backup the SSD with Clonzilla (very rarely) or an electrical issue (but this should not happen again). When the server is down, please hang on for 15-30 minutes and the server will be back up. All my domains (patrikx3.com and corifeus.com) could have errors, since I am developing in my free time. However, it is usually stable. **Bugs are evident™ - MATRIX️** ### Node Version Requirement ``` >=10.13.0 ``` ### Built on Node ``` v11.6.0 ``` The ```async``` and ```await``` keywords are required. Install NodeJs: https://nodejs.org/en/download/package-manager/ # Description [//]: #@corifeus-header:end # Freenom API First, to be able to use the API, you have to be a reseller. I think there is a FEE of 10 EURO to be able to use the API and register via the API, the terms are here: http://www.freenom.com/en/resellers.html http://www.freenom.com/en/termsandconditions.html You have to have a Reseller Account. The API: http://www.freenom.com/en/freenom-api.html I am using these only right now. So no other functions but very easy to add in and Promise based. ```js const Freenom = require('p3x-freenom'); const freenom = await Freenom({ email: 'p3x@corifeus', password: 'password', }); await freenom.service.ping(); await freenom.domain.search({ domainname: 'patrikx3.com', domaintype: 'FREE' }) await freenom.domain.delete({ domainname: 'random.tk')); await freenom.domain.register({ domainname: [ 'random.tk', 'random1.tk', 'random2.tk', ], domaintype: 'FREE', period: '1Y', nameserver: [ 'ns1.ns.tk', 'ns2.ns.tk', ] }) await freenom.domain.delete, { domainname: domains }) // if you have no domain in the list, instead of // giving an empty list, it shows and error!!! // so make sure you have one in the domain list // because freenom.domain.expiringRenew will of course // throw an error as well!!! await freenom.domain.list() ``` # The good extra functions It automatically renew the free domains (it checks if it is within 14 days expiry and then does it). ```js // just a helper, you don't relly need it const renewable = await freenom.domain.expiring({ expiry: '60 days', }); // the magic await freenom.domain.expiringRenew({ period: '12M', }) ``` [//]: #@corifeus-footer --- [**P3X-FREENOM**](https://pages.corifeus.com/freenom) Build v2019.1.5-1 [![Like Corifeus @ Facebook](https://img.shields.io/badge/LIKE-Corifeus-3b5998.svg)](https://www.facebook.com/corifeus.software) [![Donate for Corifeus / P3X](https://img.shields.io/badge/Donate-Corifeus-003087.svg)](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=QZVM4V6HVZJW6) [![Contact Corifeus / P3X](https://img.shields.io/badge/Contact-P3X-ff9900.svg)](https://www.patrikx3.com/en/front/contact) ## P3X Sponsors [IntelliJ - The most intelligent Java IDE](https://www.jetbrains.com) [![JetBrains](https://cdn.corifeus.com/assets/svg/jetbrains-logo.svg)](https://www.jetbrains.com/) [![NoSQLBooster](https://cdn.corifeus.com/assets/png/nosqlbooster-70x70.png)](https://www.nosqlbooster.com/) [The Smartest IDE for MongoDB](https://www.nosqlbooster.com) [//]: #@corifeus-footer:end