Oneleet APIoneleet.com ↗
Access all published posts from the Oneleet security and compliance blog. Retrieve titles, authors, categories, excerpts, cover images, and URLs in one request.
What is the Oneleet API?
The Oneleet Blog API exposes a single endpoint, list_posts, that returns every published article from the Oneleet security and compliance blog in one request. Each post object includes 7 fields: slug, title, category, excerpt, author, URL, and cover image URL. Results arrive sorted newest-first along with a total count, making it straightforward to index or mirror Oneleet's editorial content on compliance, penetration testing, and information security.
No input parameters required.
curl -X GET 'https://api.parse.bot/scraper/4cd457d0-d2fe-4439-9bfd-5510b39a2136/list_posts' \ -H 'X-API-Key: $PARSE_API_KEY'
Typed, relational, agent-ready
A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.
- Fully typed · autocompletes
- Objects link to objects
- Typed errors & pagination
Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:
uv add parse-sdk uv run parse init uv run parse add --marketplace oneleet-com-api
uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.
"""Walkthrough: oneleet SDK — bounded, re-runnable; every call capped."""
from parse_apis.oneleet_com_api import Oneleet, ParseError
client = Oneleet()
# List all blog posts (single-page, fetched in one request)
for post in client.posts.list(limit=3):
print(post.title, post.category, post.author)
# Take one post and inspect its details
post = client.posts.list(limit=1).first()
if post:
print(post.slug, post.url, post.image_url)
# Typed error handling
try:
for p in client.posts.list(limit=1):
print(p.title, p.excerpt)
except ParseError as e:
print(f"error: {e}")
print("exercised: posts.list")
Retrieve all blog posts from the Oneleet blog. Returns every published post with title, category, excerpt, author, URL, and cover image. Results are returned in display order (newest first). All posts are fetched in a single request.
No input parameters required.
{
"type": "object",
"fields": {
"posts": "array of blog post objects with slug, title, category, excerpt, author, url, and image_url",
"total": "total number of posts returned"
},
"sample": {
"data": {
"posts": [
{
"url": "https://www.oneleet.com/blog/announcing-our-s-33m-series-a",
"slug": "announcing-our-s-33m-series-a",
"title": "Oneleet Raises $33M Series A to End Compliance Theater",
"author": "Bryan Onel",
"excerpt": "We're consolidating security tooling into one platform and ending compliance theater.",
"category": "Announcement",
"image_url": "https://framerusercontent.com/images/cQxK65X0xZxIHAh5xbQixKLaxE.jpg?scale-down-to=512&width=3600&height=1890"
}
],
"total": 27
},
"status": "success"
}
}About the Oneleet API
What the API Returns
The list_posts endpoint returns an array of post objects under the posts key, accompanied by a total integer indicating how many posts were returned. Each object in the array carries a slug (URL-safe identifier), title, category label, excerpt (short summary text), author name, url (full canonical link to the post), and image_url (cover image). No query parameters are required or accepted — a single GET request retrieves the full published catalog.
Data Coverage
Content is scoped to Oneleet's blog, which covers topics such as SOC 2 compliance, penetration testing, security automation, and startup security practices. Categories are provided as plain strings attached to each post, so you can filter or group posts client-side by topic. The excerpt field gives enough context to display summaries without fetching full article bodies.
Response Behavior
All posts are returned in display order (newest first) within a single response — there is no pagination and no cursor. The total field confirms how many items are in the posts array, which is useful for detecting additions when polling periodically. Because the endpoint takes no inputs, caching the response and diffing on total or slug values is the typical pattern for tracking new content.
The Oneleet API is a managed, monitored endpoint for oneleet.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when oneleet.com changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.
This isn't an official oneleet.com API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.
Will this API break when the source site changes?+
Is this an official API from the source site?+
Can I fix or extend this API myself if I need a new endpoint or field?+
What happens if I call an endpoint that has an issue?+
- Build a content aggregator that surfaces new Oneleet articles on SOC 2 and security compliance as they are published.
- Populate a security knowledge base by indexing post titles, excerpts, and URLs from the Oneleet blog.
- Drive a newsletter digest by pulling the latest posts sorted newest-first and extracting author and excerpt fields.
- Create a compliance research tool that groups Oneleet articles by category for topic-specific browsing.
- Mirror Oneleet blog cover images and titles in a curated security resource feed using the image_url and url fields.
- Track publication cadence and content growth over time by comparing the total field across periodic requests.
| Tier | Price | Credits/month | Rate limit |
|---|---|---|---|
| Free | $0/mo | 100 | 5 req/min |
| Hobby | $30/mo | 1,000 | 20 req/min |
| Developer | $100/mo | 5,000 | 100 req/min |
One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.