Getting Started with connectapi
Cole Arendt
2024-11-13
Source:vignettes/getting-started.Rmd
getting-started.Rmd
Connecting
The first thing that you need to accomplish when using the
connectapi
is getting connected to your Posit Connect
server. This requires the URL to your server and an API key. Directions
on how to get an API key are here.
Once you have your API key, you can create a Connect object in your code, like so:
library(connectapi)
client <- connect(
server = "http://example.com:3939",
api_key = "aihgaahegiahgg"
)
The alternative is to define a .Renviron
file, which
specifies environment variables:
CONNECT_SERVER=http://example.com:3939
CONNECT_API_KEY=aihgaahegiahgg
Then, those can be used in your code:
library(connectapi)
# this happens by default if you restart your R session
readRenviron(".Renviron")
client <- connect()
Content Management
The connectapi
package has tools to help
programmatically deploy and manage content. To get started, you need to
use the rsconnect
package, specifically the
rsconnect::writeManifest()
function, to build a
manifest.json
file for a directory of content that you want
to deploy.
Once the manifest.json
file is present, you can
reference the directory and deploy it directly:
bnd <- bundle_dir("./my/directory")
# name must be unique on the server
# if you do not specify it, a random value will be provided
content_1 <- client %>%
deploy(bnd, name = "my-content", title = "Amazing Report!!")
The content object (content_1
) includes information
about the deployment that you just requested. This can be explored
with:
Alternatively, you can immediately begin altering the settings of the content object while you wait for deployment to complete:
content_1 %>%
set_thumbnail("https://gph.is/29vyb0s") %>%
set_vanity_url("/my_clever_content")
# ensure the vanity URL is set as expected
content_1 %>%
get_vanity_url()
If you have content that already exists and you want to update it, you can do so using the content GUID (which you can find within Posit Connect in the Info pane).
You can also use the Posit Connect content GUID to retrieve information about existing content (if you want to examine or change settings)
content_3 <- client %>%
content_item(guid = "96532fbc-725e-441b-9cc6-a5622535241b")