Content model
Every publishable unit in NativPost is a content object. Whether it lands on X as a text post, on Instagram as a Reel, or on YouTube as a Short, the same underlying record drives it.
Anatomy
Section titled “Anatomy”{ "object": "content", "id": "cnt_9f2c8e7b1a3d4f60", "workspace_id": "org_2gK9c7dL3eX8fY1a", "campaign_id": null, "status": "scheduled", "content_type": "reel", "platforms": ["instagram", "tiktok"], "body_text": "Ship faster with NativPost.", "hook_text": "Stop guessing what to post.", "media_assets": [ { "id": "med_1e7b8a2c9d3f", "kind": "video", "url": "https://..." } ], "scheduled_at": "2026-07-19T13:00:00Z", "published_at": null, "created_at": "2026-07-19T12:04:11Z", "updated_at": "2026-07-19T12:07:52Z"}Field groups
Section titled “Field groups”- Identity:
id,workspace_id,campaign_id(optional link to a campaign). - Lifecycle:
status,scheduled_at,published_at,created_at,updated_at. - Rendering:
content_type,hook_text,body_text,slide_copy,media_assets. - Targeting:
platformsarray plus optional per-platform overrides inplatform_overrides. - Metadata: free-form
metadataobject for your own tags.
Where fields come from
Section titled “Where fields come from”Text, hook, and slide copy live directly on the content object. Rendered video and image output is generated by the platform’s engine and stored in media_assets once the content moves to approved or beyond. See Statuses for the full lifecycle.
Relationship to campaigns
Section titled “Relationship to campaigns”A content object can exist on its own or belong to a campaign via campaign_id. Campaigns bundle multiple content items with a shared cadence and platforms. Launching a campaign puts every child content in the scheduled state at the appropriate slot. See Campaigns.
Immutability rules
Section titled “Immutability rules”Once a content object reaches published, most fields are frozen. You can still update metadata and delete the record, but rewriting body_text after publish has no effect on the live post. To edit a published post, republish through the platform’s own interface.