Skip to main content

RTM API wrapper

Project description

codecov PyPI version

Python wrapper for "Remember the Milk" API

  • Asynchronous and synchronous APIs
  • Subscription support

Usage of client

from rtmilk.client import Client
from rtmmilk.models import RTMError

# These are the equivalent objects, created differently
client = Client.Create(API_KEY, SHARED_SECRET, TOKEN)
client2 = await Client.CreateAsync(API_KEY, SHARED_SECRET, TOKEN)

try:
    task = client.Add(name='name 1')
    assert task.complete.value is False
    task.tags.Set({'tag1', 'tag2'})
    assert task.tags.value == {'tag1', 'tag2'}
    task = await client.AddAsync(name='name 2')
    await task.tags.SetAsync({'tag1', 'tag2'})
    tasks = client2.Get('name:"name 1"')
    assert tasks[0].tags.value == {'tag1', 'tag2'}
except RTMError as e:
    print(e)

Usage of API functions directly

from rtmilk.api_sync import API
from rtmmilk.models import FailStat

api = API(API_KEY, SHARED_SECRET, TOKEN)

timeline = api.TimelinesCreate().timeline
result = api.TasksAdd(timeline, 'task name')
if isinstance(result, FailStat):
    print(f'Error: {result}')
from rtmilk.api_async import APIAsync
from rtmmilk.models import FailStat

apiAsync = APIAsync(API_KEY, SHARED_SECRET, TOKEN)

timeline = await apiAsync.TimelinesCreate().timeline
result = await apiAsync.TasksAdd(timeline, 'task name')
if isinstance(result, FailStat):
    print(f'Error: {result}')

Authorization

from rtmilk.authorization import AuthorizationSession

authenticationSession = AuthorizationSession(API_KEY, SHARED_SECRET, 'delete')
input(f'Go to {authenticationSession.url} and authorize. Then Press ENTER')
token = authenticationSession.Done()
print(f'Authorization token is {token}')

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

rtmilk-2.0.0.tar.gz (14.7 kB view details)

Uploaded Source

Built Distribution

rtmilk-2.0.0-py3-none-any.whl (18.7 kB view details)

Uploaded Python 3

File details

Details for the file rtmilk-2.0.0.tar.gz.

File metadata

  • Download URL: rtmilk-2.0.0.tar.gz
  • Upload date:
  • Size: 14.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.2 CPython/3.12.1 Darwin/23.4.0

File hashes

Hashes for rtmilk-2.0.0.tar.gz
Algorithm Hash digest
SHA256 da130ee35e1f8f94f986dbb6e97dbf0c695c874a382ebf4663d928713e602178
MD5 f45e433def3934e56c9390221115756c
BLAKE2b-256 fe07319ae647a36a803057af04cf3662eaf1c8fad0c01a2fc44be233bb77b3a6

See more details on using hashes here.

File details

Details for the file rtmilk-2.0.0-py3-none-any.whl.

File metadata

  • Download URL: rtmilk-2.0.0-py3-none-any.whl
  • Upload date:
  • Size: 18.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.2 CPython/3.12.1 Darwin/23.4.0

File hashes

Hashes for rtmilk-2.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f36a009ea2a7861335bdf8270580afdc8ae7edf9433f43e2976e67f2654f325f
MD5 657a53e673d542a655ad525f3aa8fa07
BLAKE2b-256 a9d7c7caf2c1e5bb05671d5d8bde04c7640cb8420a1242fb9c714c1b0260e8a8

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page