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

# Options



## OpenAPI

````yaml /openapi.json get /api/v1/brands/{brand_id}/google-ads/strategies/options
openapi: 3.1.0
info:
  title: AITasker
  version: 0.1.0
servers: []
security: []
paths:
  /api/v1/brands/{brand_id}/google-ads/strategies/options:
    get:
      tags:
        - Google Ads Create
      summary: Options
      operationId: options_api_v1_brands__brand_id__google_ads_strategies_options_get
      parameters:
        - name: brand_id
          in: path
          required: true
          schema:
            type: string
            format: uuid
            title: Brand Id
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GoogleStrategyOptionsResponse'
        '422':
          description: Validation Error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/HTTPValidationError'
      security:
        - HTTPBearer: []
components:
  schemas:
    GoogleStrategyOptionsResponse:
      properties:
        schemaVersion:
          type: string
          title: Schemaversion
          default: google-create-v1
        rulesetVersion:
          type: string
          maxLength: 64
          minLength: 1
          title: Rulesetversion
        families:
          items:
            $ref: '#/components/schemas/FamilyOption'
          type: array
          maxItems: 6
          minItems: 1
          title: Families
        formats:
          items:
            $ref: '#/components/schemas/GoogleFormatOption'
          type: array
          maxItems: 10
          title: Formats
        markets:
          items:
            $ref: '#/components/schemas/NamedOption'
          type: array
          maxItems: 300
          title: Markets
        languages:
          items:
            $ref: '#/components/schemas/NamedOption'
          type: array
          maxItems: 300
          title: Languages
        defaultMarket:
          anyOf:
            - type: string
              maxLength: 80
              minLength: 2
            - type: 'null'
          title: Defaultmarket
        defaultLanguage:
          anyOf:
            - type: string
              maxLength: 40
              minLength: 2
            - type: 'null'
          title: Defaultlanguage
        available:
          type: boolean
          title: Available
          default: false
        unavailableReason:
          anyOf:
            - type: string
              maxLength: 500
              minLength: 1
            - type: 'null'
          title: Unavailablereason
        textScopeQualified:
          type: boolean
          title: Textscopequalified
          default: false
        monthlyStrategyLimit:
          type: integer
          minimum: 0
          title: Monthlystrategylimit
        remainingStrategyUnits:
          type: integer
          minimum: 0
          title: Remainingstrategyunits
        usedStrategyUnits:
          type: integer
          minimum: 0
          title: Usedstrategyunits
          default: 0
        reservedStrategyUnits:
          type: integer
          minimum: 0
          title: Reservedstrategyunits
          default: 0
        standaloneTextLimit:
          type: integer
          minimum: 0
          title: Standalonetextlimit
          default: 0
        usedStandaloneTextUnits:
          type: integer
          minimum: 0
          title: Usedstandalonetextunits
          default: 0
        reservedStandaloneTextUnits:
          type: integer
          minimum: 0
          title: Reservedstandalonetextunits
          default: 0
        renewsAt:
          type: string
          format: date-time
          title: Renewsat
        mediaBatchEligible:
          type: boolean
          title: Mediabatcheligible
        mediaPricingQualified:
          type: boolean
          title: Mediapricingqualified
        mediaGenerationAvailable:
          type: boolean
          title: Mediagenerationavailable
          default: false
        envelope:
          $ref: '#/components/schemas/ScopeEnvelope'
      additionalProperties: false
      type: object
      required:
        - rulesetVersion
        - families
        - markets
        - languages
        - monthlyStrategyLimit
        - remainingStrategyUnits
        - renewsAt
        - mediaBatchEligible
        - mediaPricingQualified
        - envelope
      title: GoogleStrategyOptionsResponse
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    FamilyOption:
      properties:
        family:
          type: string
          enum:
            - search
            - standard_shopping
            - performance_max
            - demand_gen
            - video
            - display_transition
          title: Family
        label:
          type: string
          maxLength: 500
          minLength: 1
          title: Label
        generationSupported:
          type: boolean
          title: Generationsupported
        nativeKinds:
          items:
            type: string
            enum:
              - rsa
              - shopping_feed_plan
              - pmax_asset_group
              - demand_gen_image
              - demand_gen_carousel
              - demand_gen_video
              - youtube_video
          type: array
          maxItems: 10
          title: Nativekinds
        limitations:
          items:
            type: string
            maxLength: 500
            minLength: 1
          type: array
          maxItems: 20
          title: Limitations
      additionalProperties: false
      type: object
      required:
        - family
        - label
        - generationSupported
        - nativeKinds
      title: FamilyOption
    GoogleFormatOption:
      properties:
        format:
          type: string
          enum:
            - rsa
            - shopping_feed_plan
            - pmax_asset_group
            - demand_gen_image
            - demand_gen_carousel
            - demand_gen_video
            - youtube_video
          title: Format
        family:
          type: string
          enum:
            - search
            - standard_shopping
            - performance_max
            - demand_gen
            - video
            - display_transition
          title: Family
        label:
          type: string
          maxLength: 500
          minLength: 1
          title: Label
        videoSubtypes:
          items:
            $ref: '#/components/schemas/NamedOption'
          type: array
          maxItems: 10
          title: Videosubtypes
        supportedSurfaces:
          items:
            type: string
            enum:
              - search
              - search_partners
              - youtube_in_stream
              - youtube_in_feed
              - youtube_shorts
              - discover
              - gmail
              - display
              - maps
              - connected_tv
          type: array
          maxItems: 10
          minItems: 1
          title: Supportedsurfaces
        supportedAspects:
          items:
            type: string
            enum:
              - '1:1'
              - 1.91:1
              - '4:5'
              - '9:16'
              - '16:9'
              - '4:1'
          type: array
          maxItems: 6
          title: Supportedaspects
        generationSupported:
          type: boolean
          title: Generationsupported
        ruleIds:
          items:
            type: string
            maxLength: 120
            minLength: 1
            pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
          type: array
          maxItems: 20
          minItems: 1
          title: Ruleids
        limitations:
          items:
            type: string
            maxLength: 500
            minLength: 1
          type: array
          maxItems: 20
          title: Limitations
      additionalProperties: false
      type: object
      required:
        - format
        - family
        - label
        - supportedSurfaces
        - generationSupported
        - ruleIds
      title: GoogleFormatOption
    NamedOption:
      properties:
        value:
          type: string
          maxLength: 120
          minLength: 1
          title: Value
        label:
          type: string
          maxLength: 500
          minLength: 1
          title: Label
      additionalProperties: false
      type: object
      required:
        - value
        - label
      title: NamedOption
    ScopeEnvelope:
      properties:
        version:
          type: string
          maxLength: 64
          minLength: 1
          title: Version
        campaignCellLimit:
          type: integer
          maximum: 50
          minimum: 1
          title: Campaigncelllimit
        adGroupOrAssetGroupLimit:
          type: integer
          maximum: 100
          minimum: 1
          title: Adgrouporassetgrouplimit
        offerLimit:
          type: integer
          maximum: 50
          minimum: 1
          title: Offerlimit
        personaLimit:
          type: integer
          maximum: 50
          minimum: 1
          title: Personalimit
        localeLimit:
          type: integer
          maximum: 20
          minimum: 1
          title: Localelimit
        textRepairLimit:
          type: integer
          maximum: 5
          minimum: 0
          title: Textrepairlimit
        mediaSlots:
          items:
            $ref: '#/components/schemas/PlannedMediaSlot'
          type: array
          maxItems: 200
          title: Mediaslots
      additionalProperties: false
      type: object
      required:
        - version
        - campaignCellLimit
        - adGroupOrAssetGroupLimit
        - offerLimit
        - personaLimit
        - localeLimit
        - textRepairLimit
      title: ScopeEnvelope
    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
    PlannedMediaSlot:
      properties:
        id:
          type: string
          maxLength: 120
          minLength: 1
          pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
          title: Id
        campaignCellId:
          type: string
          maxLength: 120
          minLength: 1
          pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
          title: Campaigncellid
        textVariantId:
          type: string
          maxLength: 120
          minLength: 1
          pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
          title: Textvariantid
        kind:
          type: string
          enum:
            - image
            - video
          title: Kind
        requirement:
          type: string
          enum:
            - required
            - optional
          title: Requirement
        role:
          type: string
          enum:
            - marketing_image
            - square_logo
            - landscape_logo
            - video
          title: Role
        sourcePolicy:
          type: string
          enum:
            - owned_identity_required
            - generated_or_owned
          title: Sourcepolicy
        intendedFamily:
          type: string
          enum:
            - search
            - standard_shopping
            - performance_max
            - demand_gen
            - video
            - display_transition
          title: Intendedfamily
        intendedSurfaces:
          items:
            type: string
            enum:
              - search
              - search_partners
              - youtube_in_stream
              - youtube_in_feed
              - youtube_shorts
              - discover
              - gmail
              - display
              - maps
              - connected_tv
          type: array
          maxItems: 10
          minItems: 1
          title: Intendedsurfaces
        creativeDirection:
          $ref: '#/components/schemas/CreativeDirection'
        rulesetRuleIds:
          items:
            type: string
            maxLength: 120
            minLength: 1
            pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
          type: array
          maxItems: 30
          minItems: 1
          title: Rulesetruleids
        requiredFacts:
          items:
            type: string
            maxLength: 120
            minLength: 1
            pattern: ^[A-Za-z0-9][A-Za-z0-9_.:-]*$
          type: array
          maxItems: 30
          title: Requiredfacts
        productReferenceIds:
          items:
            type: string
            format: uuid
          type: array
          maxItems: 50
          title: Productreferenceids
        preferredAspect:
          type: string
          enum:
            - '1:1'
            - 1.91:1
            - '4:5'
            - '9:16'
            - '16:9'
            - '4:1'
          title: Preferredaspect
        minFinalDurationSeconds:
          anyOf:
            - type: number
              maximum: 600
              exclusiveMinimum: 0
            - type: 'null'
          title: Minfinaldurationseconds
        maxFinalDurationSeconds:
          anyOf:
            - type: number
              maximum: 600
              exclusiveMinimum: 0
            - type: 'null'
          title: Maxfinaldurationseconds
        asset:
          anyOf:
            - $ref: '#/components/schemas/SelectedMediaAsset'
            - type: 'null'
      additionalProperties: false
      type: object
      required:
        - id
        - campaignCellId
        - textVariantId
        - kind
        - requirement
        - role
        - sourcePolicy
        - intendedFamily
        - intendedSurfaces
        - creativeDirection
        - rulesetRuleIds
        - preferredAspect
      title: PlannedMediaSlot
    CreativeDirection:
      properties:
        subject:
          type: string
          maxLength: 4000
          minLength: 1
          title: Subject
        action:
          anyOf:
            - type: string
              maxLength: 500
              minLength: 1
            - type: 'null'
          title: Action
        context:
          anyOf:
            - type: string
              maxLength: 500
              minLength: 1
            - type: 'null'
          title: Context
        style:
          anyOf:
            - type: string
              maxLength: 500
              minLength: 1
            - type: 'null'
          title: Style
        lighting:
          anyOf:
            - type: string
              maxLength: 500
              minLength: 1
            - type: 'null'
          title: Lighting
        camera:
          anyOf:
            - type: string
              maxLength: 500
              minLength: 1
            - type: 'null'
          title: Camera
        audio:
          anyOf:
            - type: string
              maxLength: 500
              minLength: 1
            - type: 'null'
          title: Audio
        requiredCopy:
          items:
            type: string
            maxLength: 500
            minLength: 1
          type: array
          maxItems: 20
          title: Requiredcopy
        prohibitedElements:
          items:
            type: string
            maxLength: 500
            minLength: 1
          type: array
          maxItems: 30
          title: Prohibitedelements
      additionalProperties: false
      type: object
      required:
        - subject
      title: CreativeDirection
    SelectedMediaAsset:
      properties:
        assetId:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Assetid
        uploadId:
          anyOf:
            - type: string
              format: uuid
            - type: 'null'
          title: Uploadid
        checksum:
          type: string
          pattern: ^[0-9a-f]{64}$
          title: Checksum
        width:
          type: integer
          maximum: 32768
          exclusiveMinimum: 0
          title: Width
        height:
          type: integer
          maximum: 32768
          exclusiveMinimum: 0
          title: Height
        sizeBytes:
          type: integer
          maximum: 274877906944
          exclusiveMinimum: 0
          title: Sizebytes
        mimeType:
          type: string
          enum:
            - image/jpeg
            - image/png
            - image/gif
            - video/mp4
            - video/webm
            - video/quicktime
          title: Mimetype
        durationSeconds:
          anyOf:
            - type: number
              maximum: 3600
              exclusiveMinimum: 0
            - type: 'null'
          title: Durationseconds
        youtubeVideoId:
          anyOf:
            - type: string
              pattern: ^[A-Za-z0-9_-]{11}$
            - type: 'null'
          title: Youtubevideoid
        identitySource:
          type: string
          enum:
            - owned_asset
            - owned_upload
            - faithful_derivative
            - generated
          title: Identitysource
      additionalProperties: false
      type: object
      required:
        - checksum
        - width
        - height
        - sizeBytes
        - mimeType
        - identitySource
      title: SelectedMediaAsset
  securitySchemes:
    HTTPBearer:
      type: http
      scheme: bearer

````