0

UpdateLocation

by
Published Oct 17, 2025

Updates a [location](https://developer.squareup.com/docs/locations-api).

Script square Verified

The script

Submitted by hugo697 Bun
Verified 235 days ago
1
//native
2
type Square = {
3
  token: string;
4
};
5
/**
6
 * UpdateLocation
7
 * Updates a [location](https://developer.squareup.com/docs/locations-api).
8
 */
9
export async function main(
10
  auth: Square,
11
  location_id: string,
12
  body: {
13
    location?: {
14
      id?: string;
15
      name?: string;
16
      address?: {
17
        address_line_1?: string;
18
        address_line_2?: string;
19
        address_line_3?: string;
20
        locality?: string;
21
        sublocality?: string;
22
        sublocality_2?: string;
23
        sublocality_3?: string;
24
        administrative_district_level_1?: string;
25
        administrative_district_level_2?: string;
26
        administrative_district_level_3?: string;
27
        postal_code?: string;
28
        country?:
29
          | "ZZ"
30
          | "AD"
31
          | "AE"
32
          | "AF"
33
          | "AG"
34
          | "AI"
35
          | "AL"
36
          | "AM"
37
          | "AO"
38
          | "AQ"
39
          | "AR"
40
          | "AS"
41
          | "AT"
42
          | "AU"
43
          | "AW"
44
          | "AX"
45
          | "AZ"
46
          | "BA"
47
          | "BB"
48
          | "BD"
49
          | "BE"
50
          | "BF"
51
          | "BG"
52
          | "BH"
53
          | "BI"
54
          | "BJ"
55
          | "BL"
56
          | "BM"
57
          | "BN"
58
          | "BO"
59
          | "BQ"
60
          | "BR"
61
          | "BS"
62
          | "BT"
63
          | "BV"
64
          | "BW"
65
          | "BY"
66
          | "BZ"
67
          | "CA"
68
          | "CC"
69
          | "CD"
70
          | "CF"
71
          | "CG"
72
          | "CH"
73
          | "CI"
74
          | "CK"
75
          | "CL"
76
          | "CM"
77
          | "CN"
78
          | "CO"
79
          | "CR"
80
          | "CU"
81
          | "CV"
82
          | "CW"
83
          | "CX"
84
          | "CY"
85
          | "CZ"
86
          | "DE"
87
          | "DJ"
88
          | "DK"
89
          | "DM"
90
          | "DO"
91
          | "DZ"
92
          | "EC"
93
          | "EE"
94
          | "EG"
95
          | "EH"
96
          | "ER"
97
          | "ES"
98
          | "ET"
99
          | "FI"
100
          | "FJ"
101
          | "FK"
102
          | "FM"
103
          | "FO"
104
          | "FR"
105
          | "GA"
106
          | "GB"
107
          | "GD"
108
          | "GE"
109
          | "GF"
110
          | "GG"
111
          | "GH"
112
          | "GI"
113
          | "GL"
114
          | "GM"
115
          | "GN"
116
          | "GP"
117
          | "GQ"
118
          | "GR"
119
          | "GS"
120
          | "GT"
121
          | "GU"
122
          | "GW"
123
          | "GY"
124
          | "HK"
125
          | "HM"
126
          | "HN"
127
          | "HR"
128
          | "HT"
129
          | "HU"
130
          | "ID"
131
          | "IE"
132
          | "IL"
133
          | "IM"
134
          | "IN"
135
          | "IO"
136
          | "IQ"
137
          | "IR"
138
          | "IS"
139
          | "IT"
140
          | "JE"
141
          | "JM"
142
          | "JO"
143
          | "JP"
144
          | "KE"
145
          | "KG"
146
          | "KH"
147
          | "KI"
148
          | "KM"
149
          | "KN"
150
          | "KP"
151
          | "KR"
152
          | "KW"
153
          | "KY"
154
          | "KZ"
155
          | "LA"
156
          | "LB"
157
          | "LC"
158
          | "LI"
159
          | "LK"
160
          | "LR"
161
          | "LS"
162
          | "LT"
163
          | "LU"
164
          | "LV"
165
          | "LY"
166
          | "MA"
167
          | "MC"
168
          | "MD"
169
          | "ME"
170
          | "MF"
171
          | "MG"
172
          | "MH"
173
          | "MK"
174
          | "ML"
175
          | "MM"
176
          | "MN"
177
          | "MO"
178
          | "MP"
179
          | "MQ"
180
          | "MR"
181
          | "MS"
182
          | "MT"
183
          | "MU"
184
          | "MV"
185
          | "MW"
186
          | "MX"
187
          | "MY"
188
          | "MZ"
189
          | "NA"
190
          | "NC"
191
          | "NE"
192
          | "NF"
193
          | "NG"
194
          | "NI"
195
          | "NL"
196
          | "NO"
197
          | "NP"
198
          | "NR"
199
          | "NU"
200
          | "NZ"
201
          | "OM"
202
          | "PA"
203
          | "PE"
204
          | "PF"
205
          | "PG"
206
          | "PH"
207
          | "PK"
208
          | "PL"
209
          | "PM"
210
          | "PN"
211
          | "PR"
212
          | "PS"
213
          | "PT"
214
          | "PW"
215
          | "PY"
216
          | "QA"
217
          | "RE"
218
          | "RO"
219
          | "RS"
220
          | "RU"
221
          | "RW"
222
          | "SA"
223
          | "SB"
224
          | "SC"
225
          | "SD"
226
          | "SE"
227
          | "SG"
228
          | "SH"
229
          | "SI"
230
          | "SJ"
231
          | "SK"
232
          | "SL"
233
          | "SM"
234
          | "SN"
235
          | "SO"
236
          | "SR"
237
          | "SS"
238
          | "ST"
239
          | "SV"
240
          | "SX"
241
          | "SY"
242
          | "SZ"
243
          | "TC"
244
          | "TD"
245
          | "TF"
246
          | "TG"
247
          | "TH"
248
          | "TJ"
249
          | "TK"
250
          | "TL"
251
          | "TM"
252
          | "TN"
253
          | "TO"
254
          | "TR"
255
          | "TT"
256
          | "TV"
257
          | "TW"
258
          | "TZ"
259
          | "UA"
260
          | "UG"
261
          | "UM"
262
          | "US"
263
          | "UY"
264
          | "UZ"
265
          | "VA"
266
          | "VC"
267
          | "VE"
268
          | "VG"
269
          | "VI"
270
          | "VN"
271
          | "VU"
272
          | "WF"
273
          | "WS"
274
          | "YE"
275
          | "YT"
276
          | "ZA"
277
          | "ZM"
278
          | "ZW";
279
        first_name?: string;
280
        last_name?: string;
281
      };
282
      timezone?: string;
283
      capabilities?:
284
        | "CREDIT_CARD_PROCESSING"
285
        | "AUTOMATIC_TRANSFERS"
286
        | "UNLINKED_REFUNDS"[];
287
      status?: "ACTIVE" | "INACTIVE";
288
      created_at?: string;
289
      merchant_id?: string;
290
      country?:
291
        | "ZZ"
292
        | "AD"
293
        | "AE"
294
        | "AF"
295
        | "AG"
296
        | "AI"
297
        | "AL"
298
        | "AM"
299
        | "AO"
300
        | "AQ"
301
        | "AR"
302
        | "AS"
303
        | "AT"
304
        | "AU"
305
        | "AW"
306
        | "AX"
307
        | "AZ"
308
        | "BA"
309
        | "BB"
310
        | "BD"
311
        | "BE"
312
        | "BF"
313
        | "BG"
314
        | "BH"
315
        | "BI"
316
        | "BJ"
317
        | "BL"
318
        | "BM"
319
        | "BN"
320
        | "BO"
321
        | "BQ"
322
        | "BR"
323
        | "BS"
324
        | "BT"
325
        | "BV"
326
        | "BW"
327
        | "BY"
328
        | "BZ"
329
        | "CA"
330
        | "CC"
331
        | "CD"
332
        | "CF"
333
        | "CG"
334
        | "CH"
335
        | "CI"
336
        | "CK"
337
        | "CL"
338
        | "CM"
339
        | "CN"
340
        | "CO"
341
        | "CR"
342
        | "CU"
343
        | "CV"
344
        | "CW"
345
        | "CX"
346
        | "CY"
347
        | "CZ"
348
        | "DE"
349
        | "DJ"
350
        | "DK"
351
        | "DM"
352
        | "DO"
353
        | "DZ"
354
        | "EC"
355
        | "EE"
356
        | "EG"
357
        | "EH"
358
        | "ER"
359
        | "ES"
360
        | "ET"
361
        | "FI"
362
        | "FJ"
363
        | "FK"
364
        | "FM"
365
        | "FO"
366
        | "FR"
367
        | "GA"
368
        | "GB"
369
        | "GD"
370
        | "GE"
371
        | "GF"
372
        | "GG"
373
        | "GH"
374
        | "GI"
375
        | "GL"
376
        | "GM"
377
        | "GN"
378
        | "GP"
379
        | "GQ"
380
        | "GR"
381
        | "GS"
382
        | "GT"
383
        | "GU"
384
        | "GW"
385
        | "GY"
386
        | "HK"
387
        | "HM"
388
        | "HN"
389
        | "HR"
390
        | "HT"
391
        | "HU"
392
        | "ID"
393
        | "IE"
394
        | "IL"
395
        | "IM"
396
        | "IN"
397
        | "IO"
398
        | "IQ"
399
        | "IR"
400
        | "IS"
401
        | "IT"
402
        | "JE"
403
        | "JM"
404
        | "JO"
405
        | "JP"
406
        | "KE"
407
        | "KG"
408
        | "KH"
409
        | "KI"
410
        | "KM"
411
        | "KN"
412
        | "KP"
413
        | "KR"
414
        | "KW"
415
        | "KY"
416
        | "KZ"
417
        | "LA"
418
        | "LB"
419
        | "LC"
420
        | "LI"
421
        | "LK"
422
        | "LR"
423
        | "LS"
424
        | "LT"
425
        | "LU"
426
        | "LV"
427
        | "LY"
428
        | "MA"
429
        | "MC"
430
        | "MD"
431
        | "ME"
432
        | "MF"
433
        | "MG"
434
        | "MH"
435
        | "MK"
436
        | "ML"
437
        | "MM"
438
        | "MN"
439
        | "MO"
440
        | "MP"
441
        | "MQ"
442
        | "MR"
443
        | "MS"
444
        | "MT"
445
        | "MU"
446
        | "MV"
447
        | "MW"
448
        | "MX"
449
        | "MY"
450
        | "MZ"
451
        | "NA"
452
        | "NC"
453
        | "NE"
454
        | "NF"
455
        | "NG"
456
        | "NI"
457
        | "NL"
458
        | "NO"
459
        | "NP"
460
        | "NR"
461
        | "NU"
462
        | "NZ"
463
        | "OM"
464
        | "PA"
465
        | "PE"
466
        | "PF"
467
        | "PG"
468
        | "PH"
469
        | "PK"
470
        | "PL"
471
        | "PM"
472
        | "PN"
473
        | "PR"
474
        | "PS"
475
        | "PT"
476
        | "PW"
477
        | "PY"
478
        | "QA"
479
        | "RE"
480
        | "RO"
481
        | "RS"
482
        | "RU"
483
        | "RW"
484
        | "SA"
485
        | "SB"
486
        | "SC"
487
        | "SD"
488
        | "SE"
489
        | "SG"
490
        | "SH"
491
        | "SI"
492
        | "SJ"
493
        | "SK"
494
        | "SL"
495
        | "SM"
496
        | "SN"
497
        | "SO"
498
        | "SR"
499
        | "SS"
500
        | "ST"
501
        | "SV"
502
        | "SX"
503
        | "SY"
504
        | "SZ"
505
        | "TC"
506
        | "TD"
507
        | "TF"
508
        | "TG"
509
        | "TH"
510
        | "TJ"
511
        | "TK"
512
        | "TL"
513
        | "TM"
514
        | "TN"
515
        | "TO"
516
        | "TR"
517
        | "TT"
518
        | "TV"
519
        | "TW"
520
        | "TZ"
521
        | "UA"
522
        | "UG"
523
        | "UM"
524
        | "US"
525
        | "UY"
526
        | "UZ"
527
        | "VA"
528
        | "VC"
529
        | "VE"
530
        | "VG"
531
        | "VI"
532
        | "VN"
533
        | "VU"
534
        | "WF"
535
        | "WS"
536
        | "YE"
537
        | "YT"
538
        | "ZA"
539
        | "ZM"
540
        | "ZW";
541
      language_code?: string;
542
      currency?:
543
        | "UNKNOWN_CURRENCY"
544
        | "AED"
545
        | "AFN"
546
        | "ALL"
547
        | "AMD"
548
        | "ANG"
549
        | "AOA"
550
        | "ARS"
551
        | "AUD"
552
        | "AWG"
553
        | "AZN"
554
        | "BAM"
555
        | "BBD"
556
        | "BDT"
557
        | "BGN"
558
        | "BHD"
559
        | "BIF"
560
        | "BMD"
561
        | "BND"
562
        | "BOB"
563
        | "BOV"
564
        | "BRL"
565
        | "BSD"
566
        | "BTN"
567
        | "BWP"
568
        | "BYR"
569
        | "BZD"
570
        | "CAD"
571
        | "CDF"
572
        | "CHE"
573
        | "CHF"
574
        | "CHW"
575
        | "CLF"
576
        | "CLP"
577
        | "CNY"
578
        | "COP"
579
        | "COU"
580
        | "CRC"
581
        | "CUC"
582
        | "CUP"
583
        | "CVE"
584
        | "CZK"
585
        | "DJF"
586
        | "DKK"
587
        | "DOP"
588
        | "DZD"
589
        | "EGP"
590
        | "ERN"
591
        | "ETB"
592
        | "EUR"
593
        | "FJD"
594
        | "FKP"
595
        | "GBP"
596
        | "GEL"
597
        | "GHS"
598
        | "GIP"
599
        | "GMD"
600
        | "GNF"
601
        | "GTQ"
602
        | "GYD"
603
        | "HKD"
604
        | "HNL"
605
        | "HRK"
606
        | "HTG"
607
        | "HUF"
608
        | "IDR"
609
        | "ILS"
610
        | "INR"
611
        | "IQD"
612
        | "IRR"
613
        | "ISK"
614
        | "JMD"
615
        | "JOD"
616
        | "JPY"
617
        | "KES"
618
        | "KGS"
619
        | "KHR"
620
        | "KMF"
621
        | "KPW"
622
        | "KRW"
623
        | "KWD"
624
        | "KYD"
625
        | "KZT"
626
        | "LAK"
627
        | "LBP"
628
        | "LKR"
629
        | "LRD"
630
        | "LSL"
631
        | "LTL"
632
        | "LVL"
633
        | "LYD"
634
        | "MAD"
635
        | "MDL"
636
        | "MGA"
637
        | "MKD"
638
        | "MMK"
639
        | "MNT"
640
        | "MOP"
641
        | "MRO"
642
        | "MUR"
643
        | "MVR"
644
        | "MWK"
645
        | "MXN"
646
        | "MXV"
647
        | "MYR"
648
        | "MZN"
649
        | "NAD"
650
        | "NGN"
651
        | "NIO"
652
        | "NOK"
653
        | "NPR"
654
        | "NZD"
655
        | "OMR"
656
        | "PAB"
657
        | "PEN"
658
        | "PGK"
659
        | "PHP"
660
        | "PKR"
661
        | "PLN"
662
        | "PYG"
663
        | "QAR"
664
        | "RON"
665
        | "RSD"
666
        | "RUB"
667
        | "RWF"
668
        | "SAR"
669
        | "SBD"
670
        | "SCR"
671
        | "SDG"
672
        | "SEK"
673
        | "SGD"
674
        | "SHP"
675
        | "SLL"
676
        | "SLE"
677
        | "SOS"
678
        | "SRD"
679
        | "SSP"
680
        | "STD"
681
        | "SVC"
682
        | "SYP"
683
        | "SZL"
684
        | "THB"
685
        | "TJS"
686
        | "TMT"
687
        | "TND"
688
        | "TOP"
689
        | "TRY"
690
        | "TTD"
691
        | "TWD"
692
        | "TZS"
693
        | "UAH"
694
        | "UGX"
695
        | "USD"
696
        | "USN"
697
        | "USS"
698
        | "UYI"
699
        | "UYU"
700
        | "UZS"
701
        | "VEF"
702
        | "VND"
703
        | "VUV"
704
        | "WST"
705
        | "XAF"
706
        | "XAG"
707
        | "XAU"
708
        | "XBA"
709
        | "XBB"
710
        | "XBC"
711
        | "XBD"
712
        | "XCD"
713
        | "XDR"
714
        | "XOF"
715
        | "XPD"
716
        | "XPF"
717
        | "XPT"
718
        | "XTS"
719
        | "XXX"
720
        | "YER"
721
        | "ZAR"
722
        | "ZMK"
723
        | "ZMW"
724
        | "BTC"
725
        | "XUS";
726
      phone_number?: string;
727
      business_name?: string;
728
      type?: "PHYSICAL" | "MOBILE";
729
      website_url?: string;
730
      business_hours?: {
731
        periods?: {
732
          day_of_week?: "SUN" | "MON" | "TUE" | "WED" | "THU" | "FRI" | "SAT";
733
          start_local_time?: string;
734
          end_local_time?: string;
735
        }[];
736
      };
737
      business_email?: string;
738
      description?: string;
739
      twitter_username?: string;
740
      instagram_username?: string;
741
      facebook_url?: string;
742
      coordinates?: { latitude?: number; longitude?: number };
743
      logo_url?: string;
744
      pos_background_url?: string;
745
      mcc?: string;
746
      full_format_logo_url?: string;
747
      tax_ids?: {
748
        eu_vat?: string;
749
        fr_siret?: string;
750
        fr_naf?: string;
751
        es_nif?: string;
752
        jp_qii?: string;
753
      };
754
    };
755
  },
756
) {
757
  const url = new URL(
758
    `https://connect.squareup.com/v2/locations/${location_id}`,
759
  );
760

761
  const response = await fetch(url, {
762
    method: "PUT",
763
    headers: {
764
      "Content-Type": "application/json",
765
      Authorization: "Bearer " + auth.token,
766
    },
767
    body: JSON.stringify(body),
768
  });
769
  if (!response.ok) {
770
    const text = await response.text();
771
    throw new Error(`${response.status} ${text}`);
772
  }
773
  return await response.json();
774
}
775