Skip to main content

Python SDK for the BoardData V2 REST API

Project description

boarddata

Python SDK for the BoardData V2 REST API.

Installation

pip install boarddata

Quick Start

from boarddata import BoardDataClient

# From environment variables
client = BoardDataClient.from_env()

# Or explicit configuration
client = BoardDataClient(
    base_url="https://api.boarddata.scalens.com",
    client_id="your-client-id",
    client_secret="your-client-secret",
)

# List companies
companies = client.list_companies(country="FR", page_size=10)

# Get a specific company
company = client.get_company("company-uuid")

# Create or update a company
result = client.upsert_company("FR0000120271", "TotalEnergies", country="FR")
print(result["action"])  # "created" or "updated"
print(result["id"])      # company UUID

Environment Variables

Variable Description
BOARDDATA_BACKEND_URL Base URL of the BoardData API
BOARDDATA_CLIENT_ID OAuth2 client ID (from Django admin)
BOARDDATA_CLIENT_SECRET OAuth2 client secret (from Django admin)

Token Caching

from boarddata import BoardDataClient, FileTokenCache

# File-based cache
client = BoardDataClient.from_env(token_cache="~/.boarddata/token.json")

# Or with explicit cache object
cache = FileTokenCache("~/.boarddata/token.json")
client = BoardDataClient.from_env(token_cache=cache)

Pagination

# Auto-paginate any list endpoint
all_companies = client.paginate(client.list_companies, country="FR")

# Limit pages
first_100 = client.paginate(client.list_companies, max_pages=4, page_size=25)

Available Domains

  • Companieslist_companies, get_company, create_company, update_company, delete_company, upsert_company
  • Personslist_persons, get_person, create_person, update_person, delete_person, upsert_person
  • Directorslist_directors, get_director, create_director, update_director, delete_director, upsert_director
  • Comexlist_comex, get_comex, create_comex, update_comex, delete_comex, upsert_comex
  • Auditorslist_auditors, get_auditor, create_auditor, update_auditor, delete_auditor
  • Documentslist_documents, get_document, create_document, update_document, delete_document
  • Assemblieslist_assemblies, get_assembly, create_assembly, update_assembly, delete_assembly
  • Resolutionslist_resolutions, get_resolution, update_resolution, delete_resolution
  • ESGlist_iros, create_iro, list_transition_plans, create_transition_plan, list_esg_benchmark
  • Sentinellist_analyses, create_analysis, retry_press_extraction, update_press_article
  • Utilitiessearch, query_assistant, get_field_sources, paginate

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

boarddata-4.0.2.tar.gz (36.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

boarddata-4.0.2-py3-none-any.whl (56.0 kB view details)

Uploaded Python 3

File details

Details for the file boarddata-4.0.2.tar.gz.

File metadata

  • Download URL: boarddata-4.0.2.tar.gz
  • Upload date:
  • Size: 36.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.12

File hashes

Hashes for boarddata-4.0.2.tar.gz
Algorithm Hash digest
SHA256 0f99acbd70680a9a16e566f1d1909c404620fb34542fee79c64dd540500da9c1
MD5 eb0ecb057711a172e67690ca65817ce0
BLAKE2b-256 476880eb4b5148a5319fb4ab5f11137949238fa29b944f2df0c32636888cc5fd

See more details on using hashes here.

File details

Details for the file boarddata-4.0.2-py3-none-any.whl.

File metadata

  • Download URL: boarddata-4.0.2-py3-none-any.whl
  • Upload date:
  • Size: 56.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.12

File hashes

Hashes for boarddata-4.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 8ca60808bcc9301ec01e4622dffd7a53e45519ef0ea1d35fc867aa5349910c43
MD5 f31ccadbbdcb96119e3c8ee9bd49c5fb
BLAKE2b-256 1b8fa09ebb8a0be9b3c3baa382b988a12cd7dd9f9b197aa8ce5d51be241e6e8e

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page