Skip to content

SDK v1.8.0

Choose a tag to compare

@github-actions github-actions released this 10 Mar 01:35
· 84 commits to main since this release

Highlights

entry field --get now returns resolved person and company objects (with firstName, lastName, primaryEmailAddress, etc.) instead of raw integer IDs. This matches the behavior of list export and provides a consistent, AI-agent-friendly experience. Under the hood, the command switched from V1 to V2 API.

Breaking Changes

  • Breaking: entry field --get output for person/company reference fields now returns resolved objects instead of raw integer IDs. Scripts that parse the integer ID should update to read from the resolved object.

Changes

  • entry field --get now uses the V2 API (/v2/lists/{listId}/list-entries/{entryId}/fields) instead of V1 field_values.list()

Bug Fixes

  • ListEntryService.get_field_values() (sync and async) now correctly parses V2 API list response format — previously returned empty results due to dict/list type mismatch
  • Added types to REPEATABLE_QUERY_PARAMS so the V2 fields endpoint types filter parameter is correctly encoded
  • FieldValues._coerce_from_api no longer double-wraps dicts that are already in {requested, data} format — fixes fields.* returning null after round-trip serialization
  • Query executor now warns (via ctx.warnings) when field metadata fetch fails instead of silently returning null for all fields.* values
  • Query executor now warns when field name resolution fails in where clauses instead of silently skipping resolution
  • Multi-parent fetch path now normalizes list entry fields — fields.* in select works correctly when query spans multiple parent lists

CLI Plugin 1.6.1

Added

  • Skill: documented file commands (company files, person files, opportunity files) with ls, download, read, upload subcommands — prevents unnecessary fallback to raw v1 API calls
  • Skill: added file commands to Quick Reference table

Quick Install

SDK only:

pip install affinity-sdk

SDK + CLI:

pipx install "affinity-sdk[cli]"

MCP Server for Claude Desktop (easiest - MCPB bundle):

  1. Install CLI: pipx install "affinity-sdk[cli]"
  2. (Optional) Pre-configure API key: xaffinity config setup-key
    • If skipped, Claude Desktop will prompt for your API key during install
  3. Install xaffinity MCP in Claude Desktop (download and double-click)

Other MCP clients (Cursor, Windsurf, VS Code, etc.) require manual configuration - see MCP docs.

Full documentation | MCP Server docs