Skip to main content

atlas-rfp

PyPI-downloads PyPI-version PyPI-license Supported python versions

Rationale

MIT's reimbursement system is aging. Having a high-performance, statically-typed interface to the RFP system enables higher-level financial scripts and programs to be created.

This script uses touchstone-auth, another one of my Python packages that is a Python user-agent capable of properly two-factor authenticating your scripts, without requiring a browser.

Install

This package is on Pip, so you can just:

pip install atlas-rfp

Alternatively, you can get built wheels from the Releases tab on Github.

Quickstart

To perform Touchstone authentication, we need a client-side certificate. Remember to not hard-code your credentials! The example here loads credentials from a json file called credentials.json:

{
    "certfile": "some_client_credential.p12",
    "password": "horse-battery-staple-correct"
}

Then, in your Python file, you can do the following:

import json
from touchstone_auth import TouchstoneSession

with open('credentials.json') as cred_file:
    credentials = json.load(cred_file)

with TouchstoneSession(
    base_url='https://atlas.mit.edu',
    pkcs12_filename=credentials['certfile'],
    pkcs12_pass=credentials['password'],
    cookiejar_filename='cookies.pickle') as s:

    response = s.get('https://atlas.mit.edu/atlas/Main.action')

For more examples on how to authenticate, see the touchstone-auth documentation.

Complete Examples

Developer install

If you'd like to hack locally on atlas-rfp, after cloning this repository:

$ git clone https://github.com/meson800/atlas-rfp.git
$ cd git

you can create a local virtual environment, and install atlas-rfp in "development mode"

$ python -m venv env
$ .\env\Scripts\activate    (on Windows)
$ source env/bin/activate   (on Mac/Linux)
$ pip install -e .

After this 'local install', you can use and import atlas-rfp freely without having to re-install after each update.

Changelog

See the CHANGELOG for detailed changes.

## [0.1.8] - 2023-09-10
### Changed
- Added Pydantic field serializers for Money type

License

This is licensed by the MIT license. Use freely!

Metadata

Release files for atlas-rfp 0.1.8

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for atlas-rfp 0.1.8
File Size Uploaded Provenance
atlas-rfp-0.1.8.tar.gz 13.3 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for atlas-rfp 0.1.8
File Interpreter ABI Platform
atlas_rfp-0.1.8-py3-none-any.whl Python 3 none any Details

Total release size: 25.3 kB

Release files / atlas-rfp-0.1.8.tar.gz

Download URL atlas-rfp-0.1.8.tar.gz
Size 13.3 kB
Tags Source
SHA-256 checksum
How to use checksums
5b41db76a2745aab34da6d80e520db2c15677b9614556649ee1ad1c4a096543e
BLAKE2b-256 checksum
How to use checksums
39a61ba68a286e69504f06131a8c1c49ad6b9fdf46d9e5a4c3c388a24f707c1d
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.11.5

Release files / atlas_rfp-0.1.8-py3-none-any.whl

Download URL atlas_rfp-0.1.8-py3-none-any.whl
Size 12.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
6749972f7e45d631ea335d736a846cbd65eb71c6c4b81b014e9b57542849231e
BLAKE2b-256 checksum
How to use checksums
5275b4e54d7dac81ae6dc9587f7e6aebe3cbd2432bddcd3584b2be2a07253184
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.11.5

Security for atlas-rfp 0.1.8

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page