---
name: "strut"
section: "1p"
platform: "linux"
package: "libsocialtext-resting-perl"
version: "0.38-1"
release: "Debian 7 (Wheezy)"
platforms: ["linux"]
url: "https://new.carta.tech/strut"
---

# strut(1p)

command line interface (using Socialtext::Resting) to the Socialtext REST services

## NAME

strut - command line interface (using Socialtext::Resting) to the  Socialtext REST services

## SYNOPSIS

```
   strut help
   strut configure

   strut list_workspaces
   strut list_pages <workspace>
   strut get_page <workspace> <pagename>
   strut set_page <workspace> <pagename> <filename>
   strut list_tags <workspace> <pagename>
   strut put_tag <workspace> <pagename> <tag>
   strut set_tags <workspace> <pagename> <tags>
   strut list_tagged_pages <workspace> <tag>
   strut list_attachments <workspace> <pagename>
   strut get_attachment <workspace> <pagename> <attachment>
   strut add_attachment <workspace> <pagename> <filename>
   strut show_breadcrumbs <workspace>
   strut show_backlinks <workspace> <pagename>
   strut show_frontlinks <workspace> <pagename>
   All list operations can further be controlled with the following operations:
   --query (search term for within the results)
   --filter (filter the titles of the results)
   --order (only accepts 'newest' right now)
   --count (restrict number of returned results)
   --accept (for your accept headers - text/html, text/plain, application/json)
   Example:
     strut --query=searchterm --filter=titlefilter --order=newest --count=number list_pages myworkspace
```

## COMMANDS

The following commands are supported

### help

Standard man page for this program

### configure

Configure strut with username, password, and server information.  See the CONFIGURATION section below for a discussion of your configuration options.

### show\_breadcrumbs

Get the breadcrumbs for the current user in this workspace.

### list\_workspaces

Give a list of all workspaces on the server

### list\_workspace\_tags \<workspace\>

List the tags for a workspace.

### list\_pages \<workspace\>

Give a list of all pages in the given workspace.  If no workspace is given you will be prompted to pick from available workspaces.

### list\_tagged\_pages \<workspace\>

Give a list of all pages in the given workspace with the given tag.

### get\_page \<workspace\> \<page\_name\>

Retrieve the contents of the specified page.  If no workspace or page are given the user will be prompted to select from the available workspaces/pages.

### set\_page \<workspace\> \<page\_name\> \<filename\>

Save the specified page on the system.

### add\_attachment \<workspace\> \<page\_name\> \<filename\>

Add the attachment to the specified page on the system.

### list\_attachments \<workspace\> \<page\_name\>

List all attachments on the specified page.

### list\_pagetags \<workspace\> \<page\_name\>

List all tags on the specified page.

### show\_backlinks \<workspace\> \<page\_name\>

Show backlinks to the specified page name.

### show\_frontlinks \<workspace\> \<page\_name\>

Show frontlinks to the specified page name.

### put\_tag \<workspace\> \<page\_name\> \<tag\>

Add the specified tag to the specified page name.

### set\_tags \<workspace\> \<page\_name\> \<tags\>

Set the tags for the specified page name.

## CONFIGURATION

In order to run correctly, strut needs to have a username,  password, and server name.  This can be configured in one  of several ways:

### Command line:

```
    strut --username <username> --password <password> --server <server>
```

### Environment variables:

```
    STRUT_USERNAME
    STRUT_PASSWORD
    STRUT_SERVER
```

### Configuration file:

```
    ~/.app/strut.conf
```

If strut can't determine your username/password/server, it will call the 'configure' subcommand to create a configuration file for you.

## AUTHORS

```
    <chris.dent@socialtext.com>
    <kirsten.jones@socialtext.com>
```
