Metadata-Version: 2.4
Name: canvas
Version: 0.44.0
Summary: SDK to customize event-driven actions in your Canvas instance
Author-email: Canvas Team <engineering@canvasmedical.com>
License-Expression: MIT
Requires-Python: <3.13,>=3.11
Requires-Dist: cookiecutter
Requires-Dist: cron-converter<2,>=1.2.1
Requires-Dist: deprecation<3,>=2.1.0
Requires-Dist: django-stubs[compatible-mypy]<6,>=5.1.1
Requires-Dist: django-timezone-utils<0.16,>=0.15.0
Requires-Dist: django<6,>=5.1.1
Requires-Dist: env-tools<3,>=2.4.0
Requires-Dist: frozendict>=2.4.6
Requires-Dist: grpcio<2,>=1.60.1
Requires-Dist: ipython<9,>=8.21.0
Requires-Dist: jsonschema<5,>=4.21.1
Requires-Dist: protobuf<5,>=4.25.3
Requires-Dist: psycopg[binary,pool]<4,>=3.2.2
Requires-Dist: pydantic<3,>=2.6.1
Requires-Dist: pyjwt==2.10.1
Requires-Dist: python-dotenv<2,>=1.0.1
Requires-Dist: rapidfuzz<4,>=3.10.1
Requires-Dist: redis<6,>=5.0.4
Requires-Dist: requests
Requires-Dist: restrictedpython>=8.0
Requires-Dist: sentry-sdk>=2.25.1
Requires-Dist: statsd<5,>=4.0.1
Requires-Dist: typer
Requires-Dist: typing-extensions<4.13,>=4.8
Requires-Dist: websocket-client<2,>=1.7.0
Description-Content-Type: text/markdown

### Getting Started

Create a file `~/.canvas/credentials.ini` and add the client_id and client_secret credentials for each of your Canvas instances. You can define your default host with `is_default=true`. If no default is explicitly defined, the Canvas CLI will use the first instance in the file as the default for each of the CLI commands.

**Example:**

```
[my-canvas-instance]
client_id=myclientid
client_secret=myclientsecret

[my-dev-canvas-instance]
client_id=devclientid
client_secret=devclientsecret
is_default=true

[localhost]
client_id=localclientid
client_secret=localclientsecret
```

Next, you're ready to install canvas.

`pip install canvas`

**Usage**:

```console
$ canvas [OPTIONS] COMMAND [ARGS]...
```

**Options**:

- `--version`
- `--help`: Show this message and exit.

**Commands**:

- `init`: Create a new plugin
- `install`: Install a plugin into a Canvas instance
- `uninstall`: Uninstall a plugin from a Canvas instance
- `disable`: Disable a plugin from a Canvas instance
- `enable`: Enable a plugin from a Canvas instance
- `list`: List all plugins from a Canvas instance
- `validate-manifest`: Validate the Canvas Manifest json file
- `logs`: Listen and print log streams from a Canvas instance

## `canvas init`

Create a new plugin.

**Usage**:

```console
$ canvas init [OPTIONS]
```

**Options**:

- `--help`: Show this message and exit.

## `canvas install`

Install a plugin into a Canvas instance.

**Usage**:

```console
$ canvas install [OPTIONS] PLUGIN_NAME
```

**Arguments**:

- `PLUGIN_NAME`: Path to plugin to install [required]

**Options**:

- `--host TEXT`: Canvas instance to connect to
- `--help`: Show this message and exit.

## `canvas uninstall`

Uninstall a plugin from a Canvas instance..

**Usage**:

```console
$ canvas uninstall [OPTIONS] NAME
```

**Arguments**:

- `NAME`: Plugin name to delete [required]

**Options**:

- `--host TEXT`: Canvas instance to connect to
- `--help`: Show this message and exit.

## `canvas enable`

Enable a plugin from a Canvas instance..

**Usage**:

```console
$ canvas enable [OPTIONS] NAME
```

**Arguments**:

- `NAME`: Plugin name to enable [required]

**Options**:

- `--host TEXT`: Canvas instance to connect to
- `--help`: Show this message and exit.

## `canvas disable`

Disable a plugin from a Canvas instance..

**Usage**:

```console
$ canvas disable [OPTIONS] NAME
```

**Arguments**:

- `NAME`: Plugin name to disable [required]

**Options**:

- `--host TEXT`: Canvas instance to connect to
- `--help`: Show this message and exit.

## `canvas list`

List all plugins from a Canvas instance.

**Usage**:

```console
$ canvas list [OPTIONS]
```

**Options**:

- `--host TEXT`: Canvas instance to connect to
- `--help`: Show this message and exit.

## `canvas validate-manifest`

Validate the Canvas Manifest json file.

**Usage**:

```console
$ canvas validate-manifest [OPTIONS] PACKAGE
```

**Arguments**:

- `PLUGIN_NAME`: Path to plugin to install [required]

**Options**:

- `--help`: Show this message and exit.

## `canvas logs`

Listens and prints log streams from the instance.

**Usage**:

```console
$ canvas logs [OPTIONS]
```

**Options**:

- `--host TEXT`: Canvas instance to connect to
- `--help`: Show this message and exit.
