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.2.2.tar.gz (49.7 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.2.2-py3-none-any.whl (72.6 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for boarddata-6.2.2.tar.gz
Algorithm Hash digest
SHA256 283bfa391489af0a9ea6ada0e42683670edb179e1d547d36828cabe673798a70
MD5 0490637625c0a1607b6518b752bac1b5
BLAKE2b-256 ca6465e6d78ba63c87c29971556d9449fcf4355712255e2d47bf264e8c230fbd

See more details on using hashes here.

File details

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

File metadata

  • Download URL: boarddata-6.2.2-py3-none-any.whl
  • Upload date:
  • Size: 72.6 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.2.2-py3-none-any.whl
Algorithm Hash digest
SHA256 1a266375026779a222c599f9ac14de3a2d725fe76193ab1668d739800f849f4b
MD5 55fc7caf15481082b6c5eb1b3b7b9078
BLAKE2b-256 d8be401835dacd372f5db24a898c184373102abfeb086a4d20dabca6453a1e29

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