Market pillar · v0.8.1

campaign Campaign

Marketing campaign definition.

$id · https://corpospec.com/schemas/v0.8.1/campaign.schema.json

Fields

Field Type Required Description
id PathRef yes Path-based cross-reference relative to .corpospec/ root. Pattern: `^[a-z0-9_-]+(/[a-z0-9_.-]+)+$`
name string yes
status CampaignStatus yes Campaign status lifecycle.
type CampaignType yes Campaign type discriminator.
budget CampaignBudget?
custom CampaignCustom?
delivery_mechanism string?
description string?
duration_months integer? Planned duration in months. Informational; for precise boundaries use `start_date` and `end_date`.
eligibility CampaignEligibility?
end_date IsoDate? Campaign end date (ISO 8601, YYYY-MM-DD). Optional; open-ended campaigns (retention, always-on brand) omit this field.
objective string?
related_decisions PathRef[]
start_date IsoDate? Campaign start date (ISO 8601, YYYY-MM-DD). Optional; campaigns in `planned` status may omit dates until scheduled.

Definitions

Shared types referenced within this schema.

CampaignAdmission
Campaign admission model.
enum: "open", "application", "invite-only", "vouching", "selective"
CampaignBudget
Campaign budget.
type: object
CampaignCustom
Typed custom extension data for `Campaign`.
type: object
CampaignEligibility
Campaign eligibility criteria.
type: object
CampaignStatus
Campaign status lifecycle.
enum: "planned", "active", "paused", "completed", "cancelled"
CampaignType
Campaign type discriminator.
enum: "brand-building", "acquisition", "retention", "engagement", "product"
IsoCurrency
ISO 4217 currency code.
pattern: ^[A-Z]{3}$
IsoDate
ISO 8601 date (YYYY-MM-DD).
type: string
PathRef
Path-based cross-reference relative to .corpospec/ root. Pattern: `^[a-z0-9_-]+(/[a-z0-9_.-]+)+$`
pattern: ^[a-z0-9_-]+(/[a-z0-9_.-]+)+$

Reference in your YAML

# yaml-language-server: $schema=https://corpospec.com/schemas/v0.8.1/campaign.schema.json