Skip to main content

Guides

Create, edit, delete and list guides and guide steps

GET /guides

Returns a list of all public guides, sorted by guideid.

GET /guides/{guideid}

Returns a comprehensive list of attributes about a guide.

GET /guides/{guideid}/tags

Get all tags on a guide

POST /guides

Create a new guide

PATCH /guides/{guideid}

Updates only the provided fields of an existing guide.

DELETE /guides/{guideid}

Permanently delete a guide

POST /guides/{guideid}/{langid}/restore

Restore a deleted guide. Only admins can restore deleted guides.

PUT /guides/{guideid}/completed

Mark a guide as completed for the currently authenticated user. This action gives reputation to the primary author of this guide. This action can only be performed once per guide and is rate limited to prevent spamming.

DELETE /guides/{guideid}/completed

Uncomplete a previously completed guide.

PUT /guides/{guideid}/public

Make a guide public

DELETE /guides/{guideid}/public

Make a guide private

POST /guides/{guideid}/steps

Add a step to an existing guide.

PATCH /guides/{guideid}/steps/{stepid}

Edit a guide step

DELETE /guides/{guideid}/steps/{stepid}

Remove a guide step

PUT /guides/{guideid}/steporder

Reorder guide steps.

GET /guides/{guideid}/users

List users allowed to view a private guide.

PUT /guides/{guideid}/users/{userid}

Add a user allowed to view a private guide.

DELETE /guides/{guideid}/users/{userid}

Remove a user allowed to view a private guide.

GET /guides/{guideid}/teams

Get a list of teams that can view this guide. If a guide is private, teams added by authorized users can view the guide.

PUT /guides/{guideid}/teams/{teamid}

Add a team that is allowed to view this private guide.

DELETE /guides/{guideid}/teams/{teamid}

No longer allow a specified team to view a guide.

GET /guides/releases

Show all releases sorted by creation date.

DELETE /guides/releases/{releaseid}

Cancel a pending release. Must be author of release or have admin privileges.

GET /guides/{guideid}/releases

Show all of a guide's releases in descending publish date order. The response body includes both 'release_date' and 'publish_date'. Generally, 'release_date' can be ignored in favor of 'publish_date' which is the date the release actually became available to users. The 'release_date' is used internally when a specific date is picked at the time the release is initialized.

POST /guides/releases

Add a new release for a guide.

PATCH /guides/releases/{releaseid}

Modify an existing release for a guide.

POST /guides/duplicateReleases

Duplicates multiples guides at one time at the given release version.

PUT /guides/{guideid}/tag

Adds a tag to a guide, creating the tag if needed.

DELETE /guides/{guideid}/tag

Remove a tag from a guide.

GET /guides/{guideid}/approvalProcesses

Fetch a guide's approval processes.