skillfed

fds.sdk.utils

Utilities for interacting with FactSet APIs.

fds-sdk-utils v3.0.1 89.0K downloads/30d#13,686 on PyPI
Permissive license Apache-2.0 Active released

What it is and what it does

fds.sdk.utils is a utility library that wraps OAuth 2.0 authentication and request handling for FactSet's REST APIs. It provides a ConfidentialClient class that manages the client credentials flow: loading OAuth configuration from a JSON file or dict, obtaining and caching access tokens, and refreshing them automatically when they expire. The library handles proxy configuration, custom SSL certificates, and request retry logic through urllib3, reducing boilerplate in applications that call FactSet APIs.

The package is built on top of joserfc, oauthlib, requests, and requests-oauthlib, delegating cryptographic signing and HTTP transport to those dependencies. It's designed for production use where a single client instance is reused across requests to benefit from token caching. The library supports debugging via Python's standard logging module and requires Python 3.10 or higher.

Use it for:

  • Authenticate Python applications against FactSet APIs using OAuth 2.0 client credentials flow.
  • Manage token lifecycle (obtain, cache, refresh) automatically in long-running services.
  • Configure proxy and custom SSL certificate handling for requests through corporate firewalls.
  • Reduce boilerplate in FactSet SDK integrations by centralizing authentication logic.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

Provides OAuth 2.0 authentication and utility helpers for FactSet API clients in Python, handling token management, proxy configuration, and SSL certificate validation.

Yes. The package is actively maintained, has no known vulnerabilities, low install friction, and a permissive license. It is purpose-built for FactSet API authentication and is the standard utility layer for FactSet's Python SDKs. Install it if you are building applications that call FactSet APIs and want to avoid reimplementing OAuth 2.0 token management.

Install

fds-sdk-utils on PyPI

pip

pip install fds-sdk-utils

uv

uv add fds-sdk-utils

poetry

poetry add fds-sdk-utils

Installing fds.sdk.utils

Before you install

Low install friction with a pure Python wheel distribution. Actively maintained as of 49 days ago. Requires Python 3.10 or higher; Python 3.8 and 3.9 are no longer supported as of v3.0.0.

License in practice

Apache License 2.0 (permissive) allows commercial and private use with minimal restrictions; you must include a copy of the license and state significant changes.

Quickstart

pip install fds.sdk.utils

from fds.sdk.utils.authentication import ConfidentialClient
import requests

client = ConfidentialClient(config_path='/path/to/config.json')
res = requests.get(
  'https://api.factset.com/analytics/lookups/v3/currencies',
  headers={'Authorization': 'Bearer ' + client.get_access_token()}
)
print(res.text)

Requires Python 3.10 or higher and a FactSet OAuth 2.0 configuration file (JSON) with client credentials and private key.

Verify before relying

  • Whether the package supports other OAuth 2.0 flows beyond client credentials.
  • Performance characteristics and token caching behavior under high-concurrency scenarios.
  • Compatibility with FactSet SDKs in other languages or versions.

Package facts

License Apache-2.0 (permissive)
Python support supports the current Python release (<4.0,>=3.10)
Install friction low — pure-Python wheel
Runtime dependencies 4 — joserfc, oauthlib, requests, requests-oauthlib
Maintenance actively maintained — 49 days since the last release
First released
Downloads 89,000/month — #13,686 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: fds_sdk_utils-3.0.1-py3-none-any.whl

Keywords: FactSet, API, SDK

License :: OSI Approved :: Apache Software LicenseProgramming Language :: Python :: 3Programming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.14

Tags

factset api authenticationoauth 2.0 client credentialsfactset sdk utilitiesapi token managementconfidential client authentication
oauth2factset-apiauthentication

More WWW/HTTP packages