Aiming for an Active Model–Compliant API