that reminds me
Rock the Vote API NAMED ROCKY
This how they rigged the voter rolls?
used in Michigan and Pennsylvania supposedly had direct backend access to add voters with an API
>https://rock-the-vote.github.io/Voter-Registration-Tool-API-Docs/#overview
Rocky Overview
"Rocky" is Rock the Vote's web application that provides a web user interface that U.S. citizens can use for assistance in preparing a voter registration application document that is complete and correct for all Federal and state specific requirements, and therefore should be accepted in most cases by the election officials to whom the user submits the completed, printed, signed form.
This specification defines an application programming interface that provides exactly the same functions as the Rocky web UI, but intended for a complementary purpose: use by other web applications that have or collect personal info via their own web UI, and which rely on the Rocky backend for data validation, error reporting (particularly for state specific conditions), PDF generation, and data storage. Via this API, Rocky provides a web service to service clients (web applications that use this API to interact with Rocky) that are software operated by Rocky “partner organizations”.
Partner organizations also have access to aggregated data and reporting. These are provided by the Rocky Web UI in two ways partner organization staff can use to obtain statistics and summary information: a CSV file download provides aggregated registration data for all the registrations done via that partner; and a summary web page provides statistics about this partnerspecific aggregated data set. This API provides analogous bulk data extraction, with the “partner_registrations” interface that returns the same data as is provided in the web UI CSV file download.
The primary interface is this API is the “registrations” interface, in which callers provide all the personal data needed to create a person’s voter registration application form. Rocky checks the validity of each field, including state specific validation rules. If there are errors, Rocky returns to the caller a set of error reporting on individual fields of personal data. If there are no errors, Rocky returns the URL of a PDF file that contains the validated information, properly formatted as a voter registration request form.
This API also includes an optional interface “state_requirements,” used to precheck the user data based on location and date of birth. One intended use of the precheck function is for cases where service clients that already know the user’s location, and perhaps also DOB. In such cases, the service client can find out from Rocky whether a user is ineligible, and if so, not even begin the web UI dialogues with the user to obtain personal information. Location ineligibility is the result of states that do not allow voter registration by mail, or do not accept Rockygenerated forms for some other reason. DOB is used to determine age ineligibility in the user’s state.
When the user is not ineligible based on location or DOB, “state_requirements” returns several kinds of state specific information that the caller could use as part its web UI with the user for example, the list of political parties that user can select for affiliation, or an indication that certain fields are optional for the state, or not collected by the state.
Finally, the API includes the “partner_registrations” interface to obtain records of past registration transactions. Like the similar UI in the Rocky Partner Portal, access requires authentication, and the records returned are only those pertinent to the authenticated entity.
https://github.com/robertparker/rockthevote
https://rock-the-vote.github.io/Voter-Registration-Tool-API-Docs/