just/mocks_
mockzilla.org →
Catalog /dev-tools /DEV.to Forem API

DEV.to Forem API

PROVIDER · DEV.to SPEC v1.0.0 · OpenAPI 3.0.3 MOCK · LIVE
▸ TRY IT
https://api.justmocks.com/dev-to
Open mock →

Mock the DEV.to Forem API to build article browsers, user dashboards, and content-curation tools without hitting the live DEV community.

[01]

About

overview

Mock 40 endpoints of the Forem API that powers DEV.to: articles, users, tags, comments, organizations, listings, podcast episodes, and webhooks. Useful for testing reader clients, content-import jobs, or any integration that pulls from a Forem instance.

Endpoints
40 across 14 resource groups
Methods
GET 26 · POST 6 · PUT 7 · DEL 1 none deprecated
OpenAPI
3.0.3 spec version 1.0.0
Source spec
98 KB · YAML
[02]

Endpoints

40 operations · 14 resource groups
POST /api/admin/users
users
Invite a User
This endpoint allows the client to trigger an invitation to the provided email address. It requires a token from a user with super_admin privileges. Mocked via Mockzilla.
GET /api/articles
articles
Published articles
This endpoint allows the client to retrieve a list of articles. "Articles" are all the posts that users create on DEV that typically show up in the feed. They can be a blog post, a discussion question, a help thread etc. but is referred to as article within the code. By default it will return featured, published articles ordered by descending popularity. It supports pagination, each page will contain 30 articles by default.
POST /api/articles
articles
Publish article
This endpoint allows the client to create a new article. "Articles" are all the posts that users create on DEV that typically show up in the feed. They can be a blog post, a discussion question, a help thread etc. but is referred to as article within the code.
GET /api/articles/latest
articles
Published articles sorted by published date
This endpoint allows the client to retrieve a list of articles. ordered by descending publish date. It supports pagination, each page will contain 30 articles by default.
GET /api/articles/me
articlesusers
User's articles
This endpoint allows the client to retrieve a list of published articles on behalf of an authenticated user. "Articles" are all the posts that users create on DEV that typically show up in the feed. They can be a blog post, a discussion question, a help thread etc. but is referred to as article within the code. Published articles will be in reverse chronological publication order. It will return published articles with pagination. By default a page will contain 30 articles.
GET /api/articles/me/all
articlesusers
User's all articles
This endpoint allows the client to retrieve a list of all articles on behalf of an authenticated user. "Articles" are all the posts that users create on DEV that typically show up in the feed. They can be a blog post, a discussion question, a help thread etc. but is referred to as article within the code. It will return both published and unpublished articles with pagination. Unpublished articles will be at the top of the list in reverse chronological creation order. Published articles will follow in reverse chronological publication order. By default a page will contain 30 articles. Available as a Mockzilla mock endpoint.
GET /api/articles/me/published
articlesusers
User's published articles
This endpoint allows the client to retrieve a list of published articles on behalf of an authenticated user. "Articles" are all the posts that users create on DEV that typically show up in the feed. They can be a blog post, a discussion question, a help thread etc. but is referred to as article within the code. Published articles will be in reverse chronological publication order. It will return published articles with pagination. By default a page will contain 30 articles.
GET /api/articles/me/unpublished
articlesusers
User's unpublished articles
This endpoint allows the client to retrieve a list of unpublished articles on behalf of an authenticated user. "Articles" are all the posts that users create on DEV that typically show up in the feed. They can be a blog post, a discussion question, a help thread etc. but is referred to as article within the code. Unpublished articles will be in reverse chronological creation order. It will return unpublished articles with pagination. By default a page will contain 30 articles.
GET /api/articles/{id}
articles
Published article by id
This endpoint allows the client to retrieve a single published article given its id.
PUT /api/articles/{id}
articles
Update an article by id
This endpoint allows the client to update an existing article. "Articles" are all the posts that users create on DEV that typically show up in the feed. They can be a blog post, a discussion question, a help thread etc. but is referred to as article within the code.
PUT /api/articles/{id}/unpublish
articles
Unpublish an article
This endpoint allows the client to unpublish an article. The user associated with the API key must have any 'admin' or 'moderator' role. The article will be unpublished and will no longer be visible to the public. It will remain in the database and will set back to draft status on the author's posts dashboard. Any notifications associated with the article will be deleted. Any comments on the article will remain. Mockzilla mock: no signup, no API key.
GET /api/articles/{username}/{slug}
articles
Published article by path
This endpoint allows the client to retrieve a single published article given its path.
GET /api/comments
comments
Comments
This endpoint allows the client to retrieve all comments belonging to an article or podcast episode as threaded conversations. It will return the all top level comments with their nested comments as threads. See the format specification for further details.
GET /api/comments/{id}
comments
Comment by id
This endpoint allows the client to retrieve a comment as well as his descendants comments. It will return the required comment (the root) with its nested descendants as a thread. See the format specification for further details.
GET /api/display_ads
display ads
display ads
This endpoint allows the client to retrieve a list of all display ads.
POST /api/display_ads
display ads
display ads
This endpoint allows the client to create a new display ad. Served by the Mockzilla mock runtime.
GET /api/display_ads/{id}
display ads
display ad
This endpoint allows the client to retrieve a single display ad, via its id.
PUT /api/display_ads/{id}
display ads
display ads
This endpoint allows the client to update the attributes of a single display ad, via its id.
PUT /api/display_ads/{id}/unpublish
display ads
unpublish
This endpoint allows the client to remove a display ad from rotation by un-publishing it.
GET /api/followers/users
followers
Followers
This endpoint allows the client to retrieve a list of the followers they have. "Followers" are users that are following other users on the website. It supports pagination, each page will contain 80 followers by default.
GET /api/follows/tags
followed_tagstags
Followed Tags
This endpoint allows the client to retrieve a list of the tags they follow. Mocked via Mockzilla.
GET /api/organizations/{username}
organizations
An organization
This endpoint allows the client to retrieve a single organization by their username
GET /api/organizations/{username}/articles
organizationsarticles
Organization's Articles
This endpoint allows the client to retrieve a list of Articles belonging to the organization It supports pagination, each page will contain 30 users by default.
GET /api/organizations/{username}/users
organizationsusers
Organization's users
This endpoint allows the client to retrieve a list of users belonging to the organization It supports pagination, each page will contain 30 users by default.
GET /api/pages
pages
show details for all pages
This endpoint allows the client to retrieve details for all Page objects.
POST /api/pages
pages
pages
This endpoint allows the client to create a new page. Available as a Mockzilla mock endpoint.
DEL /api/pages/{id}
pages
remove a page
This endpoint allows the client to delete a single Page object, specified by ID.
GET /api/pages/{id}
pages
show details for a page
This endpoint allows the client to retrieve details for a single Page object, specified by ID.
PUT /api/pages/{id}
pages
update details for a page
This endpoint allows the client to retrieve details for a single Page object, specified by ID.
GET /api/podcast_episodes
podcast_episodes
Podcast Episodes
This endpoint allows the client to retrieve a list of podcast episodes. "Podcast episodes" are episodes belonging to podcasts. It will only return active (reachable) podcast episodes that belong to published podcasts available on the platform, ordered by descending publication date. It supports pagination, each page will contain 30 articles by default.
GET /api/profile_images/{username}
profile images
A Users or organizations profile image
This endpoint allows the client to retrieve a user or organization profile image information by its corresponding username. Mockzilla mock: no signup, no API key.
POST /api/reactions
reactions
create reaction
This endpoint allows the client to create a reaction to a specified reactable (eg, Article, Comment, or User). For examples: "Like"ing an Article will create a new "like" Reaction from the user for that Articles "Like"ing that Article a second time will return the previous "like"
POST /api/reactions/toggle
reactions
toggle reaction
This endpoint allows the client to toggle the user's reaction to a specified reactable (eg, Article, Comment, or User). For examples: "Like"ing an Article will create a new "like" Reaction from the user for that Articles "Like"ing that Article a second time will remove the "like" from the user
GET /api/readinglist
readinglist
Readinglist
This endpoint allows the client to retrieve a list of articles that were saved to a Users readinglist. It supports pagination, each page will contain 30 articles by default
GET /api/tags
tags
Tags
This endpoint allows the client to retrieve a list of tags that can be used to tag articles. It will return tags ordered by popularity. It supports pagination, each page will contain 10 tags by default.
GET /api/users/me
users
The authenticated user
This endpoint allows the client to retrieve information about the authenticated user. Served by the Mockzilla mock runtime.
GET /api/users/{id}
users
A User
This endpoint allows the client to retrieve a single user, either by id or by the user's username. For complete documentation, see the v0 API docs: https://developers.forem.com/api/v0#tag/users/operation/getUser
PUT /api/users/{id}/suspend
users
Suspend a User
This endpoint allows the client to suspend a user. The user associated with the API key must have any 'admin' or 'moderator' role. This specified user will be assigned the 'suspended' role. Suspending a user will stop the user from posting new posts and comments. It doesn't delete any of the user's content, just prevents them from creating new content while suspended. Users are not notified of their suspension in the UI, so if you want them to know about this, you must notify them.
PUT /api/users/{id}/unpublish
users
Unpublish a User's Articles and Comments
This endpoint allows the client to unpublish all of the articles and comments created by a user. The user associated with the API key must have any 'admin' or 'moderator' role. This specified user's articles and comments will be unpublished and will no longer be visible to the public. They will remain in the database and will set back to draft status on the specified user's dashboard. Any notifications associated with the specified user's articles and comments will be deleted. Note this endpoint unpublishes articles and comments asychronously: it will return a 204 NO CONTENT status code immediately, but the articles and comments will not be unpublished until the request is completed on the server.
GET /api/videos
videosarticles
Articles with a video
This endpoint allows the client to retrieve a list of articles that are uploaded with a video. It will only return published video articles ordered by descending popularity. It supports pagination, each page will contain 24 articles by default.