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 🙏

© 2026 – Pkg Stats / Ryan Hefner

n8n-nodes-palgate

v1.0.30

Published

n8n community node for PAL Gate API - manage users, places, devices, and organizations. Delete user operation fully working (v1.0.28+) with automatic phone formatting and type handling.

Readme

n8n-nodes-palgate

n8n community node for PAL Gate parking management system integration.

Installation

npm install n8n-nodes-palgate

Or install via n8n Community Nodes settings in your n8n instance.

Supported Operations

✅ Fully Working

| Resource | Operation | Status | Description | |----------|-----------|--------|-------------| | Auth | Login | ✅ Working | Authenticate with PAL Gate API | | Places | Get All | ✅ Working | Get hierarchical tree of places | | Places | Get One | ✅ Working | Get details of a specific place | | Users | Get All | ✅ Working | Get all users in a place | | Users | Add | ✅ Working | Add a new user to a place | | Users | Update | ✅ Working | Update user information | | Groups | Get All | ✅ Working | Get groups for a place | | Devices | Get Info | ✅ Working | Get device information |

⚠️ Limited Support

| Resource | Operation | Status | Notes | |----------|-----------|--------|-------| | Users | Delete | ✅ Working | Fixed in v1.0.28 - handles both string and number phone formats | | Devices | Open Gate | ⚠️ Use carefully | Triggers physical gate operation |

❌ Not Available

| Resource | Operation | Status | Notes | |----------|-----------|--------|-------| | Vehicles | All Operations | ❌ Not supported | API endpoints not available - may be added in future updates |

Configuration

Credentials

The node requires PAL Gate API credentials:

  • Username/Email: Your PAL Gate account email
  • Password: Your PAL Gate account password
  • API URL: https://portal.pal-es.com (default, automatically configured)

Required Parameters

  • Place ID: Found in PAL Gate portal URL or settings (format: UUID)
  • Device ID: For device operations, found in device settings

API Endpoints

Verified Working Endpoints

Authentication:
  POST /api1/user/login1

Places:
  GET /api1/places-tree
  GET /api1/place/{placeId}

Users:
  GET /api1/place/{placeId}/users
  POST /api1/place/{placeId}/user
  DELETE /api1/place/{placeId}/users

Groups:
  GET /api1/place/{placeId}/groups

Devices:
  GET /api1/device/{deviceId}

Error Handling

The node includes comprehensive error handling:

  • Input Validation: Phone numbers, required fields, format checks
  • Clear Error Messages: Context-aware error messages with helpful hints
  • API Error Translation: Converts API errors to user-friendly messages
  • Status Code Handling: Specific messages for common HTTP status codes

Error Message Examples

  • 400 Bad Request: "Bad request. Please check your input parameters."
  • 401 Unauthorized: "Authentication failed. Please check your credentials."
  • 403 Forbidden: "Access forbidden. You may not have permission for this operation."
  • 404 Not Found: "Resource not found. Please verify the resource exists."
  • 409 Conflict: "Conflict. The resource may already exist."
  • 500+ Server Error: "Server error. Please try again later or contact support."

Safety Features

Delete Operations

Delete operations include multiple safety layers:

  1. Phone Number Validation: Required, format check, non-empty validation
  2. Type Handling: Accepts both string and number types (fixed in v1.0.28)
  3. Automatic Formatting: Converts phone numbers to 972XXXXXXXXX format
  4. Empty Array Prevention: Prevents sending empty phones arrays
  5. Detailed Logging: Full audit trail of all delete operations
  6. Warning Messages: Critical warnings about API behavior

Fixed in v1.0.28: Delete operation now correctly handles phone numbers passed as numbers (from n8n expressions like 972{{ $json.M_phone }}).

Add Operations

  • Phone Validation: Prevents empty phone numbers (API would generate random IDs)
  • Required Field Checks: Validates all required fields before sending
  • Format Validation: Ensures data is in correct format

Usage Examples

Add a User

  1. Select resource: User
  2. Select operation: Add
  3. Enter Place ID
  4. Enter Phone number (required)
  5. Enter First Name (required)
  6. Enter Last Name (required)
  7. Optionally add Cars

Get All Users in a Place

  1. Select resource: User
  2. Select operation: Find or Get Many
  3. Enter Place ID
  4. Optionally add filter (for Find operation)

Update a User

  1. Select resource: User
  2. Select operation: Update or Update By Phone
  3. Enter Place ID
  4. Enter Phone number
  5. Update desired fields

Known Limitations

API Limitations

  1. Vehicle Operations: Vehicle endpoints return 404. This is an API limitation, not a node issue.
  2. Delete Operation: ✅ Fixed in v1.0.28 - now handles both string and number phone formats correctly.
  3. Empty Phone Numbers: API accepts empty phone numbers and generates random IDs. Node validates to prevent this.

Workarounds

  • Vehicles: Currently not supported by API. May be added in future API updates.
  • Delete Verification: Always check user count before and after delete operations.

Testing

The node has been tested against the live PAL Gate API:

  • Total Tests: 17
  • Passed: 12 (70.6%)
  • Failed: 1 (API issue, node includes protection)
  • Skipped: 4 (Features not available in API)

See test/AUTOMATED_TEST_REPORT.md for detailed test results.

Troubleshooting

Delete Operation Issues

Error 4101: "Check delete number list"

  • Solution: Update to v1.0.28 or later
  • Cause: Phone number type handling (fixed in v1.0.28)
  • See: DELETE_OPERATION.md for details

Other Delete Issues:

  • Verify phone number format
  • Check n8n execution logs for validation messages
  • Ensure place ID is correct

Support

Node Issues

For issues with this n8n node:

API Issues

For PAL Gate API issues:

  • Contact PAL Gate support
  • Check PAL Gate API documentation

Development

Building

npm run build

Testing

node test/automated-tests.js

Linting

npm run lint

License

MIT

Author

PAL Portal Team

Version

1.0.28

Recent Updates

v1.0.28 (2026-01-13)

  • Fixed delete operation to handle number types (not just strings)
  • Resolved error 4101 "Check delete number list"
  • Improved phone number validation

v1.0.27 (2026-01-13)

  • Maintenance release

v1.0.26 (2026-01-13)

  • Added automatic phone number formatting for delete operations
  • Handles phone numbers starting with 0 (converts to 972)
  • Handles phone numbers without country code (adds 972 prefix)

v1.0.25 (2026-01-13)

  • Fixed delete operation to use correct API format (POST /delete-many-users with userList)

Changelog

See CHANGELOG.md for version history.