What is finra-py?
finra-py is an unofficial, open-source Python client library for the FINRA API Platform. It provides a lightweight, unopinionated Python interface to the FINRA API while preserving direct access to the API’s responses and full functionality for every supported API endpoint and dataset.
The core features include:
OAuth 2.0 authentication, client creation, token management, and custom token storage
Equity, Fixed Income, FINRA, Firm, Registration and TRACE Report Card datasets via the Query API
FINRA notification event datasets via the Notification API
Submission of regulatory filings and other data to FINRA, including creation, validation, submission, updates, and retrieval for Form U4, Form U5, Form BR, Create Individual, Non-Registered Fingerprint, and other supported workflows via the Submission API
Support for all credential types
Support for Mock datasets
Support for the QA Test Environment API
Support for asynchronous requests (server-side)
Support for asyncio (client-side)
Installing finra-py
finra-py requires Python 3.11 or later.
Install the package using pip:
python -m pip install finra-py
Import the package in Python:
import finra
You can find a full description of the finra-py library’s functionality in the documentation.
For detailed instructions on how to get started with finra-py, see Getting Started.
Why use finra-py?
finra-py is FINRA-specific on the way in, and standard HTTPX on the way out.
OAuth 2.0 Authentication: The FINRA API uses OAuth 2.0 for authentication and authorization. Implementing the OAuth 2.0 authentication flow yourself can introduce unnecessary complexity and security risks. finra-py handles token acquisition and lifecycle management for you, with customizable token storage for applications that need to manage credentials in their own storage systems.
Direct API Access: finra-py keeps the client layer deliberately thin. It maps requests to the FINRA API and returns the raw httpx.Response objects directly to you, without imposing a custom response or data model. You get the convenience of a dedicated FINRA client with all of the API’s features, without giving up the control available through direct HTTP requests.
All API Endpoints: The finra-py library is designed to provide thorough coverage of the FINRA API Platform. With this goal in mind, finra-py implements full functionality for every dataset and regulatory filing supported by the FINRA API and described in the documentation. It also provides comprehensive test coverage across Windows, macOS, and Linux.
Limitations
Even though finra-py strives to provide coverage of all documented datasets for the FINRA API, there are some datasets and services available through FINRA that may not be available through their API. See FINRA Data for information about all available FINRA datasets.
finra-py does not currently support FINRA’s fileX API
Help and Development
For troubleshooting guidance and answers to common questions, see the Getting Help page.
Submit bug reports on the finra-py Issues Page on GitHub.
If you need a dataset or feature that is not currently supported by the client, please file a Feature Request. Pull requests are not currently accepted.
FINRA API Consulting
Need help with a custom integration?
As the author and maintainer of finra-py, I provide consulting on FINRA API integrations, Web EFT migrations, compliance-related workflows, and market data systems.
See the consulting page for more information.
Project Links
Disclaimer: finra-py is an unofficial, open-source client library for the FINRA API Platform. It is not endorsed by, affiliated with, or sponsored by FINRA or any associated organization. finra-py does not provide financial advice, investment recommendations, trading strategies, or financial analysis. Users are responsible for reviewing and complying with the terms of service and usage requirements of the underlying FINRA API. This software is provided under the terms of the LICENSE without warranty of any kind.
Metadata
Release files for finra-py 1.2.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| finra_py-1.2.1.tar.gz | 107.0 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| finra_py-1.2.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 193.6 kB
Release files / finra_py-1.2.1.tar.gz
| Download URL | finra_py-1.2.1.tar.gz |
|---|---|
| Size | 107.0 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
29dc3081ee66d56369fb234cda2737a01db4cd5607100143a9c591aa98fdf12d
|
|
BLAKE2b-256 checksum How to use checksums |
c3e5b9624de7dc357913c7d64e8dbeecfb19b9672799f7dfe626fc957a7baac8
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 13, 2026.
Transparency logRelease files / finra_py-1.2.1-py3-none-any.whl
| Download URL | finra_py-1.2.1-py3-none-any.whl |
|---|---|
| Size | 86.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
33eec12fcf10b8f1bdf59b7231533870790b813afbb3c9364190726725498b66
|
|
BLAKE2b-256 checksum How to use checksums |
00e512de318df9957332a68aa15b07f1e3899c6a74bfd77b5932761da9123aba
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 13, 2026.
Transparency log