pypresscart.models.articles

Article models.

Classes

ApproveDraftRequest(*[, draft_google_doc_url])

Body for PATCH /articles/{id}/approve-draft.

Article(*, id[, name, brief_google_doc_url, ...])

Response from GET /articles/{article_id}.

ArticleOrderItem(*[, name, outlet, addons, ...])

ArticleStatusRef(*[, name, prefix, color])

ArticleUpdateRequest(*[, ...])

Body for PUT /articles/{id}.

ArticleWriter(*[, id, first_name, last_name])

CampaignArticleRow(*, id[, name, live_url, ...])

Entry in GET /campaigns/{id}/articles.

Comment(*, id[, content, author, ...])

A comment on an article.

CommentArchiveResponse(**extra_data)

Empty body of DELETE /articles/{id}/comments/{ref} (204 No Content).

CommentAuthor(*[, name, email])

Author block on a comment response.

CommentAuthorInput(*, name[, email, external_id])

Author block for POST /articles/{id}/comments.

CommentCreateRequest(*, content, author[, ...])

Body for POST /articles/{id}/comments.

CommentList(*[, records])

Response from GET /articles/{id}/comments — records only, no pagination.

CommentUpdateRequest(*, content, **extra_data)

Body for PUT /articles/{id}/comments/{ref}.

class pypresscart.models.articles.ApproveDraftRequest(*, draft_google_doc_url=None, **extra_data)[source]

Bases: PresscartModel

Body for PATCH /articles/{id}/approve-draft.

Parameters:
  • draft_google_doc_url (str | None)

  • extra_data (Any)

draft_google_doc_url: str | None
class pypresscart.models.articles.Article(*, id, name=None, brief_google_doc_url=None, draft_google_doc_url=None, live_url=None, campaign_id=None, product_id=None, profile_id=None, updated_at=None, writer=None, support_agent=None, status=None, files=[], expected_completion_date=None, expected_completion_date_title=None, **extra_data)[source]

Bases: PresscartModel

Response from GET /articles/{article_id}.

Parameters:
id: str
name: str | None
brief_google_doc_url: str | None
draft_google_doc_url: str | None
live_url: str | None
campaign_id: str | None
product_id: str | None
profile_id: str | None
updated_at: datetime | None
writer: ArticleWriter | None
support_agent: dict[str, Any] | None
status: ArticleStatusRef | None
files: list[dict[str, Any]]
expected_completion_date: datetime | None
expected_completion_date_title: str | None
class pypresscart.models.articles.ArticleOrderItem(*, name=None, outlet=None, addons=[], includes=[], **extra_data)[source]

Bases: PresscartModel

Parameters:
name: str | None
outlet: OutletRef | None
addons: list[dict[str, Any]]
includes: list[IncludeItem]
class pypresscart.models.articles.ArticleStatusRef(*, name=None, prefix=None, color=None, **extra_data)[source]

Bases: PresscartModel

Parameters:
  • name (str | None)

  • prefix (str | None)

  • color (str | None)

  • extra_data (Any)

name: str | None
prefix: str | None
color: str | None
class pypresscart.models.articles.ArticleUpdateRequest(*, brief_google_doc_url=None, name=None, **extra_data)[source]

Bases: PresscartModel

Body for PUT /articles/{id}.

Parameters:
  • brief_google_doc_url (str | None)

  • name (str | None)

  • extra_data (Any)

brief_google_doc_url: str | None
name: str | None
class pypresscart.models.articles.ArticleWriter(*, id=None, first_name=None, last_name=None, **extra_data)[source]

Bases: PresscartModel

Parameters:
  • id (str | None)

  • first_name (str | None)

  • last_name (str | None)

  • extra_data (Any)

id: str | None
first_name: str | None
last_name: str | None
class pypresscart.models.articles.CampaignArticleRow(*, id, name=None, live_url=None, brief_google_doc_url=None, draft_google_doc_url=None, campaign_id=None, order_item_id=None, created_at=None, updated_at=None, deleted_at=None, total_images=None, writer=None, status=[], order_item=None, **extra_data)[source]

Bases: PresscartModel

Entry in GET /campaigns/{id}/articles.

Parameters:
id: str
name: str | None
live_url: str | None
brief_google_doc_url: str | None
draft_google_doc_url: str | None
campaign_id: str | None
order_item_id: str | None
created_at: datetime | None
updated_at: datetime | None
deleted_at: datetime | None
total_images: int | None
writer: ArticleWriter | None
status: list[ArticleStatus]
order_item: ArticleOrderItem | None
class pypresscart.models.articles.Comment(*, id, content=None, author=None, created_at=None, updated_at=None, parent_comment_id=None, replies=[], **extra_data)[source]

Bases: PresscartModel

A comment on an article. Root comments carry one level of replies.

Parameters:
id: str
content: str | None
author: CommentAuthor | None
created_at: datetime | None
updated_at: datetime | None
parent_comment_id: str | None
replies: list[Comment]
class pypresscart.models.articles.CommentArchiveResponse(**extra_data)[source]

Bases: PresscartModel

Empty body of DELETE /articles/{id}/comments/{ref} (204 No Content).

Parameters:

extra_data (Any)

class pypresscart.models.articles.CommentAuthor(*, name=None, email=None, **extra_data)[source]

Bases: PresscartModel

Author block on a comment response.

Parameters:
  • name (str | None)

  • email (str | None)

  • extra_data (Any)

name: str | None
email: str | None
class pypresscart.models.articles.CommentAuthorInput(*, name, email=None, external_id=None, **extra_data)[source]

Bases: PresscartModel

Author block for POST /articles/{id}/comments.

Parameters:
  • name (str)

  • email (str | None)

  • external_id (str | None)

  • extra_data (Any)

name: str
email: str | None
external_id: str | None
class pypresscart.models.articles.CommentCreateRequest(*, content, author, parent_comment_id=None, **extra_data)[source]

Bases: PresscartModel

Body for POST /articles/{id}/comments.

Parameters:
content: str
author: CommentAuthorInput
parent_comment_id: str | None
class pypresscart.models.articles.CommentList(*, records=[], **extra_data)[source]

Bases: PresscartModel

Response from GET /articles/{id}/comments — records only, no pagination.

Parameters:
records: list[Comment]
class pypresscart.models.articles.CommentUpdateRequest(*, content, **extra_data)[source]

Bases: PresscartModel

Body for PUT /articles/{id}/comments/{ref}.

Parameters:
  • content (str)

  • extra_data (Any)

content: str