Skip to content

Releases: didww/didww-api-3-python-sdk

v3.0.0 — DIDWW API 2026-04-16

24 Apr 10:44
9790358

Choose a tag to compare

v3.0.0 — DIDWW API 2026-04-16

This release upgrades the Python SDK to DIDWW API version 2026-04-16. The SDK now sends X-DIDWW-API-Version: 2026-04-16 with every request by default.

Users staying on API 2022-05-10 should pin to the 2022-05-10 branch (2.x), where future 2.x patches will be released.

Installation

pip install didww==3.0.0

Breaking Changes

API / resource renames

  • Default X-DIDWW-API-Version header is now 2026-04-16.
  • Resource requirement_validations renamed to address_requirement_validations.
  • Resource requirements renamed to address_requirements.
  • AddressRequirementValidation.requirement relationship renamed to address_requirement.
  • DidGroup.requirement relationship renamed to address_requirement.
  • DidReservation.expire_at renamed to expires_at.
  • EncryptedFile.expire_at renamed to expires_at.

Attribute / value changes

  • AddressVerification.reject_reasons is now a list of strings.
  • Dropped sms_out from DidGroup features.
  • EncryptedFile POST now accepts a single file per request.
  • Export year/month filters replaced with from/to datetime range (from inclusive, to exclusive).
  • VoiceInTrunk SIP configuration gains diversion_relay_policy.
  • Attribute values standardized to lowercase snake_case on the wire (status/area-level enums, etc.).
  • Order.is_cancelled renamed to is_canceled; STATUS_CANCELLEDSTATUS_CANCELED to match wire format (status: "canceled").

VoiceOutTrunk authentication

Flat credentials (username / password / auth_type) replaced with a polymorphic authentication_method relationship. Supported types:

  • CredentialsAuthenticationMethod
  • IpAuthenticationMethod
  • CredentialsAndIpAuthenticationMethod
  • TwilioAuthenticationMethod
  • GenericAuthenticationMethod (forward-compatible fallback for unknown types)

New Resources

  • DidHistory/v3/did_history, with meta.billing_cycles_count_changed.
  • EmergencyRequirement/v3/emergency_requirements.
  • EmergencyRequirementValidation/v3/emergency_requirement_validations.
  • EmergencyCallingService/v3/emergency_calling_services, with address has-one relationship.
  • EmergencyVerification/v3/emergency_verifications.

New Attributes & Relationships

external_reference_id

Added to Address, AddressVerification, Export, EmergencyVerification, Order, PermanentSupportingDocument, Proof, SharedCapacityGroup, VoiceInTrunkGroup, VoiceInTrunk, VoiceOutTrunk.

PATCH supported on:

  • PATCH /v3/address_verifications/:id
  • PATCH /v3/exports/:id
  • PATCH /v3/emergency_verifications/:id

VoiceOutTrunk

  • emergency_enable_all attribute
  • rtp_timeout attribute
  • emergency_dids has-many relationship
  • Status predicate helpers

Did

  • emergency_enabled attribute
  • emergency_calling_service has-one relationship
  • emergency_verification has-one relationship
  • identity has-one relationship
  • Supports PATCH to unassign emergency_calling_service

Identity

  • birth_country has-one relationship

DidGroup

  • New features: p2p, a2p, emergency, cnam_out
  • service_restrictions attribute

AddressVerification

  • reject_comment attribute

Order

  • New EmergencyOrderItem complex object

Helpers & Polish

  • Status predicate helpers added to VoiceOutTrunk, EmergencyCallingService, AddressVerification, EmergencyVerification, and Order.
  • Export now exposes STATUS_PENDING and STATUS_PROCESSING.
  • Unknown authentication_method types are wrapped in Generic for forward compatibility.
  • Resource-level meta support for EmergencyCallingService and EmergencyRequirement.
  • Fixtures and examples use RFC 5737 documentation IPs (203.0.113.0/24).

Tests

  • 291 tests passing on Python 3.9 – 3.13.
  • PATCH dirty-tracking coverage for polymorphic authentication_method.

Upgrading

  1. Update your dependency:
    pip install --upgrade didww==3.0.0
  2. Rename any references to requirement_validationsaddress_requirement_validations and requirementsaddress_requirements.
  3. Migrate VoiceOutTrunk credentials to the new polymorphic authentication_method relationship.
  4. Replace expire_at with expires_at on DidReservation and EncryptedFile.
  5. Update Export filters from year/month to from/to datetime range.
  6. Update any is_cancelled / STATUS_CANCELLED references on Order to the Canceled spellings.
  7. Review the refreshed README and examples/ directory.

Full Changelog: v2.0.0...v3.0.0

v2.0.0

20 Mar 13:41

Choose a tag to compare

What's Changed

  • improve release README by @senid231 in #18
  • Implement dirty-only PATCH serialization with explicit null clears by @Fivell in #17
  • Add coverage badge via GitHub Pages by @Fivell in #19
  • Add JSON:API dependency note to README by @Fivell in #21
  • Export csv gz decompression by @Fivell in #20
  • Add User-Agent header to all API requests by @Fivell in #22
  • Add missing metered_channels_count to SharedCapacityGroup README example by @Fivell in #23
  • Add Requirement relationship to DidGroup by @Fivell in #26
  • Add Region relationship to NanpaPrefix by @Fivell in #25
  • Feat/nanpa prefix region relationship by @Fivell in #30
  • Add rejected address verification test fixture by @Fivell in #28
  • Add requirement relationship to DidGroup, remove unused _relationship_id methods by @Fivell in #29
  • Add cross-SDK request validator test vectors and fix URL normalization by @Fivell in #27
  • Refactor/dry cleanup by @Fivell in #31
  • Add orders_nanpa example by @Fivell in #33
  • Add DatetimeAttributeField, use it for datetime fields by @Fivell in #32

New Contributors

Full Changelog: v1.1.0...v2.0.0

v1.1.0

02 Mar 13:04

Choose a tag to compare

What's Changed

  • Improvements by @Fivell in #12
  • Add custom session support for proxy and advanced HTTP configuration by @Fivell in #13
  • Add missing relationship declarations and comprehensive include tests by @Fivell in #14
  • Clean up test fixtures and add missing tests by @Fivell in #15
  • Add X-DIDWW-API-Version header and update README link by @Fivell in #16

Full Changelog: v1.0.0...v1.1.0

v1.0.0

23 Feb 12:47

Choose a tag to compare

fix pyproject.toml