Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

satellitevu

Package Overview
Dependencies
Maintainers
1
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

satellitevu

Client SDK for SatelliteVu's platform APIs

  • 5.1.0
  • PyPI
  • Socket score

Maintainers
1

SatelliteVu SDK for Python

pypi license Twitter LinkedIn

Lightweight API Client SDK for SatelliteVu's Platform APIs, providing authorization handling and convenience methods to interact with the published APIs.

Installation

The package is published to PyPi and can be installed with pip:

pip install satellitevu

Currently Python 3.8, 3.10 and 3.11 are supported.

Usage

A User API Client credential set consisting of an client id and client secret is needed and should be set in your script's environment variables.

Check out the examples provided. They can for example be run locally with

poetry run python ./examples/catalog.py --example=recent

Simple Client Usage

The easiest way to get started is to use the satellitevu.Client class, which needs a client_id and client_secret only:

import os

from satellitevu import Client


client = Client(os.getenv("CLIENT_ID"), os.getenv("CLIENT_SECRET"))
contract_id = os.getenv("CONTRACT_ID")
print(client.catalog_v1.search(contract_id=contract_id).json())

client.catalog_v1.search supports all request body parameters documented in the API docs, with special handling for datetime which is constructed from the optional date_from and date_to parameters and a default result page size limit of 25.

Authentication Handling

The satellitevu.Auth class provides the main interface to retrieve an authorization token required to interact with the API endpoints.

import os

from satellitevu import Auth


auth = Auth(client_id=os.getenv("CLIENT_ID"), client_secret=os.getenv("CLIENT_SECRET"))
print(auth.token())

Thus retrieved token can be used for bearer token authentication in HTTP request Authorization headers.

The Auth class by default uses a file based cache which will store the token in

  • ~/.cache/SatelliteVu on Linux
  • ~/Library/Caches/SatelliteVu on MacOS
  • C:\Documents and Settings\<username>\Local Settings\Application Data\SatelliteVu\Cache on Windows

Other cache implementations must implement the satellitevu.auth.cache.AbstractCache class.

HTTP Client Wrappers

Convenience wrapper classes for common HTTP client implementations are provided as implementations of satellitevu.http.AbstractClient, which provides an request method with an interface similar to requests.request and returning an satellitevu.http.ResponseWrapper instance, where the response object of the underlying implementation is available in the raw property.

Commonly used properties and methods are exposed on both AbstractClient and ResponseWrapper.

  • satellitevu.http.UrllibClient for Python standard lib's urllib
  • satellitevu.http.requests.RequestsSession using requests.Session class
  • satellitevu.http.httpx.HttpxClient using httpx.Client (Todo)

Implementations based on requests and httpx allow setting an instance of the underlying implementation, but will provide a default instance if not.

FAQs


Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc