Skip to content

@alex.garcia/libfec / Form99

Type Alias: Form99 ​

Form99 = object

Defined in: generated/Form99.ts:39

FEC Form 99, "Miscellaneous Text" / "Miscellaneous Electronic Submission".

A free-text letter from a committee to the FEC. The format workbook titles the record "FORM 99 - MISCELLANEOUS TEXT" (FEC format workbook v8.4, sheet F99); the Commission's guides call it a "Miscellaneous Electronic Submission" that "may be used for narrative responses that do not affect actual entries within a report" (candgui.pdf p150). Uses the guides name include a treasurer's resignation where no replacement is named (candgui.pdf p21), notice of a change in filing frequency (partygui.pdf p159) and responses to requests for additional information (RAD_FAQ-Candidate_Committees_last_visited_may_5_2021.pdf p16). There is no paper form, and no financial fields.

Where the text lives ​

The delimited record is only the header fields (committee, address, treasurer, date, text code). The workbook says the next line of the file is [BEGINTEXT], everything after it is "the body of the text message", which "may include formatting, such as carriage return and line feed and tabs but may not exceed 20,000 characters", and the last line is [ENDTEXT] (FEC format workbook v8.4, sheet F99, notes after field 15). Every F99 in the libfec test corpus follows that layout; the trailing text column that fec-parser's mapping adds to the record was blank in all of them. Filing::from_reader therefore reads the [BEGINTEXT] block right after an F99 cover and stores it in text.

Properties ​

form_type ​

form_type: string

Defined in: generated/Form99.ts:46

Form type as filed: F99. Other covers carry an amendment-indicator suffix here (see base_form_type); Form 99 has none, so is_amendment is always false. Column form_type (FEC format workbook v8.4, sheet F99, field 1).


filer_committee_id ​

filer_committee_id: string

Defined in: generated/Form99.ts:51

Filer's FEC committee ID. Column filer_committee_id_number (FEC format workbook v8.4, sheet F99, field 2).


committee_name ​

committee_name: string

Defined in: generated/Form99.ts:56

Filer's committee name. Column committee_name (FEC format workbook v8.4, sheet F99, field 3).


address ​

address: Address

Defined in: generated/Form99.ts:61

Committee's mailing address. Columns street_1, street_2, city, state, zip_code (FEC format workbook v8.4, sheet F99, fields 4–8).


treasurer ​

treasurer: PersonName

Defined in: generated/Form99.ts:70

Treasurer's name. Columns treasurer_last_name, treasurer_first_name, treasurer_middle_name, treasurer_prefix, treasurer_suffix (FEC format workbook v8.4, sheet F99, fields 9–13). For format 5.x and earlier, whose single caret-delimited treasurer_name column holds the whole name, that value is split into parts.


date_signed ​

date_signed: string | null

Defined in: generated/Form99.ts:75

Date signed, YYYYMMDD. Column date_signed (FEC format workbook v8.4, sheet F99, field 14). Optional in the workbook.


text_code ​

text_code: string | null

Defined in: generated/Form99.ts:81

Type of miscellaneous document. Column text_code (FEC format workbook v8.4, sheet F99, field 15), e.g. MST. Optional, and absent from many 8.4 filings. See text_code_label.


filing_frequency ​

filing_frequency: string | null

Defined in: generated/Form99.ts:89

Column filing_frequency, format 8.5 only. Values seen in real filings are M and Q. No 8.5 format workbook is in the indexed FEC sources, so its meaning and code list are not sourced; the guides do say a change in filing frequency is noticed on Form 99 (partygui.pdf p159).


pdf_attachment ​

pdf_attachment: boolean

Defined in: generated/Form99.ts:96

Column pdf_attachment, format 8.5 only, X read as true. Like filing_frequency it is not sourced: the name suggests the submission came with a PDF, but no indexed FEC document says so.


text ​

text: string | null

Defined in: generated/Form99.ts:106

The body of the message: the lines between [BEGINTEXT] and [ENDTEXT] that follow the record (see the struct docs), joined with \n, blank lines kept. Falls back to the record's own text column if that is filled. None if neither has any non-blank text.

The file is read without CSV quoting, so " characters in the body are kept as written.