# Form C Crowdfunding API > Access the crowdfunding disclosure database including all Form C filings published on the SEC EDGAR database since 2016. Search and filter Form C filings by issuer information, offering details, risk factors, and more. Source: https://sec-api.io/docs/form-c-crowdfunding-api The Form C Crowdfunding API enables filtering all Form C filings published on the SEC EDGAR database since May 2016, when submission of Form C in XML format became mandatory. The API accepts search queries as JSON-formatted payload and returns the matching filings in JSON format. Form C is the official disclosure document that companies file when launching a crowdfunding campaign under Regulation Crowdfunding (Reg CF). These filings offer a comprehensive view of a company's capital-raising efforts, detailing key information such as the issuer's background, offering amounts, and financial metrics. Dataset size: More than 30,000 Form C filings originally filed in XML format since May 2016 to present. Data update frequency: New filings are indexed and searchable within 300 milliseconds of being published on EDGAR. Survivorship bias free: Yes. The dataset includes all Form C filings, covering both active and historical crowdfunding campaigns. ## API Endpoint The Form C API allows searching and filtering all Form C filings published on the SEC EDGAR database since 2016 to present. The API accepts search queries as JSON formatted payload and returns the matching Form C filings in JSON format. The API endpoint is: https://api.sec-api.io/form-c Supported HTTP methods: `POST` Request and response content type: `JSON` ### Authentication To authenticate API requests, use the API key displayed in your [user profile](https://sec-api.io/signup). Utilize the API key in one of two ways. Choose the method that best fits your use case: - **Authorization Header:** Set the API key as an `Authorization` header. For instance, before sending a `POST` request to `https://api.sec-api.io/form-c`, ensure the header is set as follows: `Authorization: YOUR_API_KEY`. Do not include any prefix like `Bearer`. - **Query Parameter:** Alternatively, append your API key directly to the URL as a query parameter. For example, when making `POST` requests, use the URL `https://api.sec-api.io/form-c?token=YOUR_API_KEY` instead of the base endpoint. ## Request Structure The following request parameters are supported: - `query` (string) - The search criteria in the format `field:value` defining the`field` to search in and the `value` to search for in this field. The search expression is written in [Lucene syntax](https://sec-api.io/resources/lucene-query-syntax-overview) and supports `AND` and `OR` operators. Examples: `cik:4568` or `filedAt:[2019-01-01 TO 2022-12-31]`. - `from` (integer) - Pagination control to specify the starting position of the results. Max: 10000. Default: 0. - `size` (integer) - The number of Form C filings to be returned in one response. Default: 50. Max: 50. - `sort` (array) - Specifies the field by which results should be sorted. By default, results are sorted by `filedAt` in descending order, starting with the most recent filings: `[{ "filedAt": { "order": "desc" } }]` ### Request Examples Find the two most recently submitted Form C filings for the company with CIK `1277575`. ```json { "query": "cik:1277575", "from": "0", "size": "2", "sort": [{"filedAt":{"order":"desc"}}] } ``` Find all Form C filings for which the company offers common stock and list the 10 most recent filings. ```json { "query": "offeringInformation.securityOfferedType:\"Common Stock\"", "from": "0", "size": "10", "sort": [{"filedAt":{"order":"desc"}}] } ``` List the ten most recent Form C filings with an offering amount exceeding $100,000. ```json { "query": "offeringInformation.offeringAmount > 100000", "from": "0", "size": "10", "sort": [{"filedAt":{"order":"desc"}}] } ``` Find the five most recent Form C filings from companies with total assets exceeding $2,500,000 in their most recent financial year. ```json { "query": "annualReportDisclosureRequirements.totalAssetMostRecentFiscalYear > 2500000", "from": "0", "size": "5", "sort": [{"filedAt":{"order":"desc"}}] } ``` ## Response Structure When the API locates matches within the Form C database, it returns a JSON response including two fields: `total` and `data`. The `value` field inside the `total` object indicates the total number of Form C filings that match the search criteria, while the `data` field contains an array of Form C filing objects that match the query. The maximum number of metadata objects inside the`data` array is determined by the `size` and limited to 50. Each Form C filing object comprises the following fields: - `id` (string) - System-internal unique identifier of the filing record. - `accessionNo` (string) - Unique accession number of the Form C filing, e.g. `0001277575-24-000006`. - `fileNo` (string) - Unique identifier used to reference and track filings of the same process, e.g. `020-34763` - `formType` (string) - The form type of the SEC filing. Possible values: `C`, `C-W`, `C-U`, `C-U-W`, `C/A`, `C/A-W`, `C-AR`, `C-AR-`, `C-AR/A`, `C-AR/A-W`, `C-T`, `C-TR-W`. - `filedAt` (date) - The timestamp when the filing was accepted by SEC EDGAR, e.g. `2024-05-15T16:17:15-04:00`. - `periodOfReport` (date) - The reporting period covered by this Form C submission. Format: `YYYY-MM-DD`, e.g. `2024-06-30`. In annual reports this corresponds to the fiscal year end. - `cik` (string) - Central Index Key (CIK) of the reporting entity, e.g. `1021408`. This is a unique identifier assigned by the SEC to the filer. Leading zeros are omitted. - `ticker` (string) - If the filer represents a publicly traded company, the stock ticker symbol of the filer at the time of filing. - `companyName` (string) - The legal name of the issuer as provided in the filing, e.g. `SAXON CAPITAL GROUP INC`. - `issuerInformation` (object) - Detailed information regarding the issuer and its filing characteristics. This includes flags for amendments or progress updates, along with core details about the issuer’s legal structure, address, and online presence. - `isAmendment` (boolean) - Indicates whether this filing is an amendment to a previously submitted offering statement. - `progressUpdate` (string) - For progress update submissions, this field provides a brief update on the progress of the offering or related changes. - `natureOfAmendment` (string) - A description of the amendment’s nature when filing an amended offering statement, detailing material changes that may require investor reconfirmation. - `issuerInfo` (object) - Core identifying information for the issuer, including its name, legal status, and registered address. - `nameOfIssuer` (string) - The full legal name of the issuer as it appears on the filing. - `legalStatus` (object) - Details regarding the issuer's legal organization including type, jurisdiction, and incorporation date. - `legalStatusForm` (string) - The legal form of the issuer. Possible values: `Corporation`, `Limited Partnership`, `Limited Liability Company`, `General Partnership`, `Business Trust`, or `Other`. - `legalStatusOtherDesc` (string) - Additional description if the legal status does not fall under standard categories. - `jurisdictionOrganization` (string) - The jurisdiction (state or country) where the issuer is organized. - `dateIncorporation` (string) - The date on which the issuer was incorporated or organized. Format: original date string from the XML file, typically `MM-DD-YYYY`, e.g. `08-27-2018`. - `issuerAddress` (object) - The primary physical address of the issuer, used for correspondence and legal notices. - `street1` (string) - The first line of the issuer’s street address. - `street2` (string) - The second line of the address, if applicable. - `city` (string) - City in which the issuer is located. - `stateOrCountry` (string) - The state or country of the issuer’s address. - `zipCode` (string) - The postal or ZIP code for the issuer’s address. - `issuerWebsite` (string) - The official website URL of the issuer. - `isCoIssuer` (boolean) - `true` if a co-issuer is involved in this filing. - `coIssuers` (array of objects) - Information about the co-issuer, if applicable, mirroring the structure used for the primary issuer. - `isEdgarFiler` (string) - Indicates if the co-issuer is registered with EDGAR. - `coIssuerCik` (string) - The Central Index Key (CIK) of the co-issuer. - `nameOfCoIssuer` (string) - The legal name of the co-issuer. - `coIssuerLegalStatus` (object) - The legal organization details for the co-issuer. - `legalStatusForm` (string) - The legal form of the co-issuer. Possible values: `Corporation`, `Limited Partnership`, `Limited Liability Company`, `General Partnership`, `Business Trust`, or `Other`. - `legalStatusOtherDesc` (string) - Additional description if the co-issuer’s legal status is categorized as “Other.” - `jurisdictionOrganization` (string) - The jurisdiction (state or country) where the co-issuer is organized. - `dateIncorporation` (string) - The incorporation or organization date of the co-issuer. Format: original date string from the XML file, typically `MM-DD-YYYY`, e.g. `08-27-2018`. - `coIssuerAddress` (object) - The registered address of the co-issuer. - `street1` (string) - The first line of the co-issuer’s address. - `street2` (string) - The second address line, if applicable. - `city` (string) - City for the co-issuer’s address. - `stateOrCountry` (string) - State or country for the co-issuer. - `zipCode` (string) - Postal code for the co-issuer’s address. - `coIssuerWebsite` (string) - The official website URL for the co-issuer. - `companyName` (string) - The company name as it appears on the filing. - `commissionCik` (string) - The CIK of the intermediary (if applicable) used to route or track the filing. - `commissionFileNumber` (string) - The SEC file number assigned to the intermediary handling the filing. - `crdNumber` (string) - The CRD number, if applicable, of the intermediary involved in the offering. - `offeringInformation` (object) - Information pertaining to the offering itself including compensation, security type, target offering amounts, pricing and oversubscription details as specified in the Form C. - `compensationAmount` (string) - The amount (or percentage) of compensation to be paid to the intermediary for conducting the offering. - `financialInterest` (string) - Any other direct or indirect interest the intermediary has in the issuer or arrangements for acquiring such interest. - `securityOfferedType` (string) - The type of security offered. Possible values: `Common Stock`, `Preferred Stock`, `Debt`, or `Other`. - `securityOfferedOtherDesc` (string) - When `Other` is selected for `securityOfferedType`, this field provides a description of the security. - `noOfSecurityOffered` (number) - The target number of securities to be offered in the transaction. - `price` (number) - The price per security or the fixed value used for determining the offering price. - `priceDeterminationMethod` (string) - Description of the method used to determine the security price if not set as a fixed value. - `offeringAmount` (number) - The total target offering amount as specified in the filing. - `overSubscriptionAccepted` (boolean) - Indicates whether oversubscriptions are accepted for the offering. - `overSubscriptionAllocationType` (string) - The allocation method used if oversubscriptions are accepted. Possible values: `Pro-rata basis`, `First-come, first-served basis`, or `Other`. - `descOverSubscription` (string) - A descriptive explanation of the oversubscription process when an allocation type of `Other` is selected. - `maximumOfferingAmount` (number) - The maximum offering amount, if it differs from the target offering amount. - `deadlineDate` (string) - The deadline by which the target offering amount must be met, in the appropriate date format. Format: original date string from the XML file, typically `MM-DD-YYYY`, e.g. `08-27-2018`. - `annualReportDisclosureRequirements` (object) - Financial disclosure requirements for annual reporting including employee counts, asset totals, cash, debts, revenues, and other key financial metrics. - `currentEmployees` (number) - The current number of employees as reported in the filing. - `totalAssetMostRecentFiscalYear` (number) - Total assets as reported at the end of the most recent fiscal year. - `totalAssetPriorFiscalYear` (number) - Total assets as reported at the end of the fiscal year preceding the most recent. - `cashEquiMostRecentFiscalYear` (number) - Cash and cash equivalents for the most recent fiscal year. - `cashEquiPriorFiscalYear` (number) - Cash and cash equivalents for the fiscal year prior to the most recent. - `actReceivedMostRecentFiscalYear` (number) - Accounts receivable (or similar metrics such as trade receivables) for the most recent fiscal year. - `actReceivedPriorFiscalYear` (number) - Accounts receivable for the prior fiscal year. - `shortTermDebtMostRecentFiscalYear` (number) - Short-term debt obligations for the most recent fiscal year. - `shortTermDebtPriorFiscalYear` (number) - Short-term debt obligations for the prior fiscal year. - `longTermDebtMostRecentFiscalYear` (number) - Long-term debt for the most recent fiscal year. - `longTermDebtPriorFiscalYear` (number) - Long-term debt for the prior fiscal year. - `revenueMostRecentFiscalYear` (number) - Revenues or sales reported for the most recent fiscal year. - `revenuePriorFiscalYear` (number) - Revenues or sales for the fiscal year prior to the most recent. - `costGoodsSoldMostRecentFiscalYear` (number) - Cost of goods sold for the most recent fiscal year. - `costGoodsSoldPriorFiscalYear` (number) - Cost of goods sold for the prior fiscal year. - `taxPaidMostRecentFiscalYear` (number) - Taxes paid as reported for the most recent fiscal year. - `taxPaidPriorFiscalYear` (number) - Taxes paid for the prior fiscal year. - `netIncomeMostRecentFiscalYear` (number) - Net income for the most recent fiscal year. - `netIncomePriorFiscalYear` (number) - Net income for the fiscal year preceding the most recent. - `issueJurisdictionSecuritiesOffering` (array of string) - List of two letter codes of the jurisdictions (states or territories) in which the issuer intends to offer the securities. - `signatureInfo` (object) - Signature information for the filing, including the authorized issuer signature and additional signatory details. - `issuerSignature` (object) - Signature details provided by the issuer or its authorized representative. - `issuer` (string) - The name of the issuer or the representative signing the filing. - `issuerSignature` (string) - The digital signature or identifier representing the issuer’s signature. - `issuerTitle` (string) - The title or position of the issuer’s signing representative. - `signaturePersons` (array of object) - Details for any additional signatories including their signature, title, and the date of signing. - `personSignature` (string) - The digital signature or identifier for the additional signatory. - `personTitle` (string) - The title or position of the additional signatory. - `signatureDate` (string) - The date on which the signature was provided, in an accepted date format. Format: original date string from the XML file, typically `MM-DD-YYYY`, e.g. `08-27-2018`. ### Response Example JSON ```json { "total": { "value": 10000, "relation": "gte" }, "data": [ { "id": "23591473a1f0efca6469e2f47b320b24", "accessionNo": "0001277575-24-000006", "fileNo": "020-34763", "formType": "C/A", "filedAt": "2024-12-31T16:03:13-05:00", "cik": "1277575", "ticker": "SCGX", "companyName": "SAXON CAPITAL GROUP INC", "issuerInformation": { "isAmendment": true, "natureOfAmendment": "The issuer is extending their offering till February 1, 2025.", "issuerInfo": { "nameOfIssuer": "SAXON CAPITAL GROUP INC", "legalStatus": { "legalStatusForm": "Corporation", "jurisdictionOrganization": "NV", "dateIncorporation": "11-12-2003" }, "issuerAddress": { "street1": "7740 E GRAY RD", "street2": "#103", "city": "SCOTTSDALE", "stateOrCountry": "AZ", "zipCode": "85260" }, "issuerWebsite": "https://energyglasssolar.com/" }, "isCoIssuer": false, "companyName": "PicMii Crowdfunding LLC", "commissionCik": "0001817013", "commissionFileNumber": "007-00246", "crdNumber": "310171" }, "offeringInformation": { "compensationAmount": "PicMii is a FINRA/SEC registered funding portal and will receive cash compensation equal to 4.9% of the value of the securities sold through Regulation CF and a $2,500 upfront fee and reimbursement for escrow expenses.", "financialInterest": "None.", "securityOfferedType": "Common Stock", "noOfSecurityOffered": 4000, "price": 2.5, "priceDeterminationMethod": "At issuer's discretion.", "offeringAmount": 10000, "overSubscriptionAccepted": true, "overSubscriptionAllocationType": "Other", "descOverSubscription": "At issuer's discretion.", "maximumOfferingAmount": 124000, "deadlineDate": "02-01-2025" }, "annualReportDisclosureRequirements": { "currentEmployees": 10, "totalAssetMostRecentFiscalYear": 688311, "totalAssetPriorFiscalYear": 350459, "cashEquiMostRecentFiscalYear": 348575, "cashEquiPriorFiscalYear": 282926, "actReceivedMostRecentFiscalYear": 0, "actReceivedPriorFiscalYear": 0, "shortTermDebtMostRecentFiscalYear": 5227, "shortTermDebtPriorFiscalYear": 4600, "longTermDebtMostRecentFiscalYear": 0, "longTermDebtPriorFiscalYear": 0, "revenueMostRecentFiscalYear": 0, "revenuePriorFiscalYear": 0, "costGoodsSoldMostRecentFiscalYear": 0, "costGoodsSoldPriorFiscalYear": 0, "taxPaidMostRecentFiscalYear": 0, "taxPaidPriorFiscalYear": 0, "netIncomeMostRecentFiscalYear": 839854, "netIncomePriorFiscalYear": 566888, "issueJurisdictionSecuritiesOffering": [ "AL", "AK", "AZ", // cut of for brevity "A9", "B0", "Z4" ] }, "signatureInfo": { "issuerSignature": { "issuer": "SAXON CAPITAL GROUP INC", "issuerSignature": "Clifford Paul", "issuerTitle": "CEO" }, "signaturePersons": [ { "personSignature": "Clifford Paul", "personTitle": "CEO", "signatureDate": "12-31-2024" } ] } }, // cut off for brevity ] } ``` ### Form C Filing Types The following table provides an overview of different SEC Form C filing types used in crowdfunding submissions. | Form Type | Description | | --- | --- | | C | Initial filing required to launch a crowdfunding campaign. | | C-W | Withdrawal of a previously filed Form C before the offering begins. | | C-U | Updates on fundraising progress when reaching 50% or 100% of the target. | | C-U-W | Withdrawal of a previously filed fundraising progress update (C-U). | | C/A | Amendment to a previously filed Form C with updated information. | | C/A-W | Withdrawal of an amended Form C. | | C-AR | Annual report updating investors on the company’s financials and progress. | | C-AR-W | Withdrawal of a previously filed annual report (C-AR). | | C-AR/A | Amendment to a previously filed annual report (C-AR). | | C-AR/A-W | Withdrawal of a previously filed amendment to an annual report (C-AR/A). | | C-TR | Termination report used to end ongoing reporting obligations. | | C-TR-W | Withdrawal of a termination report (C-TR). | ## FAQ Common questions about querying the Form C Crowdfunding API, the response shape, and the bulk archives. ### How do I look up all crowdfunding offering filings submitted by a specific company using its SEC identifier? To pull every crowdfunding filing for one company, search the `/form-c` endpoint on the company's SEC Central Index Key (`cik`). The CIK is the unique identifier the SEC assigns to each filer, stored on each filing with leading zeros omitted (for example `1277575`). Every Form C document carries this field at the top level, so filtering on it returns the full set of offering statements, amendments, progress updates, and annual reports tied to that entity. By default results are sorted by filing acceptance date in descending order (`filedAt`), so the most recent submissions appear first. To walk through a company with many filings, page through the results using the `from` offset. ```json { "query": "cik:1277575", "from": 0, "size": 50, "sort": [{"filedAt":{"order":"desc"}}] } ``` ### How can I find the most recent crowdfunding campaign disclosures for a company by its stock ticker symbol? When the issuer is a publicly traded company, each Form C filing records its stock ticker at the time of filing (`ticker`). Search the `/form-c` endpoint on that ticker symbol to retrieve the company's crowdfunding disclosures. Note that many Reg CF issuers are private and have an empty `ticker` value, so this approach only works for filers that were publicly traded. To see the latest disclosures first, sort the results by filing acceptance date in descending order (`filedAt`). The first entry returned is then the most recently accepted crowdfunding filing for that ticker. ```json { "query": "ticker:SCGX", "from": 0, "size": 50, "sort": [{"filedAt":{"order":"desc"}}] } ``` ### How do I retrieve a single crowdfunding filing when I already know its accession number? Each Form C filing has a unique accession number assigned by SEC EDGAR (`accessionNo`), formatted like `0001277575-24-000006`. To fetch one specific filing, search the `/form-c` endpoint on that accession number. Because the value is unique, the response contains exactly that one filing object in the `data` array, with `total.value` equal to 1 when the filing exists. ```json { "query": "accessionNo:\"0001277575-24-000006\"", "from": 0, "size": 50, "sort": [{"filedAt":{"order":"desc"}}] } ``` ### How do I pull every crowdfunding filing submitted within a specific date range? Every Form C filing records the timestamp when SEC EDGAR accepted it (`filedAt`), formatted like `2024-05-15T16:17:15-04:00`. To retrieve all filings submitted in a given window, search the `/form-c` endpoint for `filedAt` falling between your start and end dates — for example, the value of `filedAt` should be between `2021-01-01` and `2021-12-31` to capture the 2021 calendar year. Since a broad date range can match more filings than one response can hold, sort by `filedAt` and page through the results using the `from` offset in steps until you have collected all matches reported in `total.value`. ```json { "query": "filedAt:[2021-01-01 TO 2021-12-31]", "from": 0, "size": 50, "sort": [{"filedAt":{"order":"desc"}}] } ``` ### How can I find crowdfunding campaigns by the name of the company raising money? The legal name of the issuer raising money is stored on each filing as `companyName` (for example `Seven Stills, Inc.` or `PopViewers LLC`). Search the `/form-c` endpoint on `companyName` to find that company's crowdfunding campaigns. The same name also appears inside the issuer block as `issuerInformation.issuerInfo.nameOfIssuer`. Be aware that `issuerInformation.companyName` is a separate field that holds the name of the funding portal or intermediary that routed the filing, not the company raising money. To match the business running the campaign, use the top-level `companyName`. ```json { "query": "companyName:\"SAXON CAPITAL GROUP INC\"", "from": 0, "size": 50, "sort": [{"filedAt":{"order":"desc"}}] } ``` ### How do I distinguish initial crowdfunding offerings from amendments, progress updates, withdrawals, and annual reports? The kind of crowdfunding filing is recorded in `formType`. Search the `/form-c` endpoint and filter on this field to separate the categories: `C` is the initial filing that launches a campaign, `C/A` is an amendment that revises a previously filed Form C, `C-U` is a progress update on fundraising, `C-W` is a withdrawal of a Form C before the offering begins, and `C-AR` is the annual report filed after the campaign. Amendments to annual reports use `C-AR/A`, and termination reports use `C-TR`. To retrieve only one category, set `formType` to the single value you want. To compare across categories, pull each form type separately or request several values together and group the results by `formType`. ```json { "query": "formType:\"C\"", "from": 0, "size": 50, "sort": [{"filedAt":{"order":"desc"}}] } ``` ### How can I find only the amendments that revise a previously filed crowdfunding offering, and see what was changed? Amendments to a crowdfunding offering carry the form type `C/A`. Search the `/form-c` endpoint with `formType` set to `C/A` to retrieve only those filings. Each amendment describes what was revised in `issuerInformation.natureOfAmendment` — a short text explanation such as extending the offering deadline or updating the company overview. Read `issuerInformation.natureOfAmendment` on each result to see the material changes. There is also a boolean amendment flag on the issuer block (`issuerInformation.isAmendment`), so amendments can be identified either by the `C/A` form type or by that flag. ```json { "query": "formType:\"C/A\"", "from": 0, "size": 50, "sort": [{"filedAt":{"order":"desc"}}] } ``` ### How do I identify crowdfunding offerings that were withdrawn before completion? Withdrawals are recorded through dedicated form types ending in `-W`. Search the `/form-c` endpoint on `formType` and filter for the withdrawal variants: `C-W` withdraws an initial Form C before the offering begins, `C-U-W` withdraws a progress update, `C/A-W` withdraws an amendment, `C-AR-W` withdraws an annual report, `C-AR/A-W` withdraws an annual report amendment, and `C-TR-W` withdraws a termination report. To collect all withdrawals, request these form-type values together. Note that withdrawal filings are minimal — they typically carry only the issuer name and signature, without the offering or financial detail present on the original filing. ```json { "query": "formType:\"C-W\"", "from": 0, "size": 50, "sort": [{"filedAt":{"order":"desc"}}] } ``` ### How can I find progress update filings that report a campaign reaching its fundraising milestones? Progress updates use the form type `C-U`, filed when a campaign reaches 50% or 100% of its target. Search the `/form-c` endpoint with `formType` set to `C-U` to retrieve them. Each progress update describes the campaign status in `issuerInformation.progressUpdate` — a short text note such as confirming that the offering closed having received a stated amount of investment commitments. Read `issuerInformation.progressUpdate` on each result to see the milestone reported. Amendments to progress updates carry the form type `C-U/A` style values, and withdrawals of progress updates use `C-U-W`. ```json { "query": "formType:\"C-U\"", "from": 0, "size": 50, "sort": [{"filedAt":{"order":"desc"}}] } ``` ### How do I locate the annual reports that crowdfunding companies file after their campaign closes? Annual reports for crowdfunding companies use the form type `C-AR`, with amendments to those reports filed as `C-AR/A`. Search the `/form-c` endpoint with `formType` set to `C-AR` (and `C-AR/A` if you want amendments as well) to retrieve them. Annual reports cover a fiscal year rather than a live offering, so they carry a reporting period (`periodOfReport`, formatted `YYYY-MM-DD`) corresponding to the fiscal year end, and they populate the financial figures under `annualReportDisclosureRequirements` while often omitting the live `offeringInformation` block. ```json { "query": "formType:\"C-AR\"", "from": 0, "size": 50, "sort": [{"filedAt":{"order":"desc"}}] } ``` ### How can I find crowdfunding campaigns offering a particular kind of security, such as common stock or debt? The type of security being offered is recorded in `offeringInformation.securityOfferedType`, which takes one of four values: `Common Stock`, `Preferred Stock`, `Debt`, or `Other`. Search the `/form-c` endpoint and set `offeringInformation.securityOfferedType` to the category you want — for example `Common Stock` for equity campaigns or `Debt` for debt offerings. To compare across security types, pull each value separately or request several together and group the results by `offeringInformation.securityOfferedType`. ```json { "query": "offeringInformation.securityOfferedType:\"Common Stock\"", "from": 0, "size": 50, "sort": [{"filedAt":{"order":"desc"}}] } ``` ### How do I search for offerings of unusual security types like convertible notes or SAFEs? Securities that do not fall into common stock, preferred stock, or debt are recorded with `offeringInformation.securityOfferedType` set to `Other`. Search the `/form-c` endpoint for that value to find these offerings. When `Other` is selected, the filing describes the instrument in free text in `offeringInformation.securityOfferedOtherDesc` — for example `Convertible Note`, `Crowd SAFE (Simple Agreement for Future Equity)`, or `Equity - Nonvoting LLC Interests`. To narrow down to a specific instrument, first filter `offeringInformation.securityOfferedType` to `Other`, then match the descriptive text in `offeringInformation.securityOfferedOtherDesc` for terms like convertible note or SAFE. ```json { "query": "offeringInformation.securityOfferedType:\"Other\" AND offeringInformation.securityOfferedOtherDesc:SAFE", "from": 0, "size": 50, "sort": [{"filedAt":{"order":"desc"}}] } ``` ### How can I find crowdfunding campaigns with a target raise above a certain dollar amount? The target offering amount a company aims to raise is stored as a number in `offeringInformation.offeringAmount`. Search the `/form-c` endpoint and filter for `offeringInformation.offeringAmount` greater than your chosen threshold — for example greater than `100000` to find campaigns targeting more than $100,000. Because many campaigns share common round-number targets, sorting the results by `offeringInformation.offeringAmount` helps you review them from largest to smallest target raise. ```json { "query": "offeringInformation.offeringAmount:>100000", "from": 0, "size": 50, "sort": [{"filedAt":{"order":"desc"}}] } ``` ### How do I find campaigns where the maximum amount the company is willing to raise exceeds a given threshold? Separate from the target raise, each filing records the ceiling a company is willing to accept in `offeringInformation.maximumOfferingAmount`, a number that is present when it differs from the target offering amount. Search the `/form-c` endpoint and filter for `offeringInformation.maximumOfferingAmount` greater than your threshold. The target raise (`offeringInformation.offeringAmount`) and the maximum (`offeringInformation.maximumOfferingAmount`) are distinct figures — a campaign may target $10,000 while permitting up to $1,070,000 — so choose the maximum field when you want the upper bound on what the company could collect. ```json { "query": "offeringInformation.maximumOfferingAmount:>1000000", "from": 0, "size": 50, "sort": [{"filedAt":{"order":"desc"}}] } ``` ### How can I identify offerings that accept oversubscriptions and see how they allocate the excess? Whether an offering accepts oversubscriptions is recorded as a boolean in `offeringInformation.overSubscriptionAccepted`. Search the `/form-c` endpoint with `offeringInformation.overSubscriptionAccepted` set to `true` to find campaigns that permit raising beyond the target. The method used to allocate the excess is in `offeringInformation.overSubscriptionAllocationType`, which takes the values `Pro-rata basis`, `First-come, first-served basis`, or `Other`. When the value is `Other`, the filing explains the process in free text in `offeringInformation.descOverSubscription`. Read those two fields on each result to understand how oversubscriptions would be handled. ```json { "query": "offeringInformation.overSubscriptionAccepted:true", "from": 0, "size": 50, "sort": [{"filedAt":{"order":"desc"}}] } ``` ### How do I find crowdfunding companies organized as LLCs versus corporations? The legal form of the issuer is recorded in `issuerInformation.issuerInfo.legalStatus.legalStatusForm`, which takes the values `Corporation`, `Limited Liability Company`, `Limited Partnership`, `General Partnership`, `Business Trust`, or `Other`. Search the `/form-c` endpoint and set that field to `Limited Liability Company` for LLC issuers or `Corporation` for incorporated issuers. When the value is `Other`, the filing provides a free-text explanation in `issuerInformation.issuerInfo.legalStatus.legalStatusOtherDesc`. To compare the two structures, pull each value separately and group the results by `issuerInformation.issuerInfo.legalStatus.legalStatusForm`. ```json { "query": "issuerInformation.issuerInfo.legalStatus.legalStatusForm:\"Limited Liability Company\"", "from": 0, "size": 50, "sort": [{"filedAt":{"order":"desc"}}] } ``` ### How can I find crowdfunding offerings from companies incorporated in a specific state? The state or country where the issuer is legally organized is recorded in `issuerInformation.issuerInfo.legalStatus.jurisdictionOrganization`, stored as a two-letter code such as `DE` for Delaware, `NY` for New York, or `IL` for Illinois. Search the `/form-c` endpoint and set that field to the jurisdiction code you want. This is the place of incorporation or organization, which can differ from where the company physically operates — for that, use the issuer's address fields instead. ```json { "query": "issuerInformation.issuerInfo.legalStatus.jurisdictionOrganization:DE", "from": 0, "size": 50, "sort": [{"filedAt":{"order":"desc"}}] } ``` ### How do I find crowdfunding companies located in a particular state or city? The issuer's physical location is recorded in its address block under `issuerInformation.issuerInfo.issuerAddress`. The state or country is in `issuerInformation.issuerInfo.issuerAddress.stateOrCountry` (a code such as `CA` or `NY`) and the city is in `issuerInformation.issuerInfo.issuerAddress.city` (for example `San Francisco` or `Pittsburgh`). Search the `/form-c` endpoint and filter on either or both of these fields. This address reflects where the company is actually located, which can differ from its state of incorporation (`issuerInformation.issuerInfo.legalStatus.jurisdictionOrganization`) — a company may be organized in Delaware but operate from California. ```json { "query": "issuerInformation.issuerInfo.issuerAddress.stateOrCountry:CA AND issuerInformation.issuerInfo.issuerAddress.city:\"San Francisco\"", "from": 0, "size": 50, "sort": [{"filedAt":{"order":"desc"}}] } ``` ### How can I find all campaigns run through a specific crowdfunding platform or funding portal? The funding portal or intermediary that routed a Form C filing is recorded inside the issuer block. Its name is in `issuerInformation.companyName` (for example `Wefunder Portal LLC`, `NetCapital Funding Portal Inc.`, or `Honeycomb Portal LLC`), and its SEC identifier is in `issuerInformation.commissionCik`. Search the `/form-c` endpoint and filter on either of these fields to find every campaign run through that platform. Using `issuerInformation.commissionCik` is the more reliable match because portal names can vary in spelling, while the intermediary CIK is a stable identifier. Note that `issuerInformation.companyName` holds the portal name, distinct from the top-level `companyName`, which is the company raising money. ```json { "query": "issuerInformation.commissionCik:\"0001817013\"", "from": 0, "size": 50, "sort": [{"filedAt":{"order":"desc"}}] } ``` ### How do I identify offerings that involve a co-issuer in addition to the primary company? Whether a filing involves a co-issuer is recorded as a boolean in `issuerInformation.isCoIssuer`. Search the `/form-c` endpoint with that field set to `true` to find offerings that include a second issuer alongside the primary company. When a co-issuer is present, its details appear in the `issuerInformation.coIssuers` array, which mirrors the primary issuer's structure — including the co-issuer's CIK (`issuerInformation.coIssuers.coIssuerCik`), name (`issuerInformation.coIssuers.nameOfCoIssuer`), legal status (`issuerInformation.coIssuers.coIssuerLegalStatus`), and address (`issuerInformation.coIssuers.coIssuerAddress`). ```json { "query": "issuerInformation.isCoIssuer:true", "from": 0, "size": 50, "sort": [{"filedAt":{"order":"desc"}}] } ``` ### How can I find crowdfunding companies that reported revenue above a certain level in their most recent fiscal year? Revenue for the most recent fiscal year is reported as a number in `annualReportDisclosureRequirements.revenueMostRecentFiscalYear`. Search the `/form-c` endpoint and filter for that field greater than your chosen level — for example greater than `1000000` to find companies that reported more than $1 million in revenue. Many early-stage crowdfunding issuers report zero revenue, so this filter naturally isolates companies with established sales. To review results by size, sort on `annualReportDisclosureRequirements.revenueMostRecentFiscalYear`. ```json { "query": "annualReportDisclosureRequirements.revenueMostRecentFiscalYear:>1000000", "from": 0, "size": 50, "sort": [{"filedAt":{"order":"desc"}}] } ``` ### How do I find early-stage companies that reported little or no revenue or were operating at a net loss? Two financial fields identify early-stage companies. Revenue for the most recent fiscal year is in `annualReportDisclosureRequirements.revenueMostRecentFiscalYear`, and the bottom-line profit or loss is in `annualReportDisclosureRequirements.netIncomeMostRecentFiscalYear`, where a negative number indicates a net loss. Search the `/form-c` endpoint and filter for `annualReportDisclosureRequirements.revenueMostRecentFiscalYear` at or near zero, or for `annualReportDisclosureRequirements.netIncomeMostRecentFiscalYear` less than zero, to capture pre-revenue or loss-making issuers. These can be combined: a company with revenue equal to `0` and a net income value like `-522733` is a pre-revenue company operating at a loss. The prior-year counterparts `revenuePriorFiscalYear` and `netIncomePriorFiscalYear` let you confirm the pattern held the year before. ```json { "query": "annualReportDisclosureRequirements.revenueMostRecentFiscalYear:0 AND annualReportDisclosureRequirements.netIncomeMostRecentFiscalYear:<0", "from": 0, "size": 50, "sort": [{"filedAt":{"order":"desc"}}] } ``` ### How can I screen for companies whose total assets grew between the prior and most recent fiscal year? Total assets are reported for two periods on each filing: `annualReportDisclosureRequirements.totalAssetMostRecentFiscalYear` for the latest fiscal year and `annualReportDisclosureRequirements.totalAssetPriorFiscalYear` for the year before. To screen for asset growth on the `/form-c` endpoint, retrieve filings and keep those where `annualReportDisclosureRequirements.totalAssetMostRecentFiscalYear` is greater than `annualReportDisclosureRequirements.totalAssetPriorFiscalYear`. The query can narrow the candidate set — for example by requiring the most recent total assets to exceed a floor — but the period-over-period comparison itself is done by comparing the two values on each returned filing, since the two figures are stored as separate numeric fields. ```json { "query": "annualReportDisclosureRequirements.totalAssetMostRecentFiscalYear:>2500000", "from": 0, "size": 50, "sort": [{"filedAt":{"order":"desc"}}] } ``` ### How do I find crowdfunding companies of a given size by employee headcount? The number of employees a company reports is stored as a number in `annualReportDisclosureRequirements.currentEmployees`. Search the `/form-c` endpoint and filter on that field to find companies of a given size — for example a value of `0` for companies with no employees, or a range above a threshold for larger teams. Reported headcounts among crowdfunding issuers are typically small, often in the single digits, so even modest thresholds separate the larger operators from solo or pre-launch ventures. ```json { "query": "annualReportDisclosureRequirements.currentEmployees:>10", "from": 0, "size": 50, "sort": [{"filedAt":{"order":"desc"}}] } ``` ### How can I find offerings that intend to sell securities into a particular state or territory? The states and territories where an issuer intends to offer its securities are listed in `annualReportDisclosureRequirements.issueJurisdictionSecuritiesOffering`, an array of two-letter codes such as `CA`, `NY`, or `TX`. Search the `/form-c` endpoint and match the jurisdiction code you want against that array; a filing is returned when the array contains that code. Many offerings list every U.S. state plus territories, so this field often holds a long list. Codes outside the standard state set (such as `PR` for Puerto Rico, `GU` for Guam, or codes like `1V`) also appear and can be matched the same way. ```json { "query": "annualReportDisclosureRequirements.issueJurisdictionSecuritiesOffering:CA", "from": 0, "size": 50, "sort": [{"filedAt":{"order":"desc"}}] } ``` ### How do I find offerings with a fundraising deadline falling in a specific month or year? The deadline by which the target offering amount must be met is recorded in `offeringInformation.deadlineDate`. This value is the original date string taken from the filing's XML, typically formatted as `MM-DD-YYYY` (for example `09-30-2021`), rather than a normalized date. Search the `/form-c` endpoint and match `offeringInformation.deadlineDate` against the month or year you want. Because the field is a text string in `MM-DD-YYYY` form rather than a true date, matching by month or year is done on the text pattern — for example matching deadlines that fall in 2021 by the year portion of the string — and not with numeric date-range comparison. ```json { "query": "offeringInformation.deadlineDate:*2021", "from": 0, "size": 50, "sort": [{"filedAt":{"order":"desc"}}] } ``` ### How can I find filings signed by a particular executive or officer? The person who signed on behalf of the issuer is recorded under `signatureInfo.issuerSignature`, with the signer's name in `signatureInfo.issuerSignature.issuer` together with `signatureInfo.issuerSignature.issuerSignature`, and their role in `signatureInfo.issuerSignature.issuerTitle` (for example `CEO` or `President`). Search the `/form-c` endpoint and filter on the signer name to find filings signed by a specific executive. Additional signatories are listed in the `signatureInfo.signaturePersons` array, where each entry carries the signature (`signatureInfo.signaturePersons.personSignature`), the title (`signatureInfo.signaturePersons.personTitle`), and the date signed (`signatureInfo.signaturePersons.signatureDate`). Search those fields to match officers who signed without being the primary issuer signatory. ```json { "query": "signatureInfo.issuerSignature.issuerSignature:\"Clifford Paul\"", "from": 0, "size": 50, "sort": [{"filedAt":{"order":"desc"}}] } ``` ### How do I track all the filings tied to one crowdfunding offering over its life from launch through annual reports? Filings that belong to the same crowdfunding process share a common file number stored in `fileNo`, formatted like `020-34763`. Search the `/form-c` endpoint on `fileNo` to retrieve every filing tied to one offering — the initial `C`, any `C/A` amendments, `C-U` progress updates, `C-AR` annual reports, and any withdrawals — across its full life. Sort the results by filing acceptance date (`filedAt`) to view the offering's history in chronological order, from launch through later annual reports. The `formType` of each result tells you which stage of the offering's life that filing represents. ```json { "query": "fileNo:\"020-34763\"", "from": 0, "size": 50, "sort": [{"filedAt":{"order":"asc"}}] } ``` ### How can I retrieve more than 50 matching crowdfunding filings for a broad query? The `/form-c` endpoint returns at most 50 filings per response, controlled by the `size` parameter, which is capped at 50. To collect more than 50 matches for a broad query, page through the result set using the `from` offset: keep the query fixed and advance `from` in steps of the page size (0, then 50, then 100, and so on), reading 50 filings each time. The `from` offset can go up to a maximum of 10000. Use a stable sort, such as by `filedAt`, so that filings do not shift between pages, and check `total.value` in the response to know how many filings match in total. ```json { "query": "formType:\"C\"", "from": 50, "size": 50, "sort": [{"filedAt":{"order":"desc"}}] } ``` ### How do I rank crowdfunding campaigns by target offering size or by reported revenue to compare across companies? To rank campaigns, sort the `/form-c` results on the numeric field you want to compare. For target offering size, sort on `offeringInformation.offeringAmount`; for reported revenue, sort on `annualReportDisclosureRequirements.revenueMostRecentFiscalYear`. Choosing descending order brings the largest campaigns or highest-revenue companies to the top. The sort can be combined with a query that narrows the population first — for example restricting to a security type, a date range, or a jurisdiction — so the ranking applies only to the subset you care about. Page through the ordered results with the `from` offset to compare across the full set of matching companies. ```json { "query": "formType:\"C\"", "from": 0, "size": 50, "sort": [{"offeringInformation.offeringAmount":{"order":"desc"}}] } ``` ## References For more information about C filings and Regulation Crowdfunding, visit the SEC websites here: - [Form C Template](https://www.sec.gov/about/forms/formc.pdf) - [Regulation Crowdfunding - Short Description](https://www.sec.gov/resources-small-businesses/small-business-compliance-guides/regulation-crowdfunding-small-entity-compliance-guide-issuers) - [Regulation Crowdfunding - eCFR](https://www.ecfr.gov/current/title-17/chapter-II/part-227#227.100)