open-civics 0.2.4 → 0.2.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (93) hide show
  1. package/data/sc/federal.json +10 -10
  2. package/data/sc/local/county-abbeville.json +9 -9
  3. package/data/sc/local/county-aiken.json +12 -12
  4. package/data/sc/local/county-allendale.json +8 -8
  5. package/data/sc/local/county-anderson.json +10 -10
  6. package/data/sc/local/county-bamberg.json +10 -10
  7. package/data/sc/local/county-barnwell.json +10 -10
  8. package/data/sc/local/county-beaufort.json +14 -14
  9. package/data/sc/local/county-calhoun.json +8 -8
  10. package/data/sc/local/county-charleston.json +14 -14
  11. package/data/sc/local/county-cherokee.json +10 -10
  12. package/data/sc/local/county-chester.json +10 -10
  13. package/data/sc/local/county-chesterfield.json +12 -12
  14. package/data/sc/local/county-clarendon.json +23 -7
  15. package/data/sc/local/county-colleton.json +8 -8
  16. package/data/sc/local/county-darlington.json +41 -41
  17. package/data/sc/local/county-dillon.json +10 -10
  18. package/data/sc/local/county-dorchester.json +10 -10
  19. package/data/sc/local/county-edgefield.json +8 -8
  20. package/data/sc/local/county-fairfield.json +10 -10
  21. package/data/sc/local/county-florence.json +12 -12
  22. package/data/sc/local/county-georgetown.json +10 -10
  23. package/data/sc/local/county-greenville.json +15 -15
  24. package/data/sc/local/county-greenwood.json +10 -10
  25. package/data/sc/local/county-hampton.json +8 -8
  26. package/data/sc/local/county-lancaster.json +10 -10
  27. package/data/sc/local/county-laurens.json +10 -10
  28. package/data/sc/local/county-lee.json +11 -11
  29. package/data/sc/local/county-lexington.json +12 -12
  30. package/data/sc/local/county-marion.json +10 -10
  31. package/data/sc/local/county-marlboro.json +11 -11
  32. package/data/sc/local/county-mccormick.json +8 -8
  33. package/data/sc/local/county-newberry.json +10 -10
  34. package/data/sc/local/county-oconee.json +8 -8
  35. package/data/sc/local/county-orangeburg.json +7 -7
  36. package/data/sc/local/county-pickens.json +10 -10
  37. package/data/sc/local/county-richland.json +14 -14
  38. package/data/sc/local/county-saluda.json +8 -8
  39. package/data/sc/local/county-spartanburg.json +10 -10
  40. package/data/sc/local/county-sumter.json +10 -10
  41. package/data/sc/local/county-union.json +9 -9
  42. package/data/sc/local/county-williamsburg.json +10 -10
  43. package/data/sc/local/county-york.json +10 -10
  44. package/data/sc/local/place-abbeville.json +11 -11
  45. package/data/sc/local/place-aiken.json +10 -10
  46. package/data/sc/local/place-anderson.json +12 -12
  47. package/data/sc/local/place-bamberg.json +9 -9
  48. package/data/sc/local/place-barnwell.json +10 -10
  49. package/data/sc/local/place-beaufort.json +8 -8
  50. package/data/sc/local/place-bennettsville.json +10 -10
  51. package/data/sc/local/place-bishopville.json +10 -10
  52. package/data/sc/local/place-camden.json +8 -8
  53. package/data/sc/local/place-charleston.json +13 -13
  54. package/data/sc/local/place-chester.json +12 -12
  55. package/data/sc/local/place-chesterfield.json +10 -10
  56. package/data/sc/local/place-columbia.json +10 -10
  57. package/data/sc/local/place-conway.json +10 -10
  58. package/data/sc/local/place-darlington.json +10 -10
  59. package/data/sc/local/place-dillon.json +10 -10
  60. package/data/sc/local/place-edgefield.json +10 -10
  61. package/data/sc/local/place-florence.json +10 -10
  62. package/data/sc/local/place-gaffney.json +10 -10
  63. package/data/sc/local/place-georgetown.json +10 -10
  64. package/data/sc/local/place-goose-creek.json +10 -10
  65. package/data/sc/local/place-greenville.json +10 -10
  66. package/data/sc/local/place-greenwood.json +10 -10
  67. package/data/sc/local/place-hampton.json +8 -8
  68. package/data/sc/local/place-hilton-head.json +10 -10
  69. package/data/sc/local/place-kingstree.json +10 -10
  70. package/data/sc/local/place-lancaster.json +12 -12
  71. package/data/sc/local/place-lexington.json +10 -10
  72. package/data/sc/local/place-manning.json +10 -10
  73. package/data/sc/local/place-marion.json +10 -10
  74. package/data/sc/local/place-mccormick.json +10 -10
  75. package/data/sc/local/place-mount-pleasant.json +12 -12
  76. package/data/sc/local/place-myrtle-beach.json +16 -16
  77. package/data/sc/local/place-newberry.json +10 -10
  78. package/data/sc/local/place-north-charleston.json +14 -14
  79. package/data/sc/local/place-orangeburg.json +10 -10
  80. package/data/sc/local/place-ridgeland.json +14 -30
  81. package/data/sc/local/place-rock-hill.json +10 -10
  82. package/data/sc/local/place-saluda.json +8 -8
  83. package/data/sc/local/place-spartanburg.json +10 -10
  84. package/data/sc/local/place-st-george.json +9 -9
  85. package/data/sc/local/place-st-matthews.json +10 -10
  86. package/data/sc/local/place-summerville.json +10 -10
  87. package/data/sc/local/place-sumter.json +10 -10
  88. package/data/sc/local/place-union.json +10 -10
  89. package/data/sc/local/place-walhalla.json +10 -10
  90. package/data/sc/local/place-walterboro.json +10 -10
  91. package/data/sc/local/place-winnsboro.json +8 -8
  92. package/data/sc/state.json +174 -174
  93. package/package.json +1 -1
