Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

No-as-a-Service (NaaS) is a simple API that returns a random rejection reason. Use it when you need a realistic excuse, a fun “no,” or want to simulate being turned down in style.

Notifications You must be signed in to change notification settings

MungaiKeren/no-as-a-service

Open more actions menu
 
 

Repository files navigation

❌ No-as-a-Service

No-as-a-Service Banner

Ever needed a graceful way to say “no”?
This tiny API returns random, generic, creative, and sometimes hilarious rejection reasons — perfectly suited for any scenario: personal, professional, student life, dev life, or just because.

Built for humans, excuses, and humor.

Sponsored by GitAds

This project is sponsored by GitAds.
You can get your GitHub repository sponsored too — create your account now.


🚀 API Usage

Base URL

https://naas.isalman.dev/no

Method: GET
Rate Limit: 120 requests per minute per IP

🔄 Example Request

GET /no

✅ Example Response

{
  "reason": "This feels like something Future Me would yell at Present Me for agreeing to."
}

Use it in apps, bots, landing pages, Slack integrations, rejection letters, or wherever you need a polite (or witty) no.


🛠️ Self-Hosting

Want to run it yourself? It’s lightweight and simple.

1. Clone this repository

git clone https://github.com/hotheadhacker/no-as-a-service.git
cd no-as-a-service

2. Install dependencies

npm install

3. Start the server

npm start

The API will be live at:

http://localhost:3000/no

You can also change the port using an environment variable:

PORT=5000 npm start

📁 Project Structure

no-as-service/
├── index.js            # Express API
├── reasons.json        # 1000+ universal rejection reasons
├── package.json
├── .devcontainer.json  # VS Code / Github devcontainer setup
└── README.md

📦 package.json

For reference, here’s the package config:

{
  "name": "no-as-service",
  "version": "1.0.0",
  "description": "A lightweight API that returns random rejection or no reasons.",
  "main": "index.js",
  "scripts": {
    "start": "node index.js"
  },
  "author": "hotheadhacker",
  "license": "MIT",
  "dependencies": {
    "express": "^4.18.2",
    "express-rate-limit": "^7.0.0"
  }
}

⚓ Devcontainer

If you open this repo in Github Codespaces, it will automatically use .devcontainer.json to set up your environment. If you open it in VSCode, it will ask you if you want to reopen it in a container.


Projects Using No-as-a-Service

Here are some projects and websites that creatively integrate no-as-a-service to deliver humorous or programmatic "no" responses:

  1. no-as-a-service-rust
    Rust implementation of this project.

  2. CSG Admins
    A system administration and gaming service hub using no-as-a-service to provide playful negative responses across some admin panels and commands.

  3. FunnyAnswers - /no endpoint
    A humor-focused API playground that includes a mirror or wrapper for no-as-a-service, perfect for developers exploring fun HTTP-based responses.

  4. Gerador de Frases Aleatórias (pt-BR) Uma reinterpretação em Python com frases em português, frontend e novas categorias.

  5. Your Project Here?
    If you're using no-as-a-service in your project, open a pull request to be featured here!


Want to use no-as-a-service in your own project? Check out the usage section in this README and start returning "no" like a pro.


👤 Author

Created with creative stubbornness by hotheadhacker


📄 License

MIT — do whatever, just don’t say yes when you should say no.

About

No-as-a-Service (NaaS) is a simple API that returns a random rejection reason. Use it when you need a realistic excuse, a fun “no,” or want to simulate being turned down in style.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 100.0%
Morty Proxy This is a proxified and sanitized view of the page, visit original site.