# FoPost v0.2.0 - Table of Contents

> Official Elixir SDK for the FoPost API: schedule, publish, and analyze social media content across every connected platform.

## Pages

- [FoPost Elixir SDK](readme.md)
- [Changelog](changelog.md)

## Modules

- [FoPost.Account](FoPost.Account.md): A connected social account — the thing a post is delivered to.

- [FoPost.AccountAnalytics](FoPost.AccountAnalytics.md): An account's stored snapshots, newest first.

- [FoPost.AccountHealth](FoPost.AccountHealth.md): How an account's stored credentials are holding up.
- [FoPost.AccountSnapshot](FoPost.AccountSnapshot.md): One point in an account's follower history.

- [FoPost.Ad](FoPost.Ad.md): A boost or ad created through FoPost. `:kind` is `"boost"` or `"ad"`; `:status` is what
you set (`"active"` or `"paused"`) and `:effective_status` is what Meta reports.

- [FoPost.AdConnection](FoPost.AdConnection.md): A connected ads login. `:auth_type` says whether it was a business or a user login.

- [FoPost.AdInsights](FoPost.AdInsights.md): Lifetime delivery numbers as of the ad's last refresh. `:spend_minor` is in the ad
account's currency, minor units.

- [FoPost.AdSource](FoPost.AdSource.md): One connection with the ad accounts and Pages its grant reaches, as lists of maps.
`:error` is set when the provider could not be read.

- [FoPost.AdTargeting](FoPost.AdTargeting.md): Who an ad is shown to. `:locations`, `:interests`, `:behaviors`, and `:income` are
lists of maps as Meta names them, from `FoPost.Ads.search_targeting/2`.

- [FoPost.Analytics.Bucket](FoPost.Analytics.Bucket.md): One slice of an audience: a value and its share of the whole.

- [FoPost.Analytics.CollectSummary](FoPost.Analytics.CollectSummary.md): What a collection run refreshed, and what it could not.

- [FoPost.Analytics.Demographics](FoPost.Analytics.Demographics.md): An audience breakdown.
- [FoPost.Analytics.LabelStats](FoPost.Analytics.LabelStats.md): One campaign label's performance over the window.

- [FoPost.Analytics.Overview](FoPost.Analytics.Overview.md): The headline roll-up across every account in scope.
- [FoPost.Analytics.Point](FoPost.Analytics.Point.md): One day of activity in a time series.

- [FoPost.Analytics.PostRow](FoPost.Analytics.PostRow.md): One row of the posts table: a post and how its deliveries went.

- [FoPost.Analytics.PostsTable](FoPost.Analytics.PostsTable.md): A page of posts with their per-platform delivery breakdown.

- [FoPost.Analytics.StreakDay](FoPost.Analytics.StreakDay.md): One day of posting activity in the year-long streak.

- [FoPost.Analytics.TimeSeries](FoPost.Analytics.TimeSeries.md): Daily activity over the requested window, one point per day.

- [FoPost.Analytics.TopPost](FoPost.Analytics.TopPost.md): One high-performing post.
- [FoPost.Audience](FoPost.Audience.md): A saved audience on an ad account.

- [FoPost.AudiencesResult](FoPost.AudiencesResult.md): The audiences and pixels on an ad account. `:pixels` is a list of maps of `id` and `name`.

- [FoPost.Automation](FoPost.Automation.md): A trigger and the steps behind it.
- [FoPost.AutomationRun](FoPost.AutomationRun.md): One execution of an automation, with a log per step when fetched on its own.

- [FoPost.AutomationStats](FoPost.AutomationStats.md): Automation counts and the runs of the last day.

- [FoPost.AutomationStep](FoPost.AutomationStep.md): One action in an automation, in position order.
- [FoPost.AutomationTrigger](FoPost.AutomationTrigger.md): The run a webhook trigger started.

