Skip to content

Releases: CampusTech/axm2snipe

v1.7.1

Choose a tag to compare

@github-actions github-actions released this 23 May 07:30

Fixes

purchase_date rejected by Snipe-IT API
Upstream go-snipeit's SnipeTime.MarshalJSON always serializes as "YYYY-MM-DD HH:MM:SS", but Snipe-IT's purchase_date validator only accepts "YYYY-MM-DD", so every PATCH after v1.7.0 was rejected with The purchase date must be a valid date in YYYY-MM-DD format. Routed purchase_date through CustomFields as a plain "YYYY-MM-DD" string. Workaround until upstream is patched.

Configurator-enrolled devices overwriting real purchase data
Devices added to ABM via Apple Configurator (purchaseSourceType=MANUALLY_ADDED) get a synthetic order number like CE-2024-12-13-04-11-12-826 and the enrollment date as orderDateTime — not the real purchase info. v1.7.0 was happily overwriting real reseller order numbers and purchase dates with this synthetic data. Now skipped by default.

New Config Options

Key Default Description
sync.preserve_order_info_on_update false Never overwrite an existing purchase_date / order_number on update. First-time syncs still populate them. Useful when you manually correct order info in Snipe-IT and want it preserved on re-runs.
sync.sync_configurator_order_info false Opt back into syncing the Configurator metadata for MANUALLY_ADDED devices, if you actually want it.

Upgrading

Drop-in replacement for v1.7.0 — no migration needed. If your previous v1.7.0 sync overwrote real purchase data with Configurator metadata, you can manually revert the affected fields in Snipe-IT and v1.7.1 will leave them alone on future syncs.

Full Changelog: v1.7.0...v1.7.1

v1.7.0

Choose a tag to compare

@github-actions github-actions released this 23 May 07:12

What's New

ABM data sync (#33)

  • ABM orderDateTime and orderNumber now sync to Snipe-IT's native purchase_date and order_number fields, so they appear in the built-in "Order Information" panel instead of as custom fields
  • setup now provisions 5 additional custom fields: AXM: Purchase Source (Apple / Reseller / Manually Added), Purchase Source ID, EID, IMEI, MEID
  • New purchase_source_id source value for field_mapping
  • purchase_source is now auto title-cased ("Reseller" instead of "RESELLER") for consistency with other ABM enums

Reliability

  • PatchAsset retry now clears invalid stored custom field values (sends an empty value on retry) instead of just stripping them from the request. Snipe-IT re-validates all stored custom field values on every PATCH against the current field definition, so stripping alone left the stored bad value intact and the next PATCH would fail with the same error. Hit when ABM payment-type values are added to the radio options after assets have already been synced with the old options.

Configuration & Setup

  • Setup now uses cache by default, and field mappings are automatically replaced on re-run for easier updates #29 (@robbiet480)
  • Added new logging configuration options: log.file, log.format, and log.level in config file #30 (@robbiet480)

Dependencies

  • Switched go-snipeit dependency from CampusTech fork to upstream #31 (@robbiet480)

Documentation

Upgrading

Run axm2snipe setup -v to provision the new custom fields and have your field_mapping updated automatically (including the new native purchase_date and order_number entries).

Contributors

Full Changelog: v1.6.0...v1.7.0

v1.6.0

Choose a tag to compare

@github-actions github-actions released this 07 Mar 02:32
38d54b4

What's New

Improved Data Sync

  • Fixed no-op updates caused by Snipe-IT value encoding differences #23 (@robbiet480)
  • Added Wi-Fi, Bluetooth, and Ethernet MAC address custom fields to setup #22 (@robbiet480)
  • AppleCare warranty notes now render as a pipe-separated table for better readability #27 (@robbiet480)

Logging & Performance

  • Added --log-file and --log-format flags for flexible logging configuration #26 (@robbiet480)
  • Integrated rate limiter and logger into Snipe-IT client #25 (@robbiet480)

Bug Fixes & Configuration

  • Fixed duplicate _snipeit_* IDs in settings.example.yaml #24 (@app/copilot-swe-agent)
  • Corrected AppleCare payment type values #20 (@robbiet480)
  • Added settings.example.yaml to documentation rules #20 (@robbiet480)

Maintenance

Contributors

Full Changelog: v1.5.0...v1.6.0

v1.5.0

Choose a tag to compare

@github-actions github-actions released this 07 Mar 00:42
19ce30a

What's New

Documentation & Configuration

  • Updated README and CLAUDE.md with model image guidance, exact serial matching details, and recent fixes (#19)
  • Added settings.example.yaml to documentation rules for better configuration guidance (#20)

Bug Fixes

  • Fixed AppleCare payment type values in configuration (#20)

Contributors

Full Changelog: v1.4.0...v1.5.0

v1.4.0

Choose a tag to compare

@github-actions github-actions released this 07 Mar 00:38
b7258dc

What's New

Device Images

  • Add model_images option to automatically fetch device images from appledb.dev for new models (#18)

Documentation

  • Updated README and CLAUDE.md with guidance on model images, exact serial matching, and recent fixes (#19)

Contributors

Full Changelog: v1.3.6...v1.4.0

v1.3.6

Choose a tag to compare

@github-actions github-actions released this 07 Mar 00:26
172e344

What's New

Bug Fixes

  • Fixed asset identity bugs with exact serial matching and serial-as-asset-tag handling #17 (@robbiet480)

Features

  • Added model_images option to automatically fetch device images from appledb.dev for new models #18 (@robbiet480)

Contributors

Full Changelog: v1.3.5...v1.3.6

v1.3.5

Choose a tag to compare

@github-actions github-actions released this 07 Mar 00:11
97faa62

What's New

  • AppleCare Handling: Fixed AppleCare payment type field values to correctly match the ABM API specification (#16)
  • Asset Matching: Resolved asset identity bugs including exact serial number matching and serial-as-asset-tag handling (#17)

Contributors

Full Changelog: v1.3.4...v1.3.5

v1.3.4

Choose a tag to compare

@github-actions github-actions released this 06 Mar 23:19
c6d6f77

What's New

Performance & Caching

  • Improved cache handling: sync --use-cache now skips ABM API calls entirely, and selective downloads reduce unnecessary traffic (#15) @robbiet480

Fixes

  • Fixed AppleCare payment type field values to correctly match ABM API responses (#16) @robbiet480

Contributors

Full Changelog: v1.3.3...v1.3.4

v1.3.3

Choose a tag to compare

@github-actions github-actions released this 06 Mar 22:35
7bd5dcc

What's New

Build & Installation

  • Fixed go install command by removing replace directives (#14 by @robbiet480)

Performance

  • Improved cache handling: sync --use-cache now avoids unnecessary ABM traffic
  • Optimized selective download to reduce bandwidth usage (#15 by @robbiet480)

Contributors

Full Changelog: v1.3.2...v1.3.3

v1.3.2

Choose a tag to compare

@github-actions github-actions released this 06 Mar 20:40
d19f3e9

What's New

  • Display serial number in AppleCare download progress bar for better visibility during syncs #11 (@robbiet480)
  • Fix go install compatibility by removing replace directives #14 (@robbiet480)

Contributors

Full Changelog: v1.3.1...v1.3.2