Magic Fields
Some of the entries returned by customAttributeSchemas(entity: ITEM) aren’t fields your team filled in by hand — they’re Magic Fields: item-level attributes that Archive populates automatically using AI.
The API returns them inside the same customAttributes blob as any other custom attribute; there’s no separate field or flag distinguishing them.
Two kinds of Magic Fields
Built-in Magic Fields — present on every workspace where the feature is enabled. The most common keys:
| Key | Type | What it is |
|---|---|---|
post_summary | TEXT | A short AI-generated description of what’s in the post (visuals + caption + any visible product references). |
sentiment | SINGLE_SELECT_V2 | Archive’s read of the post’s tone (e.g. Positive, Neutral, Negative). |
Workspace-specific Magic Fields — classifiers configured for a single workspace’s brand context. The key, name, and options are entirely workspace-defined. For example, a beauty brand might have a product_lines field whose options are that brand’s SKUs (Cleanser, Moisturizer, Serum, etc.) — Archive auto-tags each new item with the SKU it detected in the post.
Because workspace-specific Magic Fields vary completely between workspaces, you must call customAttributeSchemas(entity: ITEM) against the workspace you’re querying to discover its keys and option UUIDs before filtering. Never hardcode them.
Filtering by Magic Fields
Magic Fields are queryable through the same customAttributeConditions argument as any other custom attribute:
query PositiveProductPosts {
items(
first: 20
customAttributeConditions: [
{ field: "sentiment", operator: IS, type: SINGLE_SELECT_V2, value: "<positive-option-uuid>" },
{ field: "product_lines", operator: IS, type: MULTIPLE_SELECT_V2, value: "<product-line-uuid>" }
]
) {
totalCount
nodes {
id
provider
type
socialProfile { accountName followers }
currentEngagement { likes comments impressions earnedMediaValue }
customAttributes
}
}
}Population is asynchronous
Magic Fields populate after an item is ingested. A freshly captured item may briefly return with the Magic Field key absent or null — re-query a few minutes later if you depend on the value being present.
Not every workspace has them
Magic Fields are an opt-in / configuration-gated feature. Some workspaces (typically those that have explicitly opted out, or where the feature was never turned on) won’t return post_summary or sentiment in their schema. Don’t assume universality — always check customAttributeSchemas(entity: ITEM) first, and gracefully handle the case where these keys aren’t in the schema.
Using with AI:
“Pull every post in this workspace tagged as Positive sentiment in the last 30 days.” “Group this month’s items by product line and total their EMV.” “Show me items where the AI summary mentions ‘unboxing’.”