- [FoPost.BoostablePost](FoPost.BoostablePost.md): A published post that can be boosted, with the deliveries a boost can start from.

- [FoPost.BulkImportResult](FoPost.BulkImportResult.md): What a committed CSV import created. Keep `:batch_id` to roll the batch back.

- [FoPost.BulkImportRow](FoPost.BulkImportRow.md): One CSV row as the bulk-import validator read it.

- [FoPost.BulkImportValidation](FoPost.BulkImportValidation.md): The dry run of a CSV import: what would be created, and what would not.

- [FoPost.BulkResult](FoPost.BulkResult.md): How many posts a bulk action changed.

- [FoPost.Community](FoPost.Community.md): An X community linked to an account.
- [FoPost.CommunitySearchResult](FoPost.CommunitySearchResult.md): A community as the platform's search returns it, before it is linked to an account.

- [FoPost.ContentBlock](FoPost.ContentBlock.md): One text-plus-media unit of a post. A single post has one block; a thread has one per
entry, in order.

- [FoPost.CreatedAudience](FoPost.CreatedAudience.md): A newly created audience: its id and, for a customer list, how many emails were accepted.

- [FoPost.Delivery](FoPost.Delivery.md): One post-to-account delivery.
- [FoPost.ExternalAd](FoPost.ExternalAd.md): An ad on a connected ad account that was made outside FoPost. Read live, never stored.

- [FoPost.HealthSummary](FoPost.HealthSummary.md): Every reachable account's health, plus the counts per status.

- [FoPost.InboxAccount](FoPost.InboxAccount.md): A connected account and whether its comments (`:inbox_supported`) and direct messages
(`:dm_supported`) can be read. The `*_pending_reason` fields say why not.

- [FoPost.InboxAccountRef](FoPost.InboxAccountRef.md): The connected account an inbox item, thread, or conversation belongs to.

- [FoPost.InboxApproval](FoPost.InboxApproval.md): A reply an automation or the agent drafted that a person still has to send.
- [FoPost.InboxAttachment](FoPost.InboxAttachment.md): A file attached to an inbox item. `:url` and `:preview_url` are served by FoPost.

- [FoPost.InboxConversation](FoPost.InboxConversation.md): One direct-message thread, rolled up. `:participant` is the other party as a map of
`name`, `handle`, and `avatar_url`.

- [FoPost.InboxDecision](FoPost.InboxDecision.md): The answer to approving or rejecting a drafted reply.

- [FoPost.InboxItem](FoPost.InboxItem.md): One comment, mention, or direct message on a connected account.
- [FoPost.InboxPlatform](FoPost.InboxPlatform.md): Inbox support per platform. `:comments` and `:dms` are `"live"`, `"soon"`, or `"none"`.

- [FoPost.InboxPostContext](FoPost.InboxPostContext.md): The platform post a comment or mention sits under.

- [FoPost.InboxRefreshResult](FoPost.InboxRefreshResult.md): What a manual inbox poll did. `:dm_reconnect` lists accounts whose DM access needs a
fresh connection, as maps of `platform` and `account`.

- [FoPost.InboxReplyResult](FoPost.InboxReplyResult.md): A sent reply: the updated item plus the reply's id and URL on the platform.

- [FoPost.InboxThread](FoPost.InboxThread.md): One post with comments (or mentions), rolled up: how many, how many unread, the latest.

- [FoPost.Label](FoPost.Label.md): A campaign tag posts are grouped and reported by.

- [FoPost.Lead](FoPost.Lead.md): One submission of a lead form. `:fields` is a list of maps of `name` and `values`.

- [FoPost.LeadForm](FoPost.LeadForm.md): An Instant Form on a Page.

- [FoPost.LeadFormSource](FoPost.LeadFormSource.md): One connection and Page with the lead forms on it.

- [FoPost.LeadsPage](FoPost.LeadsPage.md): One page of leads. Pass `:next_cursor` back as `:after` for the next page; `nil` means
there is none.

