R6 Class representing the apps resource endpoint.
Super class
sevenbridges2::Resource
-> Apps
Methods
Inherited methods
Method query()
This call lists all the apps available to you.
Arguments
project
Project ID string in the form
<project_owner>/<project_short_name>
or<division_name>/<project_short_name>
or Project object,
to restrict the results to apps from that project only.visibility
Set this to
public
to see all public apps on the Seven Bridges Platform.query_terms
A list of search terms used to filter apps based on their details. Each term is case-insensitive and can relate to the app's name, label, toolkit, toolkit version, category, tagline, or description. You can provide a single term (e.g.,
list("Compressor")
) or multiple terms (e.g.,list("Expression", "Abundance")
) to search for apps that match all the specified terms. If a term matches any part of the app's details, the app will be included in the results. Search terms can also include phrases (e.g.,list("Abundance estimates input")
), which will search for exact matches within app descriptions or other fields.id
Use this parameter to query apps based on their ID.
limit
The maximum number of collection items to return for a single request. Minimum value is
1
. The maximum value is100
and the default value is50
. This is a pagination-specific attribute.offset
The zero-based starting index in the entire collection of the first item to return. The default value is
0
. This is a pagination-specific attribute.fields
Selector specifying a subset of fields to include in the response. For querying apps, it is set to return all fields except 'raw' which stores CWL as a list. Be cautious when requesting all fields, as this API request may take a long time to execute.
...
Other arguments that can be passed to core
api()
function.
Returns
Collection
containing App
objects.
Method get()
This call returns information about the specified app.
The app must be in a project you can access. It could be an app
uploaded to the Seven Bridges Platform by a project member or a public
app copied into the project.
You can find more details about this operation in our
API documentation.
Arguments
id
The full
<project_id>/<app_short_name>
path for this API call is known as App ID. You can also get the App ID for an app by making the call to list all apps available to you.revision
The number of the app revision you want to get.
...
Other arguments that can be passed to core
api()
function like 'fields', etc.
Returns
App
object.
Method copy()
This call copies the specified app to the specified project. The app must be in a project you can access. It could be an app uploaded to the Seven Bridges Platform by a project member or a public app copied into the project.
Usage
Apps$copy(
app,
project,
name = NULL,
strategy = c("clone", "direct", "clone_direct", "transient"),
...
)
Arguments
app
App object or the short name of the app you are copying. Optionally, to copy a specific revision of the app, use the
<app_short_name>/<revision_number>
format, for examplerfranklin/my-project/bamtools-index-2-4-0/1
project
The Project object or project ID you want to copy the app to.
name
The new name the app will have in the target project. If its name will not change, omit this key.
strategy
The method for copying the app. Can be one of:
clone
: copy all revisions; get updates from the same app as the copied app (default);direct
: copy latest revision; get updates from the copied app;clone_direct
: copy all revisions; get updates from the copied app;transient
: copy latest revision; get updates from the same app as the copied app.
Read more about the strategies here.
...
Other arguments that can be passed to core
api()
function like 'fields', etc.
Returns
Copied App
object.
Method create()
This call allows you to add an app using raw CWL.
Usage
Apps$create(
raw = NULL,
from_path = NULL,
project,
name,
raw_format = c("JSON", "YAML"),
...
)
Arguments
raw
The body of the request should be a CWL app description saved as a
JSON
orYAML
file. For a template of this description, try making the call to get raw CWL for an app about an app already in one of your projects. Shouldn't be used together withfrom_path
parameter.from_path
File containing CWL app description. Shouldn't be used together with raw parameter.
project
String project ID or Project object in which you want to store the app.
name
A short name for the app (without any non-alphanumeric characters or spaces)
raw_format
The type of format used (
JSON
orYAML
)....
Other arguments that can be passed to core
api()
function like 'fields', etc.
Returns
App
object.
Examples
## ------------------------------------------------
## Method `Apps$query`
## ------------------------------------------------
if (FALSE) { # \dontrun{
apps_object <- Apps$new(
auth = auth
)
# List public apps
apps_object$query(visibility = "public")
} # }
## ------------------------------------------------
## Method `Apps$get`
## ------------------------------------------------
if (FALSE) { # \dontrun{
apps_object <- Apps$new(
auth = auth
)
# Get app object
apps_object$get(id = "<some_id>")
} # }
## ------------------------------------------------
## Method `Apps$copy`
## ------------------------------------------------
if (FALSE) { # \dontrun{
apps_object <- Apps$new(
auth = auth
)
# Copy app object to a project
apps_object$copy(app = app, project = project)
} # }
## ------------------------------------------------
## Method `Apps$create`
## ------------------------------------------------
if (FALSE) { # \dontrun{
apps_object <- Apps$new(
auth = auth
)
# Create new app object
apps_object$create(
raw = raw,
project = project,
name = name,
raw_format = "YAML"
)
} # }