Discourse API R client
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
R
man-roxygen
man
tests
.Rbuildignore
.gitignore
.travis.yml
CODE_OF_CONDUCT.md
DESCRIPTION
LICENSE
NAMESPACE
NEWS.md
README.Rmd
README.md
cran-comments.md
discgolf.Rproj

README.md

discgolf

cran checks Build Status codecov.io rstudio mirror downloads cran version

discgolf is an R client for the Discourse API, based off the Ruby gem discourse_api

Discourse API docs: http://docs.discourse.org

Installation

CRAN version

install.packages("discgolf")

Development version

install.packages("devtools")
devtools::install_github("sckott/discgolf")
library("discgolf")

Authentication

The Discourse API is based on using a specific installation of Discourse, which requires your username and an API key for that installation. Get those, and you can pass them in to each function call, or set as option variables in .Rprofile (use discourse_api_key and discourse_username) or environment variables in .Renviron (use DISCOURSE_API_KEY and DISCOURSE_USERNAME).

Get latest topics

topics_latest()
topics_latest()$topic_list$topics[,c(1:5)]

Get new topics

topics_new()

Get topics by a specific user

topics_by("cboettig")

Get a single topic by id number

topic(8)
topic(8)$post_stream$posts[,c(1:5)]

Get a post

post_get(90)

create post, create topic first

topic_create("The problem with blue skies", text = "just saying and all that")
post_create(topic_id = 13, text = "There isn't a problem!")

Wikify a post

post_wikify(x$post_stream$posts$id[4])

Search

dg_search(query = "poo")
dg_search(posts_count = 1)
dg_search(in_ = "posted")
dg_search(status = "open")

list a user

user('sckott')
user('cboettig')

list users

users_list('staff')
users_list('new')

create a user

(x <- user_create("jane doe", "jane@doe.com", "jane_doe", "afafasfdasdf"))

activate a user

user_activate(x$user_id)

upate email address

user_update_email('jane_doe', 'jane2@doe.com')

upate user name

user_update_username('jane_doe', 'jane_doe2')

delete a user

user_delete(x$user_id)

Meta

  • Please note that this project is released with a Contributor Code of Conduct. By participating in this project you agree to abide by its terms.