> ## 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.

# Content Library Facet Options

> Dynamic filter options for the requested library kind.

Explore Content keeps its scoped Brand/Industry selects. Social returns
only its dynamic Media vocabulary because its classification facets use
the shared Paid Media checkbox sources and no longer expose a Brand roster.

The dependency was bound as ``_user`` and the identity discarded, so the
Industry dropdown was built over every advertiser in the library
(finding M2) while ``/search`` filtered — offering options the feed could
never return.



## OpenAPI

````yaml /openapi.json get /api/v1/content-library/facets
openapi: 3.1.0
info:
  title: AITasker
  version: 0.1.0
servers: []
security: []
paths:
  /api/v1/content-library/facets:
    get:
      tags:
        - Content Library
      summary: Content Library Facet Options
      description: >-
        Dynamic filter options for the requested library kind.


        Explore Content keeps its scoped Brand/Industry selects. Social returns

        only its dynamic Media vocabulary because its classification facets use

        the shared Paid Media checkbox sources and no longer expose a Brand
        roster.


        The dependency was bound as ``_user`` and the identity discarded, so the

        Industry dropdown was built over every advertiser in the library

        (finding M2) while ``/search`` filtered — offering options the feed
        could

        never return.
      operationId: content_library_facet_options_api_v1_content_library_facets_get
      parameters:
        - name: kind
          in: query
          required: true
          schema:
            type: string
            enum:
              - social_post
              - content
            title: Kind
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ContentLibraryFacetsResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      security:
        - HTTPBearer: []
components:
  schemas:
    ContentLibraryFacetsResponse:
      properties:
        generated_at:
          type: string
          format: date-time
          title: Generated At
        publishers:
          items:
            $ref: '#/components/schemas/ContentLibraryPublisherFacet'
          type: array
          title: Publishers
        industries:
          items:
            $ref: '#/components/schemas/ContentLibraryIndustryFacet'
          type: array
          title: Industries
        media_types:
          items:
            $ref: '#/components/schemas/ContentLibraryMediaTypeFacet'
          type: array
          title: Media Types
      type: object
      required:
        - generated_at
        - publishers
        - industries
        - media_types
      title: ContentLibraryFacetsResponse
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    ContentLibraryPublisherFacet:
      properties:
        domain:
          type: string
          title: Domain
        name:
          type: string
          title: Name
        item_count:
          type: integer
          title: Item Count
      type: object
      required:
        - domain
        - name
        - item_count
      title: ContentLibraryPublisherFacet
      description: >-
        One Brand option for Explore Content.


        Social deliberately returns no publisher roster: hundreds of brands do

        not belong in a dropdown, and brand drill-ins use a removable scope
        chip.
    ContentLibraryIndustryFacet:
      properties:
        value:
          type: string
          title: Value
        brand_count:
          type: integer
          title: Brand Count
      type: object
      required:
        - value
        - brand_count
      title: ContentLibraryIndustryFacet
      description: One Industry option, with how many publishers stand behind it.
    ContentLibraryMediaTypeFacet:
      properties:
        value:
          type: string
          title: Value
        item_count:
          type: integer
          title: Item Count
      type: object
      required:
        - value
        - item_count
      title: ContentLibraryMediaTypeFacet
      description: |-
        One Media type option. The vocabulary is whatever providers actually
        stamped — hard-coding a list would offer types nothing carries and hide
        types that exist.
    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
  securitySchemes:
    HTTPBearer:
      type: http
      scheme: bearer

````