View Source Changelog

All notable changes to this project are documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[Unreleased]

0.1.0 - 2026-07-31

First Hex release of ExPipedrive, a v2-first fork of LineDrive.

Added

Client foundation

Resources (API v2 unless noted)

  • Deals and Persons: list/stream (cursor), get, create, update; deal delete
  • Organizations, Activities, Pipelines, Stages, Products: list/stream, get, create, update, delete (product variations deferred)
  • Search: ExPipedrive.Search over /api/v2/itemSearch with cursor pages/stream and typed SearchResult
  • Deal, Person, and Organization Fields list/page/stream plus ExPipedrive.Fields for resolving custom-field hashes and labels
  • Leads / Notes: explicit API v1 shims with map-based create helpers and get/2, create/2, list/2 aliases
  • Webhooks: ExPipedrive.Webhooks subscription list/create/delete (API v1 management); Webhook.Event / Webhook.Handler inbound surface (optional Plug; Basic auth; package extract deferred)

Docs & tooling

  • Fake Pipedrive server fixtures for v2 resources used in tests
  • MVP README flows: stream open deals; create person then deal
  • CI matrix, ExDoc, Hex publish-on-release workflow

Changed

  • Package / OTP app / modules rebranded from LineDrive → ex_pipedrive / ExPipedrive
  • Core deps slimmed (Timex removed; Plug optional for webhooks only)
  • Silent OTP Application/Registry coupling removed

Migrating from LineDrive

  1. Depend on {:ex_pipedrive, "~> 0.1.0"} instead of :line_drive.
  2. Rename modules LineDrive.*ExPipedrive.*.
  3. Prefer ExPipedrive.client/2 (header token) and v2 helpers (Deals.stream/2, Deals.create/2, Persons.create/2, …) over legacy v1 list APIs.
  4. OAuth: persist ExPipedrive.Oauth.Token via your TokenStore implementation; build clients with Client.from_token/2 or from_token_store/4.
  5. Use ExPipedrive.Raw.request/4 for endpoints not yet wrapped.