Skip to content

Bulk endpoints for PyNetBox compatibility #584

Description

@bctiemann

Plugin Version

0.5.2

Proposed functionality

PyNetBox's update() and delete() methods rely on bulk API endpoints. This works for built-in NetBox models, but Custom Objects (custom object types, custom object type fields, and instances of custom objects) only expose individual-object endpoints (...//) — they have no bulk update/delete endpoints. As a result, PyNetBox cannot update or delete these objects out of the box.

Use case

Reported by: Luke Woodward (Jisc) — raised on the weekly onboarding call, 16 Jun 2026.

Environment

  • NetBox Enterprise: 2.1.1 (dev instance)
  • Custom Objects plugin: 0.4.10
  • Client: PyNetBox

Steps to reproduce

  1. Create a custom object type + fields, and one or more instances via the API.

  2. Using PyNetBox, attempt to .update() or .delete() a single custom object (type, field, or instance).

  3. PyNetBox issues a request against a bulk endpoint.

Expected behavior

PyNetBox updates/deletes the individual custom object successfully, consistent with how it handles built-in NetBox models.

Actual behavior

The operation fails because PyNetBox targets a bulk endpoint that does not exist for Custom Objects. Custom Objects only support individual ...// operations for update/delete. (Note: create works fine, since it's a plain POST to the collection and needs no ID.)

Customer has a workaround in place presently with a 3 line method that calls the individual object. But its not consistent with the rest of NetBox's model. Might there be something we can do here to simplify this?

External dependencies

No response

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions