@joshuanode/n8n-nodes-quoter
v0.0.9
Published
n8n community node for Quoter by ScalePad - Quote Management and Automation
Maintainers
Readme
n8n-nodes-quoter
Community node for the Quoter by ScalePad API - Automate quote creation, management, and CRM integration for MSPs.
Table of Contents
Features
| Feature | Description | |---------|-------------| | Full CRUD Operations | Complete create, read, update, delete support for all resources | | OAuth 2.0 Authentication | Secure client credentials flow with automatic token refresh | | Field Selection | Request only the fields you need for optimized API performance | | Automatic Pagination | Handles multi-page responses up to 100 records per request | | Rate Limit Handling | Detects and reports Quoter's 5 req/sec limit | | Expression Support | All fields support n8n expressions for dynamic values |
Installation
Recommended: Via n8n Community Nodes
- In n8n, navigate to Settings > Community Nodes
- Click Install a community node
- Enter
@joshuanode/n8n-nodes-quoter - Click Install
- Restart n8n
Manual: Via npm
npm install @joshuanode/n8n-nodes-quoterThen restart your n8n instance.
Credentials
To use this node, you'll need Quoter OAuth 2.0 credentials.
Getting Your API Credentials
- Sign in to Quoter
- Navigate to Account > API Keys
- Click Create API Key
- Save the Client ID and Client Secret
Configuring in n8n
| Field | Description | |-------|-------------| | Client ID | Your OAuth Client ID from Quoter | | Client Secret | Your OAuth Client Secret from Quoter |
Note: Access tokens are valid for 1 hour and refresh automatically. No manual intervention needed.
Compatibility
| n8n Version | Status | |-------------|--------| | 1.0.0+ | Supported |
Operations
Item
Manage products and services for quotes.
| Operation | Description | |-----------|-------------| | Create | Create a new item | | Get | Retrieve an item by ID | | Get Many | Retrieve multiple items with pagination | | Update | Update an existing item | | Delete | Delete an item |
Supported Fields:
- Name (required for create)
- Type (required for create: product/service)
- Description, Cost, Price, SKU
Quote
Manage quote records and proposals.
| Operation | Description | |-----------|-------------| | Create | Create a new quote | | Get | Retrieve a quote by ID | | Get Many | Retrieve multiple quotes with pagination | | Update | Update an existing quote | | Delete | Delete a quote |
Supported Fields:
- Customer ID (required for create)
- Quote Name (required for create)
- Template ID, Notes, Valid Until
- Status (draft/sent/accepted/declined)
Customer
Manage customer and client records.
| Operation | Description | |-----------|-------------| | Create | Create a new customer | | Get | Retrieve a customer by ID | | Get Many | Retrieve multiple customers with pagination | | Update | Update an existing customer | | Delete | Delete a customer |
Supported Fields:
- Name (required for create)
- Email, Phone, Address
Template
Access reusable quote templates (read-only).
| Operation | Description | |-----------|-------------| | Get | Retrieve a template by ID | | Get Many | Retrieve multiple templates with pagination |
Usage Examples
Example 1: Create a Quote from Template
- Add the ScalePad Quoter node to your workflow
- Select Quote as the resource
- Select Create as the operation
- Enter the Customer ID and Quote Name
- In Additional Fields, set the Template ID and Valid Until date
- Execute the workflow
Example 2: Bulk Update Item Prices
- Add a ScalePad Quoter node to get all items (Resource: Item, Operation: Get Many, Return All: true)
- Add a Function node to calculate new prices
- Add another ScalePad Quoter node (Resource: Item, Operation: Update) using the item ID and new price from the previous nodes
Example 3: Create Customer and Quote in One Flow
- Add a ScalePad Quoter node (Resource: Customer, Operation: Create) with company details
- Add a second ScalePad Quoter node (Resource: Quote, Operation: Create) using the new customer ID from step 1
Example 4: Get Items with Field Selection
- Add the ScalePad Quoter node
- Select Item as the resource
- Select Get Many as the operation
- Under Options, set Fields to
id,name,price,type - Execute to retrieve only the fields you need
Development
Prerequisites
- Node.js >= 18.17.0
- npm
- n8n installed locally (for testing)
Setup
# Clone the repository
git clone https://github.com/ajoshuasmith/n8n-nodes-quoter.git
cd n8n-nodes-quoter
# Install dependencies
npm install
# Build the node
npm run build
# Watch for changes during development
npm run dev
# Lint code
npm run lint
# Format code
npm run formatTesting Locally
- Build the node:
npm run build - Link it to your n8n installation:
npm link - In your n8n directory:
npm link @joshuanode/n8n-nodes-quoter - Restart n8n
Project Structure
n8n-nodes-quoter/
├── credentials/
│ └── ScalePadQuoterOAuth2Api.credentials.ts
├── nodes/
│ ├── shared/
│ │ ├── GenericFunctions.ts
│ │ └── types.ts
│ └── ScalePadQuoter/
│ ├── ScalePadQuoter.node.ts
│ ├── quoter.svg
│ └── descriptions/
│ ├── ItemDescription.ts
│ ├── QuoteDescription.ts
│ ├── CustomerDescription.ts
│ └── TemplateDescription.ts
├── package.json
├── tsconfig.json
├── gulpfile.js
└── README.mdResources
Related Packages
- n8n-nodes-scalepad - ScalePad Core API and Lifecycle Manager
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
License
Support
If you encounter any issues or have questions:
- Open an issue
- Check the Quoter API documentation
