Metadata-Version: 2.3
Name: solcast
Version: 1.2.4
Summary: a simple Python SDK for the Solcast API
Project-URL: Homepage, https://pypi.org/project/solcast/
Project-URL: Documentation, https://solcast.github.io/solcast-api-python-sdk
Project-URL: Repository, https://github.com/Solcast/solcast-api-python-sdk
License-Expression: Apache-2.0
License-File: LICENSE
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Information Technology
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Topic :: Internet
Classifier: Topic :: Scientific/Engineering
Classifier: Topic :: Software Development
Classifier: Topic :: Software Development :: Libraries
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Typing :: Typed
Requires-Python: >=3.7
Provides-Extra: all
Requires-Dist: black; extra == 'all'
Requires-Dist: kaleido; extra == 'all'
Requires-Dist: matplotlib; extra == 'all'
Requires-Dist: mkdocs; extra == 'all'
Requires-Dist: mkdocs-jupyter; extra == 'all'
Requires-Dist: mkdocs-material; extra == 'all'
Requires-Dist: mkdocstrings[python]==0.22; extra == 'all'
Requires-Dist: notebook; extra == 'all'
Requires-Dist: pandas; extra == 'all'
Requires-Dist: pytest; extra == 'all'
Provides-Extra: docs
Requires-Dist: kaleido; extra == 'docs'
Requires-Dist: mkdocs; extra == 'docs'
Requires-Dist: mkdocs-jupyter; extra == 'docs'
Requires-Dist: mkdocs-material; extra == 'docs'
Requires-Dist: mkdocstrings[python]==0.22; extra == 'docs'
Requires-Dist: pytest; extra == 'docs'
Description-Content-Type: text/markdown

<img src="https://github.com/Solcast/solcast-api-python-sdk/blob/main/docs/img/logo.png?raw=true" width="100" align="right">

# Solcast API Python SDK

<em>Python SDK to access the Solcast API</em>

[![Docs](https://github.com/Solcast/solcast-api-python-sdk/actions/workflows/docs.yml/badge.svg)](https://github.com/Solcast/solcast-api-python-sdk/actions/workflows/docs.yml) [![Tests](https://github.com/Solcast/solcast-api-python-sdk/actions/workflows/test.yml/badge.svg)](https://github.com/Solcast/solcast-api-python-sdk/actions/workflows/test.yml) [![Publish 📦 to PyPI](https://github.com/Solcast/solcast-api-python-sdk/actions/workflows/publish-to-pypi.yml/badge.svg)](https://github.com/Solcast/solcast-api-python-sdk/actions/workflows/publish-to-pypi.yml)

---

**Documentation**: <a href="https://solcast.github.io/solcast-api-python-sdk/" target="_blank">https://solcast.github.io/solcast-api-python-sdk/ </a>

## Install
```commandline
pip install solcast
```
or from source: 
```commandline
git clone https://github.com/Solcast/solcast-api-python-sdk.git
cd solcast-api-python-sdk
pip install .
```

The vanilla version doesn't have any dependency. For full functionality,
for example for getting the data into `DataFrames`, and for development, use the `[all]` tag: 
```commandline
pip install .[all] for the dev libs
```

## Basic Usage

```python
from solcast import live

df = live.radiation_and_weather(
    latitude=-33.856784,
    longitude=151.215297,
    output_parameters=['air_temp', 'dni', 'ghi']
).to_pandas()
```

Don't forget to set your [account Api Key](https://toolkit.solcast.com.au/register) with: 
```export SOLCAST_API_KEY={your commercial api_key}```

---

## Contributing
Tests are run against the Solcast API, you will need an API key to run them. 
They are executed on `unmetered locations` and as such won't consume your requests.

```commandline
pytest tests
```