- [FoPost.MediaAsset](FoPost.MediaAsset.md): One asset in a workspace's media library.
- [FoPost.MediaItem](FoPost.MediaItem.md): One attachment on a content block.

- [FoPost.Message](FoPost.Message.md): The bare acknowledgement several deletes and side-effect endpoints answer with.

- [FoPost.PageMeta](FoPost.PageMeta.md): Pagination counters that travel alongside a paginated list.

- [FoPost.Post](FoPost.Post.md): A composed post: its content, the accounts it targets, and its schedule.

- [FoPost.PostAccount](FoPost.PostAccount.md): One account a post targets, with the outcome of its delivery.

- [FoPost.PostAnalytics](FoPost.PostAnalytics.md): A post's performance, totalled and broken down per platform.

- [FoPost.PreflightAccount](FoPost.PreflightAccount.md): One account's readiness. `:issues` block publishing; `:signals` are advisory.

- [FoPost.PreflightResult](FoPost.PreflightResult.md): A post checked against every platform it targets, without publishing anything.

- [FoPost.PublishResult](FoPost.PublishResult.md): What a publish, a retry, or a cancel queued.
- [FoPost.PublishRun](FoPost.PublishRun.md): One attempt at publishing a post, with its per-account results.

- [FoPost.TargetingOption](FoPost.TargetingOption.md): One location, interest, behaviour, or income bracket as Meta names it.

- [FoPost.TokenRefresh](FoPost.TokenRefresh.md): When a refreshed credential now expires.

- [FoPost.ValidationResult](FoPost.ValidationResult.md): Whether an account's credentials still work against its platform.

- [FoPost.Webhook](FoPost.Webhook.md): One webhook subscription.
- [FoPost.WebhookEvent](FoPost.WebhookEvent.md): A decoded webhook delivery: which event fired, its payload, and when.

- [FoPost.Workspace](FoPost.Workspace.md): One workspace — the tenant boundary every other resource is scoped to.

- [FoPost.WorkspaceAnalytics](FoPost.WorkspaceAnalytics.md): A workspace's follower and post totals, per account and summed.

- Client
  - [FoPost](FoPost.md): The official Elixir SDK for the [FoPost](https://fopost.com) API.
  - [FoPost.Client](FoPost.Client.md): The client struct every resource function takes as its first argument.
  - [FoPost.Content](FoPost.Content.md): Builds the `:content` a post is created or updated with.
  - [FoPost.Error](FoPost.Error.md): The single error type every FoPost call answers with.
  - [FoPost.Page](FoPost.Page.md): One page of a paginated list: the rows on `:data`, the counters on `:meta`.

- Resources
  - [FoPost.Accounts](FoPost.Accounts.md): Connected social accounts — what a post is actually delivered to.
  - [FoPost.Ads](FoPost.Ads.md): Meta ads: boosts, standalone ads, audiences, targeting, and lead forms.
  - [FoPost.Analytics](FoPost.Analytics.md): Cross-account reporting.
  - [FoPost.Automations](FoPost.Automations.md): Automations — a trigger plus the steps it runs.
  - [FoPost.Communities](FoPost.Communities.md): The communities an account can post into.

  - [FoPost.Inbox](FoPost.Inbox.md): Comments, mentions, and direct messages on connected accounts.
  - [FoPost.Labels](FoPost.Labels.md): Labels — the campaign tags posts are grouped and reported by.

  - [FoPost.Media](FoPost.Media.md): The media library.
  - [FoPost.Posts](FoPost.Posts.md): Create, schedule, publish, and inspect posts.
  - [FoPost.Webhooks](FoPost.Webhooks.md): Outbound webhooks — the push counterpart to polling a post's deliveries.
  - [FoPost.Workspaces](FoPost.Workspaces.md): Workspaces — the tenant boundary every other resource is scoped to.

