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-6.4.1.tar.gz (50.1 kB view details)

Uploaded Source

Built Distribution

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

boarddata-6.4.1-py3-none-any.whl (73.1 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for boarddata-6.4.1.tar.gz
Algorithm Hash digest
SHA256 d12ac980b4149f865b625d1c06daf5b5eead3efb0c677057fe194ae4f7eb7eef
MD5 13129e9e7943cffe1b6bce6befd016e7
BLAKE2b-256 e2cc61aa7677e0a3375af093fe53843450afd3748f2ef5d9038ae94720bc8714

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for boarddata-6.4.1-py3-none-any.whl
Algorithm Hash digest
SHA256 ecb359cff0e36bde2a1be561dce69cb6244c3d9883357f928738c7f60b796dc2
MD5 dc296d24899fe145ead57aaa56a36fd2
BLAKE2b-256 b8f4966c65c5e081a34a5d60e2b9081c5f9a9d49a9d900c9fecd2092f9f5db75

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