> ## Documentation Index
> Fetch the complete documentation index at: https://docs.aitasker.co/llms.txt
> Use this file to discover all available pages before exploring further.

# Get Brand Intelligence Content Analysis Route

> Return one content analysis detail. PURE READ — no write, no commit.

An un-analyzed piece is a 200 carrying a ``not_analyzed`` shell (which
still reports its ownership subject), never a 404; only a MISSING item row
is a 404.



## OpenAPI

````yaml /openapi.json get /api/v1/brands/{brand_id}/brand-intelligence/content-analyses/{item_id}
openapi: 3.1.0
info:
  title: AITasker
  version: 0.1.0
servers: []
security: []
paths:
  /api/v1/brands/{brand_id}/brand-intelligence/content-analyses/{item_id}:
    get:
      tags:
        - Brand Intelligence
        - Brand Intelligence
      summary: Get Brand Intelligence Content Analysis Route
      description: >-
        Return one content analysis detail. PURE READ — no write, no commit.


        An un-analyzed piece is a 200 carrying a ``not_analyzed`` shell (which

        still reports its ownership subject), never a 404; only a MISSING item
        row

        is a 404.
      operationId: >-
        get_brand_intelligence_content_analysis_route_api_v1_brands__brand_id__brand_intelligence_content_analyses__item_id__get
      parameters:
        - name: brand_id
          in: path
          required: true
          schema:
            type: string
            format: uuid
            title: Brand Id
        - name: item_id
          in: path
          required: true
          schema:
            type: string
            format: uuid
            title: Item Id
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BrandIntelligenceContentAnalysisDetail'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      security:
        - HTTPBearer: []
