# amoorion.methods.publish_method

Publish: one post on several platforms.

### Classes

| [`Publish`](#amoorion.methods.publish_method.Publish)([vault, view, inbox, dataset])        | One post to several platforms.   |
|------------------------------------------------------------------------------------------------|----------------------------------|
| [`PublishParams`](#amoorion.methods.publish_method.PublishParams)(\*, text[, title, links, tags]) | A post, and where it goes.       |

### *class* amoorion.methods.publish_method.PublishParams(, text, title=None, links=[], tags=[], to)

Bases: [`Post`](amoorion.models.base.html.md#amoorion.models.base.Post)

A post, and where it goes.

* **Parameters:**
  * **text** (*Annotated* *[**str* *,* *MinLen* *(**min_length=1* *)* *]*)
  * **title** (*str* *|* *None*)
  * **links** (*list* *[**str* *]*)
  * **tags** (*list* *[**str* *]*)
  * **to** (*Annotated* *[**list* *[**str* *]* *,* *MinLen* *(**min_length=1* *)* *]*)

#### model_config *= {'extra': 'forbid'}*

Configuration for the model, should be a dictionary conforming to [`ConfigDict`][pydantic.config.ConfigDict].

### *class* amoorion.methods.publish_method.Publish(vault=None, view=None, inbox=None, dataset=None)

Bases: [`Method`](amoorion.methods.base.html.md#amoorion.methods.base.Method)

One post to several platforms. One failing doesn’t stop the others.

* **Parameters:**
  * **vault** ([*Vault*](amoorion.vault.base.html.md#amoorion.vault.base.Vault) *|* *None*)
  * **view** ([*View*](amoorion.core.html.md#amoorion.core.View) *|* *None*)
  * **inbox** ([*Inbox*](amoorion.inbox.base.html.md#amoorion.inbox.base.Inbox) *|* *None*)
  * **dataset** ([*Dataset*](amoorion.dataset.base.html.md#amoorion.dataset.base.Dataset) *|* *None*)

#### Params

alias of [`PublishParams`](#amoorion.methods.publish_method.PublishParams)

#### run(params)

One `Result` per platform, whatever happens on each of them.

* **Parameters:**
  **params** ([*PublishParams*](#amoorion.methods.publish_method.PublishParams))
* **Return type:**
  list[[*Result*](amoorion.models.base.html.md#amoorion.models.base.Result)]
