Personal Finance
vidextract.predefined.finance.v1
Personal-finance or investing advice extracted from a video — budgeting, saving, debt payoff, investing, retirement, taxes. Captures the concrete, actionable guidance the creator gives. Optional fields are omitted when the creator does not state them — do not infer.
Fields
Short title summarizing the video's financial subject.
Two or three sentences summarizing the overall financial message and who it is for.
Financial topics covered, lowercased.
Who the advice targets if stated, e.g. 'beginners', 'people in their 20s', 'high earners'. Omit if not stated.
The core actionable recommendations the creator makes, in the order presented.
An ordered step-by-step plan if the creator lays one out (e.g. 'the optimal order to invest'). Omit if the video isn't structured as steps.
Specific numeric heuristics or formulas the creator cites, e.g. '50/30/20 budget', 'save 15% of income', 'the rule of 72'.
Specific financial products, accounts, or instruments named, e.g. 'Roth IRA', '401k', 'S&P 500 index fund', 'high-yield savings account'.
Financial mistakes or pitfalls the creator warns against.
Any disclaimer the creator states, e.g. 'this is not financial advice'. Omit if none.
JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "vidextract.predefined.finance.v1",
"title": "Personal Finance",
"description": "Personal-finance or investing advice extracted from a video — budgeting, saving, debt payoff, investing, retirement, taxes. Captures the concrete, actionable guidance the creator gives. Optional fields are omitted when the creator does not state them — do not infer.",
"type": "object",
"required": [
"title",
"topics",
"keyAdvice"
],
"additionalProperties": false,
"properties": {
"title": {
"type": "string",
"description": "Short title summarizing the video's financial subject."
},
"summary": {
"type": "string",
"description": "Two or three sentences summarizing the overall financial message and who it is for."
},
"topics": {
"type": "array",
"description": "Financial topics covered, lowercased.",
"uniqueItems": true,
"items": {
"type": "string",
"enum": [
"budgeting",
"saving",
"emergency-fund",
"debt-payoff",
"credit",
"investing",
"stocks",
"index-funds",
"etfs",
"real-estate",
"crypto",
"retirement",
"taxes",
"insurance",
"income",
"side-hustle",
"frugality",
"mindset",
"net-worth"
]
}
},
"audience": {
"type": "string",
"description": "Who the advice targets if stated, e.g. 'beginners', 'people in their 20s', 'high earners'. Omit if not stated."
},
"keyAdvice": {
"type": "array",
"description": "The core actionable recommendations the creator makes, in the order presented.",
"minItems": 1,
"items": {
"type": "object",
"required": [
"advice"
],
"additionalProperties": false,
"properties": {
"advice": {
"type": "string",
"description": "A single concrete, actionable piece of advice stated imperatively, e.g. 'Build a 3-6 month emergency fund before investing.'"
},
"rationale": {
"type": "string",
"description": "Why the creator gives this advice, if explained. Omit otherwise."
},
"category": {
"type": "string",
"enum": [
"budgeting",
"saving",
"debt",
"investing",
"retirement",
"income",
"taxes",
"mindset"
],
"description": "Best-fit category for this advice. Omit if unclear."
},
"videoTimestamp": {
"type": "string",
"description": "Start timestamp in source video, 'mm:ss' or 'h:mm:ss'. Omit if unknown.",
"pattern": "^(\\d{1,2}:)?\\d{1,2}:\\d{2}$"
}
}
}
},
"actionSteps": {
"type": "array",
"description": "An ordered step-by-step plan if the creator lays one out (e.g. 'the optimal order to invest'). Omit if the video isn't structured as steps.",
"items": {
"type": "object",
"required": [
"step"
],
"additionalProperties": false,
"properties": {
"step": {
"type": "string",
"description": "The action to take at this stage of the plan."
},
"order": {
"type": "integer",
"description": "1-based position in the sequence. Omit if not clearly ordered."
}
}
}
},
"rulesOfThumb": {
"type": "array",
"description": "Specific numeric heuristics or formulas the creator cites, e.g. '50/30/20 budget', 'save 15% of income', 'the rule of 72'.",
"items": {
"type": "object",
"required": [
"rule"
],
"additionalProperties": false,
"properties": {
"rule": {
"type": "string",
"description": "The rule or heuristic as stated."
},
"value": {
"type": "string",
"description": "The associated number/percentage/figure if given, e.g. '20%', '$1,000'. Omit otherwise."
}
}
}
},
"instrumentsMentioned": {
"type": "array",
"description": "Specific financial products, accounts, or instruments named, e.g. 'Roth IRA', '401k', 'S&P 500 index fund', 'high-yield savings account'.",
"items": {
"type": "string"
}
},
"mistakesToAvoid": {
"type": "array",
"description": "Financial mistakes or pitfalls the creator warns against.",
"items": {
"type": "string"
}
},
"disclaimer": {
"type": "string",
"description": "Any disclaimer the creator states, e.g. 'this is not financial advice'. Omit if none."
}
}
}Use it via the API
Pass schemaId: "vidextract.predefined.finance.v1" when you submit an extraction. The call returns an id immediately. Poll GET /v1/extractions/{id}/result (or register a webhook) for the structured result.
curl -s -X POST https://postreef.com/v1/extractions \
-H "x-api-key: $VIDEXTRACT_API_KEY" \
-H "Content-Type: application/json" \
-d '{"url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ",
"inputs": ["transcript", "comments"],
"schemaId": "vidextract.predefined.finance.v1"}'Full request/response shape in the API reference; copy-paste poll loops in the API quickstart.
Pass schemaId: "vidextract.predefined.finance.v1" in your request to extract with this schema.