components:
  schemas:
    BrandIntelligenceContentAnalysisDetail:
      properties:
        brand_id:
          type: string
          format: uuid
          title: Brand Id
        item_id:
          type: string
          format: uuid
          title: Item Id
        analysis_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Analysis Id
        status:
          type: string
          enum:
            - not_analyzed
            - queued
            - running
            - completed
            - failed
          title: Status
        analysis_kind:
          type: string
          title: Analysis Kind
          default: content_teardown
        subject:
          type: string
          enum:
            - own_brand
            - competitor
            - unknown
          title: Subject
          default: unknown
        is_own_brand:
          type: boolean
          title: Is Own Brand
          default: false
        brand_domain:
          anyOf:
            - type: string
            - type: 'null'
          title: Brand Domain
        publisher_domain:
          anyOf:
            - type: string
            - type: 'null'
          title: Publisher Domain
        summary:
          anyOf:
            - type: string
            - type: 'null'
          title: Summary
        overall_score:
          anyOf:
            - type: integer
              maximum: 100
              minimum: 0
            - type: 'null'
          title: Overall Score
        detected_format:
          anyOf:
            - type: string
            - type: 'null'
          title: Detected Format
        is_stale:
          type: boolean
          title: Is Stale
          default: false
        error_message:
          anyOf:
            - type: string
            - type: 'null'
          title: Error Message
        requested_at:
          anyOf:
            - type: string
              format: date-time
            - type: 'null'
          title: Requested At
        analyzed_at:
          anyOf:
            - type: string
              format: date-time
            - type: 'null'
          title: Analyzed At
        job_id:
          anyOf:
            - type: string
            - type: 'null'
          title: Job Id
        item:
          anyOf:
            - $ref: '#/components/schemas/ContentLibraryItemSummary'
            - type: 'null'
        result:
          anyOf:
            - $ref: '#/components/schemas/BrandIntelligenceContentAnalysisResult'
            - type: 'null'
        first_seen_at:
          anyOf:
            - type: string
              format: date-time
            - type: 'null'
          title: First Seen At
        last_seen_at:
          anyOf:
            - type: string
              format: date-time
            - type: 'null'
          title: Last Seen At
      type: object
      required:
        - brand_id
        - item_id
        - status
      title: BrandIntelligenceContentAnalysisDetail
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    ContentLibraryItemSummary:
      properties:
        id:
          type: string
          format: uuid
          title: Id
        kind:
          type: string
          enum:
            - social_post
            - content
          title: Kind
        platform:
          anyOf:
            - type: string
            - type: 'null'
          title: Platform
        external_id:
          anyOf:
            - type: string
            - type: 'null'
          title: External Id
        url:
          anyOf:
            - type: string
            - type: 'null'
          title: Url
        title:
          type: string
          title: Title
        excerpt:
          anyOf:
            - type: string
            - type: 'null'
          title: Excerpt
        media_type:
          anyOf:
            - type: string
            - type: 'null'
          title: Media Type
        is_video:
          type: boolean
          title: Is Video
          default: false
        thumbnail_url:
          anyOf:
            - type: string
            - type: 'null'
          title: Thumbnail Url
        media_url:
          anyOf:
            - type: string
            - type: 'null'
          title: Media Url
        download_url:
          anyOf:
            - type: string
            - type: 'null'
          title: Download Url
        media_mirrored:
          type: boolean
          title: Media Mirrored
          default: false
        media_width:
          anyOf:
            - type: integer
              exclusiveMinimum: 0
            - type: 'null'
          title: Media Width
        media_height:
          anyOf:
            - type: integer
              exclusiveMinimum: 0
            - type: 'null'
          title: Media Height
        media_items:
          items:
            $ref: '#/components/schemas/ContentLibraryPostMediaItemSummary'
          type: array
          title: Media Items
        event:
          anyOf:
            - $ref: '#/components/schemas/ContentLibraryEventSummary'
            - type: 'null'
        published_at:
          anyOf:
            - type: string
              format: date-time
            - type: 'null'
          title: Published At
        language:
          anyOf:
            - type: string
            - type: 'null'
          title: Language
        theme:
          anyOf:
            - type: string
            - type: 'null'
          title: Theme
        video_duration_seconds:
          anyOf:
            - type: integer
              minimum: 0
            - type: 'null'
          title: Video Duration Seconds
        country:
          anyOf:
            - type: string
            - type: 'null'
          title: Country
        tags:
          items:
            type: string
          type: array
          title: Tags
        topics:
          items:
            type: string
          type: array
          title: Topics
        views:
          anyOf:
            - type: integer
            - type: 'null'
          title: Views
        likes:
          anyOf:
            - type: integer
            - type: 'null'
          title: Likes
        comments:
          anyOf:
            - type: integer
            - type: 'null'
          title: Comments
        shares:
          anyOf:
            - type: integer
            - type: 'null'
          title: Shares
        engagements:
          anyOf:
            - type: integer
            - type: 'null'
          title: Engagements
        source_status:
          type: string
          enum:
            - available
            - unavailable
          title: Source Status
          default: available
        source_unavailable_reason:
          anyOf:
            - type: string
            - type: 'null'
          title: Source Unavailable Reason
        platforms:
          items:
            type: string
          type: array
          title: Platforms
        publisher:
          $ref: '#/components/schemas/ContentLibraryPublisherSummary'
        analysis:
          anyOf:
            - $ref: '#/components/schemas/ContentLibraryItemAnalysisSummary'
            - type: 'null'
      type: object
      required:
        - id
        - kind
        - title
        - publisher
      title: ContentLibraryItemSummary
    BrandIntelligenceContentAnalysisResult:
      properties:
        subject:
          type: string
          enum:
            - own_brand
            - competitor
            - unknown
          title: Subject
          default: unknown
        is_own_brand:
          type: boolean
          title: Is Own Brand
          default: false
        summary:
          type: string
          maxLength: 900
          title: Summary
          default: ''
        detected_format:
          type: string
          enum:
            - article
            - video
            - podcast
            - guide
            - case_study
            - landing_page
            - unknown
          title: Detected Format
          default: unknown
        overall_score:
          anyOf:
            - type: integer
              maximum: 100
              minimum: 0
            - type: 'null'
          title: Overall Score
        content_scorecard:
          anyOf:
            - $ref: '#/components/schemas/BrandIntelligenceContentScorecard'
            - type: 'null'
        primary_recommendation:
          anyOf:
            - $ref: '#/components/schemas/BrandIntelligenceContentRecommendation'
            - type: 'null'
        topic:
          anyOf:
            - $ref: '#/components/schemas/BrandIntelligenceContentAnalysisPoint'
            - type: 'null'
        format:
          anyOf:
            - $ref: '#/components/schemas/BrandIntelligenceContentAnalysisPoint'
            - type: 'null'
        discoverability:
          anyOf:
            - $ref: '#/components/schemas/BrandIntelligenceContentAnalysisPoint'
            - type: 'null'
        cadence:
          anyOf:
            - $ref: '#/components/schemas/BrandIntelligenceContentAnalysisPoint'
            - type: 'null'
        strengths:
          items:
            $ref: '#/components/schemas/BrandIntelligenceContentAnalysisPoint'
          type: array
          maxItems: 8
          title: Strengths
        weaknesses:
          items:
            $ref: '#/components/schemas/BrandIntelligenceContentAnalysisPoint'
          type: array
          maxItems: 8
          title: Weaknesses
        risks:
          items:
            $ref: '#/components/schemas/BrandIntelligenceContentAnalysisPoint'
          type: array
          maxItems: 8
          title: Risks
        test_ideas:
          items:
            $ref: '#/components/schemas/BrandIntelligenceContentAnalysisPoint'
          type: array
          maxItems: 8
          title: Test Ideas
        cohort_comparison:
          additionalProperties: true
          type: object
          title: Cohort Comparison
        limitations:
          items:
            type: string
          type: array
          maxItems: 8
          title: Limitations
        evidence_refs:
          additionalProperties:
            type: string
          type: object
          title: Evidence Refs
      type: object
      title: BrandIntelligenceContentAnalysisResult
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
              - type: string
              - type: integer
          type: array
          title: Location
        msg:
          type: string
          title: Message
        type:
          type: string
          title: Error Type
        input:
          title: Input
        ctx:
          type: object
          title: Context
      type: object
      required:
        - loc
        - msg
        - type
      title: ValidationError
    ContentLibraryPostMediaItemSummary:
      properties:
        media_type:
          anyOf:
            - type: string
            - type: 'null'
          title: Media Type
        thumbnail_url:
          anyOf:
            - type: string
            - type: 'null'
          title: Thumbnail Url
        media_url:
          anyOf:
            - type: string
            - type: 'null'
          title: Media Url
      type: object
      title: ContentLibraryPostMediaItemSummary
      description: One safe, ordered asset from a multi-media social post.
    ContentLibraryEventSummary:
      properties:
        event_id:
          type: string
          title: Event Id
        description:
          anyOf:
            - type: string
            - type: 'null'
          title: Description
        starts_at:
          anyOf:
            - type: string
              format: date-time
            - type: 'null'
          title: Starts At
        ends_at:
          anyOf:
            - type: string
              format: date-time
            - type: 'null'
          title: Ends At
        timezone:
          anyOf:
            - type: string
            - type: 'null'
          title: Timezone
        venue_name:
          anyOf:
            - type: string
            - type: 'null'
          title: Venue Name
        address:
          anyOf:
            - type: string
            - type: 'null'
          title: Address
        going_count:
          anyOf:
            - type: integer
              minimum: 0
            - type: 'null'
          title: Going Count
        interested_count:
          anyOf:
            - type: integer
              minimum: 0
            - type: 'null'
          title: Interested Count
      type: object
      required:
        - event_id
      title: ContentLibraryEventSummary
      description: Validated public metadata for a Facebook event story.
    ContentLibraryPublisherSummary:
      properties:
        id:
          type: string
          format: uuid
          title: Id
        name:
          type: string
          title: Name
        domain:
          anyOf:
            - type: string
            - type: 'null'
          title: Domain
        platform:
          anyOf:
            - type: string
            - type: 'null'
          title: Platform
        profile_url:
          anyOf:
            - type: string
            - type: 'null'
          title: Profile Url
        handle:
          anyOf:
            - type: string
            - type: 'null'
          title: Handle
        avatar_url:
          anyOf:
            - type: string
            - type: 'null'
          title: Avatar Url
        industries:
          items:
            type: string
          type: array
          title: Industries
        business_models:
          items:
            type: string
          type: array
          title: Business Models
      type: object
      required:
        - id
        - name
      title: ContentLibraryPublisherSummary
    ContentLibraryItemAnalysisSummary:
      properties:
        analysis_id:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Analysis Id
        status:
          type: string
          enum:
            - not_analyzed
            - queued
            - running
            - completed
            - failed
          title: Status
        summary:
          anyOf:
            - type: string
            - type: 'null'
          title: Summary
        overall_score:
          anyOf:
            - type: integer
              maximum: 100
              minimum: 0
            - type: 'null'
          title: Overall Score
        performance_index:
          anyOf:
            - type: integer
              maximum: 100
              minimum: 0
            - type: 'null'
          title: Performance Index
        detected_format:
          anyOf:
            - type: string
            - type: 'null'
          title: Detected Format
        is_stale:
          type: boolean
          title: Is Stale
          default: false
        analyzed_at:
          anyOf:
            - type: string
              format: date-time
            - type: 'null'
          title: Analyzed At
      type: object
      required:
        - status
      title: ContentLibraryItemAnalysisSummary
      description: >-
        The tile-sized slice of a post teardown.


        Enough for the score badge and the ``AnalysisActionButton`` state
        machine,

        without shipping a full report into a 24-card feed payload. Populated by

        ONE batched query per page in ``search_content_library`` — never per
        item.


        ``status`` carries the full response vocabulary (including the synthetic

        ``not_analyzed``) so the shape matches the analysis routes exactly;
        today

        the embed only ever emits ``completed`` because a partial run has
        nothing

        a tile can show.
    BrandIntelligenceContentScorecard:
      properties:
        rubric_version:
          type: string
          title: Rubric Version
          default: content-scorecard-v1
        basis:
          type: string
          const: published_signals_only
          title: Basis
          default: published_signals_only
        score:
          anyOf:
            - type: integer
              maximum: 100
              minimum: 0
            - type: 'null'
          title: Score
        coverage:
          type: integer
          maximum: 100
          minimum: 0
          title: Coverage
          default: 0
        confidence:
          type: string
          enum:
            - low
            - medium
            - high
          title: Confidence
          default: low
        elements:
          items:
            $ref: '#/components/schemas/BrandIntelligenceContentScoreElement'
          type: array
          maxItems: 5
          title: Elements
      type: object
      title: BrandIntelligenceContentScorecard
      description: >-
        Assessment of the PUBLISHED SIGNALS of one content piece.


        ``basis`` is pinned to ``published_signals_only`` and is the honesty

        contract in one word: title, excerpt, URL, declared format and the

        publisher's own cadence/format profile are all we store. Full body text
        is

        NOT stored (the audit's §9.1 word-count gap), so this number can never
        be

        read as "how good the writing is" — and it is never an observed-outcome

        score, because content items carry no engagement series at all.
    BrandIntelligenceContentRecommendation:
      properties:
        element_key:
          type: string
          enum:
            - topic_depth
            - format_strategy
            - discoverability
            - cadence_fit
            - differentiation
          title: Element Key
        observation:
          type: string
          maxLength: 500
          minLength: 1
          title: Observation
        action:
          type: string
          maxLength: 500
          minLength: 1
          title: Action
        rationale:
          type: string
          maxLength: 500
          minLength: 1
          title: Rationale
        location:
          anyOf:
            - type: string
              maxLength: 120
            - type: 'null'
          title: Location
        expected_metric:
          anyOf:
            - type: string
              maxLength: 160
            - type: 'null'
          title: Expected Metric
        priority:
          type: string
          enum:
            - low
            - medium
            - high
          title: Priority
          default: medium
        effort:
          type: string
          enum:
            - low
            - medium
            - high
          title: Effort
          default: medium
        confidence:
          type: string
          enum:
            - low
            - medium
            - high
          title: Confidence
          default: medium
        evidence_refs:
          items:
            type: string
          type: array
          maxItems: 8
          minItems: 1
          title: Evidence Refs
      type: object
      required:
        - element_key
        - observation
        - action
        - rationale
        - evidence_refs
      title: BrandIntelligenceContentRecommendation
      description: The single highest-priority, evidence-backed content test.
    BrandIntelligenceContentAnalysisPoint:
      properties:
        title:
          type: string
          maxLength: 120
          minLength: 1
          title: Title
        detail:
          type: string
          maxLength: 900
          minLength: 1
          title: Detail
        evidence_refs:
          items:
            type: string
          type: array
          maxItems: 8
          title: Evidence Refs
        confidence:
          type: string
          enum:
            - low
            - medium
            - high
          title: Confidence
          default: medium
      type: object
      required:
        - title
        - detail
      title: BrandIntelligenceContentAnalysisPoint
    BrandIntelligenceContentScoreElement:
      properties:
        key:
          type: string
          enum:
            - topic_depth
            - format_strategy
            - discoverability
            - cadence_fit
            - differentiation
          title: Key
        label:
          type: string
          maxLength: 80
          title: Label
          default: ''
        summary:
          type: string
          maxLength: 500
          title: Summary
          default: ''
        score:
          anyOf:
            - type: integer
              maximum: 100
              minimum: 0
            - type: 'null'
          title: Score
        weight:
          type: integer
          maximum: 100
          minimum: 0
          title: Weight
          default: 0
        coverage:
          type: integer
          maximum: 100
          minimum: 0
          title: Coverage
          default: 0
        status:
          type: string
          enum:
            - scored
            - unknown
            - not_applicable
          title: Status
          default: unknown
        confidence:
          type: string
          enum:
            - low
            - medium
            - high
          title: Confidence
          default: medium
        criteria:
          items:
            $ref: '#/components/schemas/BrandIntelligenceContentScoreCriterion'
          type: array
          maxItems: 5
          title: Criteria
      type: object
      required:
        - key
      title: BrandIntelligenceContentScoreElement
      description: A server-normalized content scorecard dimension.
    BrandIntelligenceContentScoreCriterion:
      properties:
        key:
          type: string
          maxLength: 64
          minLength: 1
          title: Key
        label:
          type: string
          maxLength: 80
          title: Label
          default: ''
        rating:
          anyOf:
            - type: integer
              maximum: 4
              minimum: 0
            - type: 'null'
          title: Rating
        status:
          type: string
          enum:
            - scored
            - unknown
            - not_applicable
          title: Status
          default: unknown
        detail:
          type: string
          maxLength: 500
          title: Detail
          default: ''
        evidence_refs:
          items:
            type: string
          type: array
          maxItems: 8
          title: Evidence Refs
        confidence:
          type: string
          enum:
            - low
            - medium
            - high
          title: Confidence
          default: medium
      type: object
      required:
        - key
      title: BrandIntelligenceContentScoreCriterion
      description: |-
        One observable, anchored 0-4 check inside a content scorecard element.

        ``label``, ``status`` and the numeric score are server-owned; the model
        supplies key/rating/detail/evidence only.
  securitySchemes:
    HTTPBearer:
      type: http
      scheme: bearer

````