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.0
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.0.tar.gz | 1.2 MB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| dailydotsnek-1.2.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 1.2 MB
Release files / dailydotsnek-1.2.0.tar.gz
| Download URL | dailydotsnek-1.2.0.tar.gz |
|---|---|
| Size | 1.2 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
1f478d1773199df33790210ed13c21126491fd50ea91a8fb5304bacfecef74f7
|
|
BLAKE2b-256 checksum How to use checksums |
3722845ccf61f2498486e44045e2b5181ad46ed20f65b00029acad4a8d6a7c8a
|
| 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.0-py3-none-any.whl
| Download URL | dailydotsnek-1.2.0-py3-none-any.whl |
|---|---|
| Size | 5.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
13555c186cca06e3a422b522d1e23eb664eb13f97ed7a627f3797d5c2568c140
|
|
BLAKE2b-256 checksum How to use checksums |
923770bc83bd67bd88589ee9b79edb91b089e828f77a7798a85d3b8ee51b6c7d
|
| 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.0
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.