Edits history of script submission #20833 for ' UpdateVendor (square)'

  • bun
    One script reply has been approved by the moderators
    Ap­pro­ved
    //native
    type Square = {
      token: string;
    };
    /**
     * UpdateVendor
     * Updates an existing [Vendor]($m/Vendor) object as a supplier to a seller.
     */
    export async function main(
      auth: Square,
      vendor_id: string,
      body: {
        idempotency_key?: string;
        vendor: {
          id?: string;
          created_at?: string;
          updated_at?: string;
          name?: string;
          address?: {
            address_line_1?: string;
            address_line_2?: string;
            address_line_3?: string;
            locality?: string;
            sublocality?: string;
            sublocality_2?: string;
            sublocality_3?: string;
            administrative_district_level_1?: string;
            administrative_district_level_2?: string;
            administrative_district_level_3?: string;
            postal_code?: string;
            country?:
              | "ZZ"
              | "AD"
              | "AE"
              | "AF"
              | "AG"
              | "AI"
              | "AL"
              | "AM"
              | "AO"
              | "AQ"
              | "AR"
              | "AS"
              | "AT"
              | "AU"
              | "AW"
              | "AX"
              | "AZ"
              | "BA"
              | "BB"
              | "BD"
              | "BE"
              | "BF"
              | "BG"
              | "BH"
              | "BI"
              | "BJ"
              | "BL"
              | "BM"
              | "BN"
              | "BO"
              | "BQ"
              | "BR"
              | "BS"
              | "BT"
              | "BV"
              | "BW"
              | "BY"
              | "BZ"
              | "CA"
              | "CC"
              | "CD"
              | "CF"
              | "CG"
              | "CH"
              | "CI"
              | "CK"
              | "CL"
              | "CM"
              | "CN"
              | "CO"
              | "CR"
              | "CU"
              | "CV"
              | "CW"
              | "CX"
              | "CY"
              | "CZ"
              | "DE"
              | "DJ"
              | "DK"
              | "DM"
              | "DO"
              | "DZ"
              | "EC"
              | "EE"
              | "EG"
              | "EH"
              | "ER"
              | "ES"
              | "ET"
              | "FI"
              | "FJ"
              | "FK"
              | "FM"
              | "FO"
              | "FR"
              | "GA"
              | "GB"
              | "GD"
              | "GE"
              | "GF"
              | "GG"
              | "GH"
              | "GI"
              | "GL"
              | "GM"
              | "GN"
              | "GP"
              | "GQ"
              | "GR"
              | "GS"
              | "GT"
              | "GU"
              | "GW"
              | "GY"
              | "HK"
              | "HM"
              | "HN"
              | "HR"
              | "HT"
              | "HU"
              | "ID"
              | "IE"
              | "IL"
              | "IM"
              | "IN"
              | "IO"
              | "IQ"
              | "IR"
              | "IS"
              | "IT"
              | "JE"
              | "JM"
              | "JO"
              | "JP"
              | "KE"
              | "KG"
              | "KH"
              | "KI"
              | "KM"
              | "KN"
              | "KP"
              | "KR"
              | "KW"
              | "KY"
              | "KZ"
              | "LA"
              | "LB"
              | "LC"
              | "LI"
              | "LK"
              | "LR"
              | "LS"
              | "LT"
              | "LU"
              | "LV"
              | "LY"
              | "MA"
              | "MC"
              | "MD"
              | "ME"
              | "MF"
              | "MG"
              | "MH"
              | "MK"
              | "ML"
              | "MM"
              | "MN"
              | "MO"
              | "MP"
              | "MQ"
              | "MR"
              | "MS"
              | "MT"
              | "MU"
              | "MV"
              | "MW"
              | "MX"
              | "MY"
              | "MZ"
              | "NA"
              | "NC"
              | "NE"
              | "NF"
              | "NG"
              | "NI"
              | "NL"
              | "NO"
              | "NP"
              | "NR"
              | "NU"
              | "NZ"
              | "OM"
              | "PA"
              | "PE"
              | "PF"
              | "PG"
              | "PH"
              | "PK"
              | "PL"
              | "PM"
              | "PN"
              | "PR"
              | "PS"
              | "PT"
              | "PW"
              | "PY"
              | "QA"
              | "RE"
              | "RO"
              | "RS"
              | "RU"
              | "RW"
              | "SA"
              | "SB"
              | "SC"
              | "SD"
              | "SE"
              | "SG"
              | "SH"
              | "SI"
              | "SJ"
              | "SK"
              | "SL"
              | "SM"
              | "SN"
              | "SO"
              | "SR"
              | "SS"
              | "ST"
              | "SV"
              | "SX"
              | "SY"
              | "SZ"
              | "TC"
              | "TD"
              | "TF"
              | "TG"
              | "TH"
              | "TJ"
              | "TK"
              | "TL"
              | "TM"
              | "TN"
              | "TO"
              | "TR"
              | "TT"
              | "TV"
              | "TW"
              | "TZ"
              | "UA"
              | "UG"
              | "UM"
              | "US"
              | "UY"
              | "UZ"
              | "VA"
              | "VC"
              | "VE"
              | "VG"
              | "VI"
              | "VN"
              | "VU"
              | "WF"
              | "WS"
              | "YE"
              | "YT"
              | "ZA"
              | "ZM"
              | "ZW";
            first_name?: string;
            last_name?: string;
          };
          contacts?: {
            id?: string;
            name?: string;
            email_address?: string;
            phone_number?: string;
            removed?: false | true;
            ordinal: number;
          }[];
          account_number?: string;
          note?: string;
          version?: number;
          status?: "ACTIVE" | "INACTIVE";
        };
      },
    ) {
      const url = new URL(`https://connect.squareup.com/v2/vendors/${vendor_id}`);
    
      const response = await fetch(url, {
        method: "PUT",
        headers: {
          "Content-Type": "application/json",
          Authorization: "Bearer " + auth.token,
        },
        body: JSON.stringify(body),
      });
      if (!response.ok) {
        const text = await response.text();
        throw new Error(`${response.status} ${text}`);
      }
      return await response.json();
    }
    

    Submitted by hugo697 235 days ago