Driftwatch

Plaid / Plaid API (2020-09-14) /

Breakingdirection flip: their tools call this safe

value can now return "in_epic"

What changed

Producer-side tools call this additive. It breaks exhaustive switches, strict parsers and generated client enums.

Affects this value on IDNumberType reachable from 15 operations.

New value: in_epic.

can now return "in_epic"

Who is affected

Code that reads Plaid's IDNumberType objects, used by 15 Plaid operations.

Before and after

WhereBeforeAfter
IDNumberType"ar_dni", "au_drivers_license", "au_passport", "br_cpf", "ca_sin", "cl_run", "cn_resident_card", "co_nit", "dk_cpr", "eg_national_id", "es_dni", "es_nie", "hk_hkid", "in_pan", "it_cf", "jo_civil_id", "jp_my_number", "ke_huduma_namba", "kw_civil_id", "mx_curp", "mx_rfc", "my_nric", "ng_nin", "nz_drivers_license", "om_civil_id", "ph_psn", "pl_pesel", "ro_cnp", "sa_national_id", "se_pin", "sg_nric", "tr_tc_kimlik", "us_ssn", "us_ssn_last_4", "za_smart_id""ar_dni", "au_drivers_license", "au_passport", "br_cpf", "ca_sin", "cl_run", "cn_resident_card", "co_nit", "dk_cpr", "eg_national_id", "es_dni", "es_nie", "hk_hkid", "in_epic", "in_pan", "it_cf", "jo_civil_id", "jp_my_number", "ke_huduma_namba", "kw_civil_id", "mx_curp", "mx_rfc", "my_nric", "ng_nin", "nz_drivers_license", "om_civil_id", "ph_psn", "pl_pesel", "ro_cnp", "sa_national_id", "se_pin", "sg_nric", "tr_tc_kimlik", "us_ssn", "us_ssn_last_4", "za_smart_id"

Code that breaks

switch (response) {
  // existing branches …
  // no branch for "in_epic"
  default:
    throw new Error("unexpected value");
}

Based on Plaid’s published API specification. How severity is decided.