dailydotsnek
A small, friendly Python client for the daily.dev public API.
Feeds, posts, bookmarks, profile tools, and search — with rate-limit-aware GET retries.
Get started
python -m pip install dailydotsnek
The SDK requires Python 3.10 or later. It installs its HTTP and .env dependencies automatically.
Your first request
Create a .env file in your project directory:
DAILY_DEV_KEY=your_daily_dev_api_token
Keep this file private: do not commit API tokens to source control.
from snek.snekSDK import SnekSDK
from snek.tokenSys import AutoApiToken
client = SnekSDK(AutoApiToken())
popular_posts = client.getPopularFeed()
print(popular_posts)
print("Remaining requests:", client.getRateRemaining())
Prefer explicit secret management? Pass the token directly:
from snek.snekSDK import SnekSDK
from snek.tokenSys import ManualApiToken
client = SnekSDK(ManualApiToken("your_daily_dev_api_token"))
Rate limits, handled thoughtfully
When daily.dev returns HTTP 429 Too Many Requests, the SDK automatically waits for the server's Retry-After value and retries GET requests up to three times. If the header is missing or invalid, it uses a short exponential delay. It does not automatically replay POST, PUT, PATCH, or DELETE requests, so a write is never silently duplicated.
If a request still cannot proceed, the SDK raises RateLimitError, a requests.HTTPError subclass. It includes the original response and a suggested retry_after wait:
from snek.rawFetch import RateLimitError
try:
posts = client.getPopularFeed()
except RateLimitError as error:
print(f"Rate limit reached. Try again in {error.retry_after} seconds.")
Rate-limit helpers report headers from the most recent API response. They return None before the first request or when that response did not include the requested header.
What’s included
| Area | Examples |
|---|---|
| Feeds | Personalized, popular, discussed, tag, and source feeds |
| Posts | Retrieve posts and their comments |
| Search | Search posts, tags, and sources |
| Bookmarks | Manage bookmarks and bookmark lists |
| Profile | Read and update your profile, stack, and experiences |
| API utilities | Tags, keyword recommendations, rate-limit headers |
Documentation
Explore the full documentation, including the installation guide, quickstart and error handling, API reference, and publishing guide.
To preview the documentation site locally:
python -m pip install mkdocs-material
python -m mkdocs serve
Metadata
Release files for dailydotsnek 1.2.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| dailydotsnek-1.2.1.tar.gz | 1.2 MB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| dailydotsnek-1.2.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 1.2 MB
Release files / dailydotsnek-1.2.1.tar.gz
| Download URL | dailydotsnek-1.2.1.tar.gz |
|---|---|
| Size | 1.2 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
8beb78cd58aa4f1c0f373316eb6f723ade14e092459fde33d1e86bcdd291143d
|
|
BLAKE2b-256 checksum How to use checksums |
4c367da4d30730dd8830ea5d4b52073cc4e3ff8cf1f03a38bdaac9f3cf7a593b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.7
|
Release files / dailydotsnek-1.2.1-py3-none-any.whl
| Download URL | dailydotsnek-1.2.1-py3-none-any.whl |
|---|---|
| Size | 6.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
d640b191cf31a8eaf1ebe351b2daad8732f4082fd2e099276df1ce7312244276
|
|
BLAKE2b-256 checksum How to use checksums |
5580767629cc511c36d56cb67188193d254d0feb0c17b9610728c1e32ae34f0c
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.14.7
|
Security for dailydotsnek 1.2.1
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.