@@ -4,10 +4,10 @@
4
4
  "level": "local",
5
5
  "jurisdiction": "county:sumter",
6
6
  "label": "Sumter County Council",
7
- "lastUpdated": "2026-06-09",
7
+ "lastUpdated": "2026-07-01",
8
8
  "adapter": "sumter_county",
9
- "dataHash": "b1e540c089e78bc2",
10
- "dataLastChanged": "2026-06-09"
9
+ "dataHash": "750dc046fe7a858c",
10
+ "dataLastChanged": "2026-07-01"
11
11
  },
12
12
  "members": [
13
13
  {
@@ -16,7 +16,7 @@
16
16
  "email": "jbyrd@sumtercountysc.gov",
17
17
  "phone": "(803) 468-1719",
18
18
  "source": "sumtercounty",
19
- "lastUpdated": "2026-06-09",
19
+ "lastUpdated": "2026-07-01",
20
20
  "vacant": false,
21
21
  "office": "council-member",
22
22
  "leadership": "vice-chair",
@@ -32,7 +32,7 @@
32
32
  "email": "jmccain@sumtercountysc.gov",
33
33
  "phone": "(803) 773-2353",
34
34
  "source": "sumtercounty",
35
- "lastUpdated": "2026-06-09",
35
+ "lastUpdated": "2026-07-01",
36
36
  "vacant": false,
37
37
  "office": "council-member",
38
38
  "leadership": "chair",
@@ -48,7 +48,7 @@
48
48
  "email": "cwashington@sumtercountysc.gov",
49
49
  "phone": "",
50
50
  "source": "sumtercounty",
51
- "lastUpdated": "2026-06-09",
51
+ "lastUpdated": "2026-07-01",
52
52
  "vacant": false,
53
53
  "office": "council-member",
54
54
  "seatClass": "numbered",
@@ -64,7 +64,7 @@
64
64
  "email": "Council@sumtercountysc.gov",
65
65
  "phone": "",
66
66
  "source": "sumtercounty",
67
- "lastUpdated": "2026-06-09",
67
+ "lastUpdated": "2026-07-01",
68
68
  "vacant": false,
69
69
  "office": "council-member",
70
70
  "seatClass": "numbered",
@@ -80,7 +80,7 @@
80
80
  "email": "cedens@sumtercountysc.gov",
81
81
  "phone": "(803) 236-5759",
82
82
  "source": "sumtercounty",
83
- "lastUpdated": "2026-06-09",
83
+ "lastUpdated": "2026-07-01",
84
84
  "vacant": false,
85
85
  "office": "council-member",
86
86
  "seatClass": "numbered",
@@ -96,7 +96,7 @@
96
96
  "email": "vmcghaney@sumtercountysc.gov",
97
97
  "phone": "(803) 983-4663",
98
98
  "source": "sumtercounty",
99
- "lastUpdated": "2026-06-09",
99
+ "lastUpdated": "2026-07-01",
100
100
  "vacant": false,
101
101
  "office": "council-member",
102
102
  "seatClass": "numbered",
@@ -112,7 +112,7 @@
112
112
  "email": "tgreene@sumtercountysc.gov",
113
113
  "phone": "(803) 316-8228",
114
114
  "source": "sumtercounty",
115
- "lastUpdated": "2026-06-09",
115
+ "lastUpdated": "2026-07-01",
116
116
  "vacant": false,
117
117
  "office": "council-member",
118
118
  "seatClass": "numbered",
@@ -4,10 +4,10 @@
4
4
  "level": "local",
5
5
  "jurisdiction": "county:union",
6
6
  "label": "Union County Council",
7
- "lastUpdated": "2026-06-15",
7
+ "lastUpdated": "2026-07-01",
8
8
  "adapter": "union_county",
9
- "dataHash": "4e9ba37dc2026fa3",
10
- "dataLastChanged": "2026-06-15"
9
+ "dataHash": "569a2a7f9261e765",
10
+ "dataLastChanged": "2026-07-01"
11
11
  },
12
12
  "members": [
13
13
  {
@@ -16,7 +16,7 @@
16
16
  "email": "dsinclair@countyofunion.com",
17
17
  "phone": "(864) 426-1222",
18
18
  "source": "unioncounty",
19
- "lastUpdated": "2026-06-15",
19
+ "lastUpdated": "2026-07-01",
20
20
  "vacant": false,
21
21
  "office": "council-member",
22
22
  "leadership": "vice-chair",
@@ -32,7 +32,7 @@
32
32
  "email": "dbright@countyofunion.com",
33
33
  "phone": "(864) 426-0909",
34
34
  "source": "unioncounty",
35
- "lastUpdated": "2026-06-15",
35
+ "lastUpdated": "2026-07-01",
36
36
  "vacant": false,
37
37
  "office": "council-member",
38
38
  "seatClass": "numbered",
@@ -48,7 +48,7 @@
48
48
  "email": "jglenn@countyofunion.com",
49
49
  "phone": "(864) 426-4329",
50
50
  "source": "unioncounty",
51
- "lastUpdated": "2026-06-15",
51
+ "lastUpdated": "2026-07-01",
52
52
  "vacant": false,
53
53
  "office": "council-member",
54
54
  "seatClass": "numbered",
@@ -64,7 +64,7 @@
64
64
  "email": "asmith@countyofunion.com",
65
65
  "phone": "(864) 979-1818",
66
66
  "source": "unioncounty",
67
- "lastUpdated": "2026-06-15",
67
+ "lastUpdated": "2026-07-01",
68
68
  "vacant": false,
69
69
  "office": "council-member",
70
70
  "seatClass": "numbered",
@@ -80,7 +80,7 @@
80
80
  "email": "crutherford@countyofunion.com",
81
81
  "phone": "(864) 426-7780",
82
82
  "source": "unioncounty",
83
- "lastUpdated": "2026-06-15",
83
+ "lastUpdated": "2026-07-01",
84
84
  "vacant": false,
85
85
  "office": "council-member",
86
86
  "seatClass": "numbered",
@@ -96,7 +96,7 @@
96
96
  "email": "jflood@countyofunion.com",
97
97
  "phone": "(864) 466-2570",
98
98
  "source": "unioncounty",
99
- "lastUpdated": "2026-06-15",
99
+ "lastUpdated": "2026-07-01",
100
100
  "vacant": false,
101
101
  "office": "council-member",
102
102
  "seatClass": "numbered",
@@ -4,10 +4,10 @@
4
4
  "level": "local",
5
5
  "jurisdiction": "county:williamsburg",
6
6
  "label": "Williamsburg County Council",
7
- "lastUpdated": "2026-06-15",
7
+ "lastUpdated": "2026-07-01",
8
8
  "adapter": "civicplus",
9
- "dataHash": "343246d8ce826a0d",
10
- "dataLastChanged": "2026-06-15"
9
+ "dataHash": "9f8f0928ca73dd80",
10
+ "dataLastChanged": "2026-07-01"
11
11
  },
12
12
  "members": [
13
13
  {
@@ -16,7 +16,7 @@
16
16
  "email": "joseph.lee@wc.sc.gov",
17
17
  "phone": "(843) 355-9321",
18
18
  "source": "civicplus",
19
- "lastUpdated": "2026-06-15",
19
+ "lastUpdated": "2026-07-01",
20
20
  "vacant": false,
21
21
  "office": "council-member",
22
22
  "seatClass": "numbered",
@@ -32,7 +32,7 @@
32
32
  "email": "torrance.wilson@wc.sc.gov",
33
33
  "phone": "(843) 355-9321",
34
34
  "source": "civicplus",
35
- "lastUpdated": "2026-06-15",
35
+ "lastUpdated": "2026-07-01",
36
36
  "vacant": false,
37
37
  "office": "council-member",
38
38
  "seatClass": "numbered",
@@ -48,7 +48,7 @@
48
48
  "email": "Randall.Nesmith@wc.sc.gov",
49
49
  "phone": "(843) 355-9321",
50
50
  "source": "civicplus",
51
- "lastUpdated": "2026-06-15",
51
+ "lastUpdated": "2026-07-01",
52
52
  "vacant": false,
53
53
  "office": "council-member",
54
54
  "seatClass": "numbered",
@@ -64,7 +64,7 @@
64
64
  "email": "gakeels@wc.sc.gov",
65
65
  "phone": "(843) 355-9321",
66
66
  "source": "civicplus",
67
- "lastUpdated": "2026-06-15",
67
+ "lastUpdated": "2026-07-01",
68
68
  "vacant": false,
69
69
  "office": "council-member",
70
70
  "seatClass": "numbered",
@@ -80,7 +80,7 @@
80
80
  "email": "paul.mcknight@wc.sc.gov",
81
81
  "phone": "(843) 355-9321",
82
82
  "source": "civicplus",
83
- "lastUpdated": "2026-06-15",
83
+ "lastUpdated": "2026-07-01",
84
84
  "vacant": false,
85
85
  "office": "council-member",
86
86
  "seatClass": "numbered",
@@ -96,7 +96,7 @@
96
96
  "email": "sam.floyd@wc.sc.gov",
97
97
  "phone": "(843) 355-9321",
98
98
  "source": "civicplus",
99
- "lastUpdated": "2026-06-15",
99
+ "lastUpdated": "2026-07-01",
100
100
  "vacant": false,
101
101
  "office": "council-member",
102
102
  "seatClass": "numbered",
@@ -112,7 +112,7 @@
112
112
  "email": "jhailes@wc.sc.gov",
113
113
  "phone": "(843) 355-9321",
114
114
  "source": "civicplus",
115
- "lastUpdated": "2026-06-15",
115
+ "lastUpdated": "2026-07-01",
116
116
  "vacant": false,
117
117
  "office": "council-member",
118
118
  "seatClass": "numbered",
@@ -4,10 +4,10 @@
4
4
  "level": "local",
5
5
  "jurisdiction": "county:york",
6
6
  "label": "York County Council",
7
- "lastUpdated": "2026-06-15",
7
+ "lastUpdated": "2026-07-01",
8
8
  "adapter": "york_county",
9
- "dataHash": "284858bbc98f11c4",
10
- "dataLastChanged": "2026-06-15"
9
+ "dataHash": "32888becf23364bf",
10
+ "dataLastChanged": "2026-07-01"
11
11
  },
12
12
  "members": [
13
13
  {
@@ -16,7 +16,7 @@
16
16
  "email": "",
17
17
  "phone": "(704) 408-6155",
18
18
  "source": "yorkcounty",
19
- "lastUpdated": "2026-06-15",
19
+ "lastUpdated": "2026-07-01",
20
20
  "vacant": false,
21
21
  "office": "council-member",
22
22
  "leadership": "vice-chair",
@@ -32,7 +32,7 @@
32
32
  "email": "",
33
33
  "phone": "",
34
34
  "source": "yorkcounty",
35
- "lastUpdated": "2026-06-15",
35
+ "lastUpdated": "2026-07-01",
36
36
  "vacant": false,
37
37
  "office": "council-member",
38
38
  "seatClass": "numbered",
@@ -48,7 +48,7 @@
48
48
  "email": "",
49
49
  "phone": "(803) 628-8328",
50
50
  "source": "yorkcounty",
51
- "lastUpdated": "2026-06-15",
51
+ "lastUpdated": "2026-07-01",
52
52
  "vacant": false,
53
53
  "office": "council-member",
54
54
  "seatClass": "numbered",
@@ -64,7 +64,7 @@
64
64
  "email": "",
65
65
  "phone": "(803) 984-8033",
66
66
  "source": "yorkcounty",
67
- "lastUpdated": "2026-06-15",
67
+ "lastUpdated": "2026-07-01",
68
68
  "vacant": false,
69
69
  "office": "council-member",
70
70
  "seatClass": "numbered",
@@ -80,7 +80,7 @@
80
80
  "email": "",
81
81
  "phone": "(803) 630-9526",
82
82
  "source": "yorkcounty",
83
- "lastUpdated": "2026-06-15",
83
+ "lastUpdated": "2026-07-01",
84
84
  "vacant": false,
85
85
  "office": "council-member",
86
86
  "leadership": "chair",
@@ -96,7 +96,7 @@
96
96
  "email": "",
97
97
  "phone": "",
98
98
  "source": "yorkcounty",
99
- "lastUpdated": "2026-06-15",
99
+ "lastUpdated": "2026-07-01",
100
100
  "vacant": false,
101
101
  "office": "council-member",
102
102
  "seatClass": "numbered",
@@ -112,7 +112,7 @@
112
112
  "email": "",
113
113
  "phone": "(803) 965-8393",
114
114
  "source": "yorkcounty",
115
- "lastUpdated": "2026-06-15",
115
+ "lastUpdated": "2026-07-01",
116
116
  "vacant": false,
117
117
  "office": "council-member",
118
118
  "seatClass": "numbered",
@@ -4,10 +4,10 @@
4
4
  "level": "local",
5
5
  "jurisdiction": "place:abbeville",
6
6
  "label": "Abbeville City Council",
7
- "lastUpdated": "2026-06-15",
7
+ "lastUpdated": "2026-07-01",
8
8
  "adapter": "abbeville_city",
9
- "dataHash": "e1f93706293101a3",
10
- "dataLastChanged": "2026-06-15"
9
+ "dataHash": "d79eeebaeeee9eb0",
10
+ "dataLastChanged": "2026-07-01"
11
11
  },
12
12
  "members": [
13
13
  {
@@ -16,7 +16,7 @@
16
16
  "email": "",
17
17
  "phone": "",
18
18
  "source": "abbeville",
19
- "lastUpdated": "2026-06-15",
19
+ "lastUpdated": "2026-07-01",
20
20
  "vacant": false,
21
21
  "office": "council-member",
22
22
  "seatClass": "numbered",
@@ -32,7 +32,7 @@
32
32
  "email": "",
33
33
  "phone": "",
34
34
  "source": "abbeville",
35
- "lastUpdated": "2026-06-15",
35
+ "lastUpdated": "2026-07-01",
36
36
  "vacant": false,
37
37
  "office": "council-member",
38
38
  "seatClass": "numbered",
@@ -48,7 +48,7 @@
48
48
  "email": "",
49
49
  "phone": "",
50
50
  "source": "abbeville",
51
- "lastUpdated": "2026-06-15",
51
+ "lastUpdated": "2026-07-01",
52
52
  "vacant": false,
53
53
  "office": "council-member",
54
54
  "seatClass": "numbered",
@@ -64,7 +64,7 @@
64
64
  "email": "",
65
65
  "phone": "",
66
66
  "source": "abbeville",
67
- "lastUpdated": "2026-06-15",
67
+ "lastUpdated": "2026-07-01",
68
68
  "vacant": false,
69
69
  "office": "council-member",
70
70
  "seatClass": "numbered",
@@ -80,7 +80,7 @@
80
80
  "email": "",
81
81
  "phone": "",
82
82
  "source": "abbeville",
83
- "lastUpdated": "2026-06-15",
83
+ "lastUpdated": "2026-07-01",
84
84
  "vacant": false,
85
85
  "office": "council-member",
86
86
  "seatClass": "numbered",
@@ -96,7 +96,7 @@
96
96
  "email": "",
97
97
  "phone": "",
98
98
  "source": "abbeville",
99
- "lastUpdated": "2026-06-15",
99
+ "lastUpdated": "2026-07-01",
100
100
  "vacant": false,
101
101
  "office": "council-member",
102
102
  "seatClass": "numbered",
@@ -112,7 +112,7 @@
112
112
  "email": "bengreeson@gmail.com",
113
113
  "phone": "",
114
114
  "source": "abbeville",
115
- "lastUpdated": "2026-06-15",
115
+ "lastUpdated": "2026-07-01",
116
116
  "vacant": false,
117
117
  "office": "council-member",
118
118
  "seatClass": "numbered",
@@ -128,7 +128,7 @@
128
128
  "email": "mhgambrellsc@gmail.com",
129
129
  "phone": "378-0488",
130
130
  "source": "abbeville",
131
- "lastUpdated": "2026-06-15",
131
+ "lastUpdated": "2026-07-01",
132
132
  "vacant": false,
133
133
  "office": "council-member",
134
134
  "seatClass": "numbered",
@@ -4,10 +4,10 @@
4
4
  "level": "local",
5
5
  "jurisdiction": "place:aiken",
6
6
  "label": "Aiken City Council",
7
- "lastUpdated": "2026-06-15",
7
+ "lastUpdated": "2026-07-01",
8
8
  "adapter": "aiken_city",
9
- "dataHash": "9f5481bdca3a6bf8",
10
- "dataLastChanged": "2026-06-15"
9
+ "dataHash": "d7823880af6c3bf4",
10
+ "dataLastChanged": "2026-07-01"
11
11
  },
12
12
  "members": [
13
13
  {
@@ -16,7 +16,7 @@
16
16
  "email": "",
17
17
  "phone": "(803) 295-2850",
18
18
  "source": "aikencity",
19
- "lastUpdated": "2026-06-15",
19
+ "lastUpdated": "2026-07-01",
20
20
  "vacant": false,
21
21
  "office": "mayor",
22
22
  "leadership": null,
@@ -32,7 +32,7 @@
32
32
  "email": "",
33
33
  "phone": "(803) 293-6704",
34
34
  "source": "aikencity",
35
- "lastUpdated": "2026-06-15",
35
+ "lastUpdated": "2026-07-01",
36
36
  "vacant": false,
37
37
  "office": "council-member",
38
38
  "seatClass": "numbered",
@@ -48,7 +48,7 @@
48
48
  "email": "",
49
49
  "phone": "(803) 439-8292",
50
50
  "source": "aikencity",
51
- "lastUpdated": "2026-06-15",
51
+ "lastUpdated": "2026-07-01",
52
52
  "vacant": false,
53
53
  "office": "council-member",
54
54
  "seatClass": "numbered",
@@ -64,7 +64,7 @@
64
64
  "email": "",
65
65
  "phone": "(803) 642-8386",
66
66
  "source": "aikencity",
67
- "lastUpdated": "2026-06-15",
67
+ "lastUpdated": "2026-07-01",
68
68
  "vacant": false,
69
69
  "office": "council-member",
70
70
  "seatClass": "numbered",
@@ -80,7 +80,7 @@
80
80
  "email": "",
81
81
  "phone": "(803) 642-7654",
82
82
  "source": "aikencity",
83
- "lastUpdated": "2026-06-15",
83
+ "lastUpdated": "2026-07-01",
84
84
  "vacant": false,
85
85
  "office": "council-member",
86
86
  "seatClass": "numbered",
@@ -96,7 +96,7 @@
96
96
  "email": "",
97
97
  "phone": "(803) 642-7654",
98
98
  "source": "aikencity",
99
- "lastUpdated": "2026-06-15",
99
+ "lastUpdated": "2026-07-01",
100
100
  "vacant": false,
101
101
  "office": "council-member",
102
102
  "seatClass": "numbered",
@@ -112,7 +112,7 @@
112
112
  "email": "",
113
113
  "phone": "(803) 642-7654",
114
114
  "source": "aikencity",
115
- "lastUpdated": "2026-06-15",
115
+ "lastUpdated": "2026-07-01",
116
116
  "vacant": false,
117
117
  "office": "council-member",
118
118
  "seatClass": "numbered",
@@ -4,10 +4,10 @@
4
4
  "level": "local",
5
5
  "jurisdiction": "place:anderson",
6
6
  "label": "Anderson City Council",
7
- "lastUpdated": "2026-06-15",
7
+ "lastUpdated": "2026-07-01",
8
8
  "adapter": "anderson_city",
9
- "dataHash": "d47662c96464e650",
10
- "dataLastChanged": "2026-06-15"
9
+ "dataHash": "5ea7bc77f05f2c58",
10
+ "dataLastChanged": "2026-07-01"
11
11
  },
12
12
  "members": [
13
13
  {
@@ -16,7 +16,7 @@
16
16
  "email": "troberts@cityofandersonsc.com",
17
17
  "phone": "",
18
18
  "source": "andersoncity",
19
- "lastUpdated": "2026-06-15",
19
+ "lastUpdated": "2026-07-01",
20
20
  "vacant": false,
21
21
  "office": "mayor",
22
22
  "leadership": null,
@@ -32,7 +32,7 @@
32
32
  "email": "jeffroberts@cityofandersonsc.com",
33
33
  "phone": "(864) 226-8837",
34
34
  "source": "andersoncity",
35
- "lastUpdated": "2026-06-15",
35
+ "lastUpdated": "2026-07-01",
36
36
  "vacant": false,
37
37
  "office": "council-member",
38
38
  "leadership": "mayor-pro-tem",
@@ -48,7 +48,7 @@
48
48
  "email": "knewton@cityofandersonsc.com",
49
49
  "phone": "(864) 712-5725",
50
50
  "source": "andersoncity",
51
- "lastUpdated": "2026-06-15",
51
+ "lastUpdated": "2026-07-01",
52
52
  "vacant": false,
53
53
  "office": "council-member",
54
54
  "seatClass": "numbered",
@@ -64,7 +64,7 @@
64
64
  "email": "mpickens@cityofandersonsc.com",
65
65
  "phone": "(864) 844-5928",
66
66
  "source": "andersoncity",
67
- "lastUpdated": "2026-06-15",
67
+ "lastUpdated": "2026-07-01",
68
68
  "vacant": false,
69
69
  "office": "council-member",
70
70
  "seatClass": "numbered",
@@ -80,7 +80,7 @@
80
80
  "email": "tstewart@cityofandersonsc.com",
81
81
  "phone": "(864) 915-1122",
82
82
  "source": "andersoncity",
83
- "lastUpdated": "2026-06-15",
83
+ "lastUpdated": "2026-07-01",
84
84
  "vacant": false,
85
85
  "office": "council-member",
86
86
  "seatClass": "numbered",
@@ -96,7 +96,7 @@
96
96
  "email": "bthompson@cityofandersonsc.com",
97
97
  "phone": "(864) 224-1990",
98
98
  "source": "andersoncity",
99
- "lastUpdated": "2026-06-15",
99
+ "lastUpdated": "2026-07-01",
100
100
  "vacant": false,
101
101
  "office": "council-member",
102
102
  "seatClass": "numbered",
@@ -112,7 +112,7 @@
112
112
  "email": "gsteele@cityofandersonsc.com",
113
113
  "phone": "(864) 651-2351",
114
114
  "source": "andersoncity",
115
- "lastUpdated": "2026-06-15",
115
+ "lastUpdated": "2026-07-01",
116
116
  "vacant": false,
117
117
  "office": "council-member",
118
118
  "seatClass": "numbered",
@@ -128,7 +128,7 @@
128
128
  "email": "mharbin@cityofandersonsc.com",
129
129
  "phone": "(864) 376-4968",
130
130
  "source": "andersoncity",
131
- "lastUpdated": "2026-06-15",
131
+ "lastUpdated": "2026-07-01",
132
132
  "vacant": false,
133
133
  "office": "council-member",
134
134
  "seatClass": "at-large",
@@ -144,7 +144,7 @@
144
144
  "email": "jroberts@cityofandersonsc.com",
145
145
  "phone": "(864) 261-1311",
146
146
  "source": "andersoncity",
147
- "lastUpdated": "2026-06-15",
147
+ "lastUpdated": "2026-07-01",
148
148
  "vacant": false,
149
149
  "office": "council-member",
150
150
  "seatClass": "at-large",
@@ -4,10 +4,10 @@
4
4
  "level": "local",
5
5
  "jurisdiction": "place:bamberg",
6
6
  "label": "Bamberg City Council",
7
- "lastUpdated": "2026-06-15",
7
+ "lastUpdated": "2026-07-01",
8
8
  "adapter": "bamberg_city",
9
- "dataHash": "33dbb476859aafda",
10
- "dataLastChanged": "2026-06-15"
9
+ "dataHash": "9e75fa828775a4ef",
10
+ "dataLastChanged": "2026-07-01"
11
11
  },
12
12
  "members": [
13
13
  {
@@ -16,7 +16,7 @@
16
16
  "email": "",
17
17
  "phone": "(803) 707-7851",
18
18
  "source": "bambergcity",
19
- "lastUpdated": "2026-06-15",
19
+ "lastUpdated": "2026-07-01",
20
20
  "vacant": false,
21
21
  "office": "council-member",
22
22
  "leadership": "mayor-pro-tem",
@@ -32,7 +32,7 @@
32
32
  "email": "",
33
33
  "phone": "(803) 707-7094",
34
34
  "source": "bambergcity",
35
- "lastUpdated": "2026-06-15",
35
+ "lastUpdated": "2026-07-01",
36
36
  "vacant": false,
37
37
  "office": "council-member",
38
38
  "seatClass": "numbered",
@@ -48,7 +48,7 @@
48
48
  "email": "",
49
49
  "phone": "(803) 347-5726",
50
50
  "source": "bambergcity",
51
- "lastUpdated": "2026-06-15",
51
+ "lastUpdated": "2026-07-01",
52
52
  "vacant": false,
53
53
  "office": "council-member",
54
54
  "seatClass": "numbered",
@@ -64,7 +64,7 @@
64
64
  "email": "",
65
65
  "phone": "",
66
66
  "source": "bambergcity",
67
- "lastUpdated": "2026-06-15",
67
+ "lastUpdated": "2026-07-01",
68
68
  "vacant": false,
69
69
  "seatClass": "numbered",
70
70
  "seatLabel": "district",
@@ -80,7 +80,7 @@
80
80
  "email": "",
81
81
  "phone": "",
82
82
  "source": "bambergcity",
83
- "lastUpdated": "2026-06-15",
83
+ "lastUpdated": "2026-07-01",
84
84
  "vacant": false,
85
85
  "seatClass": "numbered",
86
86
  "seatLabel": "district",
@@ -96,7 +96,7 @@
96
96
  "email": "",
97
97
  "phone": "",
98
98
  "source": "bambergcity",
99
- "lastUpdated": "2026-06-15",
99
+ "lastUpdated": "2026-07-01",
100
100
  "vacant": false,
101
101
  "seatClass": "numbered",
102
102
  "seatLabel": "district",