Skip to main content

Official Python SDK for The Polaris Report API

Project description

polaris-news

Official Python SDK for The Polaris Report API.

Installation

pip install polaris-news

Quick Start

Authenticate via CLI

polaris login    # opens GitHub in your browser — API key saved automatically
polaris whoami   # check your auth status
polaris logout   # remove saved credentials

Use the client

from polaris_news import PolarisClient

client = PolarisClient()  # auto-reads saved credentials
feed = client.feed(category="technology", limit=10)
for brief in feed.briefs:
    print(brief.headline)

You can also pass a key explicitly or set the POLARIS_API_KEY environment variable.

Methods

Method Description
feed(category?, limit?, page?, per_page?, min_confidence?) Get the news feed
brief(brief_id, include_full_text?) Get a single brief by ID
search(query, category?, page?, per_page?, sort?, min_confidence?, from_date?, to_date?, entity?, sentiment?) Search briefs
generate(topic, category?) Generate a brief on a topic
entities(q?, type?, limit?) List entities
entity_briefs(name, role?, limit?, offset?) Get briefs for an entity
trending_entities(limit?) Get trending entities
similar(brief_id, limit?) Get similar briefs
clusters(period?, limit?) Get brief clusters
data(entity?, type?, limit?) Get structured data points
agent_feed(category?, tags?, limit?, min_confidence?) Get agent-optimized feed
compare_sources(brief_id) Compare sources for a brief
trending(period?, limit?) Get trending briefs
verify(claim, context?) Fact-check a claim against briefs
stream(categories?) Stream briefs via SSE (generator)

Error Handling

from polaris_news import PolarisClient, AuthenticationError, RateLimitError, NotFoundError

client = PolarisClient()

try:
    brief = client.brief("abc123")
except AuthenticationError:
    print("Invalid API key")
except NotFoundError:
    print("Brief not found")
except RateLimitError as e:
    print(f"Rate limited. Retry after: {e.retry_after}s")

Streaming

client = PolarisClient()

for brief in client.stream(categories="technology,science"):
    print(f"[{brief.category}] {brief.headline}")

Documentation

Full API documentation: https://thepolarisreport.com/docs

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

polaris_news-0.4.0.tar.gz (17.7 kB view details)

Uploaded Source

Built Distribution

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

polaris_news-0.4.0-py3-none-any.whl (14.0 kB view details)

Uploaded Python 3

File details

Details for the file polaris_news-0.4.0.tar.gz.

File metadata

  • Download URL: polaris_news-0.4.0.tar.gz
  • Upload date:
  • Size: 17.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.6

File hashes

Hashes for polaris_news-0.4.0.tar.gz
Algorithm Hash digest
SHA256 a0e074f2c7cb5b2879016a916f81b75eb2401ca876ea8c1049a1a705a9ce1b2b
MD5 db58bc9946ba09a5cf35e6c53533a9ea
BLAKE2b-256 f19fb808e13a72ce4a71ff71b50f240baab8aa5291dc906319f9997c1eb686f6

See more details on using hashes here.

File details

Details for the file polaris_news-0.4.0-py3-none-any.whl.

File metadata

  • Download URL: polaris_news-0.4.0-py3-none-any.whl
  • Upload date:
  • Size: 14.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.6

File hashes

Hashes for polaris_news-0.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 bab8d11859ca359ab094798a36763d61bd1b902eb1f8532522540e8fde42b70b
MD5 e9b5a19805662b6612bd8580b4db239f
BLAKE2b-256 ecf67c77da75d30a6c5e72db2366b824befd6c0249ff8404f1766032d75a6df8

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