Skip to content

Conversation

@JoshSEdwards
Copy link
Contributor

@JoshSEdwards JoshSEdwards commented Jan 7, 2026

Summary

  • add endpoint builders and query helpers for new health/status, zones, recordsets, groups, users, and batch-review routes
  • add client methods for ping/health/color/Prometheus metrics, status get/update, backend IDs, deleted zones, ACL rule add/delete, recordset count/history/failures, group change/valid domains, user get/lock/unlock, and batch review actions
  • add ownership transfer helpers for record sets (request/approve/reject/cancel) that wrap record set update payloads
  • add fixtures and unit tests for all new endpoints and methods
  • fix SigV4 signing for GET/DELETE by omitting empty request bodies

Files Touched

  • src/urls.js, src/request.js, src/vinyldns.js
  • test/fixtures/responses.js, test/vinyldns_test.js

Manual Test Checklist

Prereqs:

  • VINYLDNS_API_URL, VINYLDNS_ACCESS_KEY_ID, VINYLDNS_SECRET_ACCESS_KEY set
  • Admin creds for status update, user lock/unlock, ACL rules, batch review
  • Sample IDs: zoneId, recordSetId, recordSetFqdn/type, requestedOwnerGroupId, groupChangeId, batchChangeId, userId

Health & Monitoring:

  • Ping returns PONG
  • Health returns OK (no error)
  • Color returns blue or green
  • Prometheus metrics return non-empty text

Status:

  • GET returns processingDisabled, color, keyName, version
  • POST update flips processingDisabled (admin)

Zone:

  • Backend IDs list is non-empty
  • Zone details include admin group ID/name
  • Deleted zones list returns expected entries
  • ACL rule add/delete returns Accepted/Pending (admin)
  • Zone change failures list returns entries (can be empty)

RecordSet:

  • Recordset count returns integer
  • Global record set search returns results for name filter
  • Recordset change history returns list for fqdn/type
  • Recordset change failures list returns entries (can be empty)
  • Ownership transfer request/approve/reject/cancel works with valid record set and owner group IDs

Group:

  • Valid domains list returns entries
  • Group change lookup returns change details

User (admin):

  • User lookup returns id/username/groups
  • User lock returns Locked
  • User unlock returns Unlocked

Batch Review (admin, manual review enabled):

  • Approve returns updated batch status
  • Reject returns updated batch status
  • Cancel returns updated batch status

Automated Tests

  • npm test

@snyk-io
Copy link

snyk-io bot commented Jan 7, 2026

Snyk checks have passed. No issues have been found so far.

Status Scanner Critical High Medium Low Total (0)
Open Source Security 0 0 0 0 0 issues
Licenses 0 0 0 0 0 issues

💻 Catch issues earlier using the plugins for VS Code, JetBrains IDEs, Visual Studio, and Eclipse.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant