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

# Generate configurable summary from url based on prompt config



## OpenAPI

````yaml https://api.bibigpt.co/api/openapi.json post /v1/summarizeWithConfig
openapi: 3.1.0
info:
  title: BibiGPT OpenAPI 规范
  description: 音视频 AI 学习助理的开放 API，加速音视频内容的信息提取，借助 AI 直接采取行动。
  version: 1.1.0
servers:
  - url: https://api.bibigpt.co/api
security: []
externalDocs:
  url: https://docs.bibigpt.co/api
paths:
  /v1/summarizeWithConfig:
    post:
      tags:
        - open
      summary: Generate configurable summary from url based on prompt config
      operationId: summarizeWithConfig
      parameters: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                url:
                  type: string
                  description: >-
                    The URL to the video (e.g.,
                    ?url=https://www.bilibili.com/video/BV1Sk4y1x7r2)
                includeDetail:
                  description: Include audio, video or media webpage detail in response
                  type: boolean
                promptConfig:
                  type: object
                  properties:
                    customPrompt:
                      type: string
                    outputLanguage:
                      type: string
                    autoTranslateLanguage:
                      type: string
                    showEmoji:
                      type: boolean
                    detailLevel:
                      type: number
                    sentenceNumber:
                      type: number
                    isRefresh:
                      type: boolean
                    showTimestamp:
                      type: boolean
                    audioLanguage:
                      type: string
                    whisperPrompt:
                      type: string
                    transcribeProvider:
                      type: string
                    elevenlabsApiKey:
                      type: string
                    apiKey:
                      type: string
                    speakerCount:
                      type: number
                videoDetail:
                  type: object
                  properties:
                    summary:
                      type: string
                    dbId:
                      type: string
                    id:
                      type: string
                    embedId:
                      type: string
                    pageId:
                      type: string
                    url:
                      type: string
                    subtitleUrl:
                      type: string
                    rawLang:
                      type: string
                    translationUrls:
                      type: array
                      items:
                        type: object
                        properties:
                          code:
                            type: string
                          url:
                            type: string
                        required:
                          - code
                          - url
                    audioUrl:
                      type: string
                    playUrl:
                      type: string
                    type:
                      type: string
                      enum:
                        - bilibili
                        - youtube
                        - podcast
                        - douyin
                        - tiktok
                        - wechat-channels
                        - online-media
                        - url-media
                        - import-file
                        - local-video
                        - local-audio
                        - record-audio
                        - local-subtitle
                        - webpage
                        - meeting
                    title:
                      type: string
                    cover:
                      type: string
                    author:
                      type: string
                    authorId:
                      type: string
                    duration:
                      type: number
                    publishedDate: {}
                    subtitlesArray:
                      anyOf:
                        - type: array
                          items:
                            type: object
                            properties:
                              startTime:
                                type: number
                                description: >-
                                  The start time of the subtitle item in
                                  seconds, e.g. 53.58
                              end:
                                type: number
                                description: >-
                                  The end time of the subtitle item in seconds,
                                  e.g. 65.08
                              text:
                                type: string
                                description: The text of the subtitle item
                              index:
                                type: number
                                description: The index of the subtitle item
                              words:
                                description: The words of the subtitle item
                                type: array
                                items:
                                  type: object
                                  properties:
                                    start:
                                      type: number
                                    end:
                                      type: number
                                    text:
                                      type: string
                                    punctuation:
                                      type: string
                                  required:
                                    - start
                                    - end
                                    - text
                              speaker_id:
                                anyOf:
                                  - type: number
                                  - type: 'null'
                                description: The speaker id of the subtitle item
                              _isGrouped:
                                description: Whether this subtitle is a grouped subtitle
                                type: boolean
                              _originalSubtitles:
                                description: Original subtitles that were grouped together
                                type: array
                                items: {}
                            required:
                              - startTime
                              - end
                              - text
                              - index
                        - type: 'null'
                    descriptionText:
                      type: string
                    contentText:
                      type: string
                    aiImages:
                      type: array
                      items:
                        type: object
                        properties:
                          startTime:
                            type: number
                          endTime:
                            type: number
                          image:
                            type: string
                          prompt:
                            type: string
                        required:
                          - startTime
                          - endTime
                          - prompt
                    chapters:
                      type: array
                      items:
                        type: object
                        properties:
                          from:
                            type: number
                          to:
                            type: number
                          content:
                            type: string
                          type:
                            type: number
                          imgUrl:
                            type: string
                        required:
                          - from
                          - to
                          - content
                    local_path:
                      type: string
                    status:
                      type: string
                    isPaid:
                      type: boolean
                    isPreviewOnly:
                      type: boolean
                    sourceLevel:
                      type: string
                      enum:
                        - guest
                        - authenticated
                        - transcribed
                  required:
                    - id
                    - url
                    - type
                    - title
                    - duration
                providedSubtitle:
                  type: array
                  items:
                    type: object
                    properties:
                      startTime:
                        type: number
                        description: >-
                          The start time of the subtitle item in seconds, e.g.
                          53.58
                      end:
                        type: number
                        description: >-
                          The end time of the subtitle item in seconds, e.g.
                          65.08
                      text:
                        type: string
                        description: The text of the subtitle item
                      index:
                        type: number
                        description: The index of the subtitle item
                      words:
                        description: The words of the subtitle item
                        type: array
                        items:
                          type: object
                          properties:
                            start:
                              type: number
                            end:
                              type: number
                            text:
                              type: string
                            punctuation:
                              type: string
                          required:
                            - start
                            - end
                            - text
                      speaker_id:
                        anyOf:
                          - type: number
                          - type: 'null'
                        description: The speaker id of the subtitle item
                      _isGrouped:
                        description: Whether this subtitle is a grouped subtitle
                        type: boolean
                      _originalSubtitles:
                        description: Original subtitles that were grouped together
                        type: array
                        items: {}
                    required:
                      - startTime
                      - end
                      - text
                      - index
                isAuthenticatedFetch:
                  type: boolean
                providedDurationSec:
                  type: integer
                  exclusiveMinimum: 0
                  maximum: 9007199254740991
                forceReprocess:
                  type: boolean
              required:
                - url
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                type: object
                properties:
                  success:
                    type: boolean
                  id:
                    type: string
                  service:
                    type: string
                  sourceUrl:
                    type: string
                  htmlUrl:
                    type: string
                  summary:
                    type: string
                  costDuration:
                    type: number
                  remainingTime:
                    type: number
                  billingNote:
                    type: string
                  detail:
                    anyOf:
                      - type: object
                        properties:
                          summary:
                            type: string
                          dbId:
                            type: string
                          id:
                            type: string
                          embedId:
                            type: string
                          pageId:
                            type: string
                          url:
                            type: string
                          rawLang:
                            type: string
                          translationUrls:
                            type: array
                            items:
                              type: object
                              properties:
                                code:
                                  type: string
                                url:
                                  type: string
                              required:
                                - code
                                - url
                              additionalProperties: false
                          audioUrl:
                            type: string
                          playUrl:
                            type: string
                          type:
                            type: string
                            enum:
                              - bilibili
                              - youtube
                              - podcast
                              - douyin
                              - tiktok
                              - wechat-channels
                              - online-media
                              - url-media
                              - import-file
                              - local-video
                              - local-audio
                              - record-audio
                              - local-subtitle
                              - webpage
                              - meeting
                          title:
                            type: string
                          cover:
                            type: string
                          author:
                            type: string
                          authorId:
                            type: string
                          duration:
                            type: number
                          publishedDate: {}
                          subtitlesArray:
                            anyOf:
                              - type: array
                                items:
                                  type: object
                                  properties:
                                    startTime:
                                      type: number
                                      description: >-
                                        The start time of the subtitle item in
                                        seconds, e.g. 53.58
                                    end:
                                      type: number
                                      description: >-
                                        The end time of the subtitle item in
                                        seconds, e.g. 65.08
                                    text:
                                      type: string
                                      description: The text of the subtitle item
                                    index:
                                      type: number
                                      description: The index of the subtitle item
                                    words:
                                      description: The words of the subtitle item
                                      type: array
                                      items:
                                        type: object
                                        properties:
                                          start:
                                            type: number
                                          end:
                                            type: number
                                          text:
                                            type: string
                                          punctuation:
                                            type: string
                                        required:
                                          - start
                                          - end
                                          - text
                                        additionalProperties: false
                                    speaker_id:
                                      anyOf:
                                        - type: number
                                        - type: 'null'
                                      description: The speaker id of the subtitle item
                                    _isGrouped:
                                      description: >-
                                        Whether this subtitle is a grouped
                                        subtitle
                                      type: boolean
                                    _originalSubtitles:
                                      description: >-
                                        Original subtitles that were grouped
                                        together
                                      type: array
                                      items: {}
                                  required:
                                    - startTime
                                    - end
                                    - text
                                    - index
                                  additionalProperties: false
                              - type: 'null'
                          descriptionText:
                            type: string
                          contentText:
                            type: string
                          aiImages:
                            type: array
                            items:
                              type: object
                              properties:
                                startTime:
                                  type: number
                                endTime:
                                  type: number
                                image:
                                  type: string
                                prompt:
                                  type: string
                              required:
                                - startTime
                                - endTime
                                - prompt
                              additionalProperties: false
                          chapters:
                            type: array
                            items:
                              type: object
                              properties:
                                from:
                                  type: number
                                to:
                                  type: number
                                content:
                                  type: string
                                type:
                                  type: number
                                imgUrl:
                                  type: string
                              required:
                                - from
                                - to
                                - content
                              additionalProperties: false
                          local_path:
                            type: string
                          status:
                            type: string
                          isPaid:
                            type: boolean
                          isPreviewOnly:
                            type: boolean
                          sourceLevel:
                            type: string
                            enum:
                              - guest
                              - authenticated
                              - transcribed
                        required:
                          - id
                          - url
                          - type
                          - title
                          - duration
                        additionalProperties: false
                      - type: object
                        properties:
                          dbId:
                            type: string
                          audioUrl:
                            type: string
                          playUrl:
                            type: string
                          videoUrl:
                            type: string
                          title:
                            type: string
                          cover:
                            type: string
                          duration:
                            type: number
                          subtitleUrl:
                            type: string
                          subtitlesArray:
                            anyOf:
                              - type: array
                                items:
                                  type: object
                                  properties:
                                    startTime:
                                      type: number
                                      description: >-
                                        The start time of the subtitle item in
                                        seconds, e.g. 53.58
                                    end:
                                      type: number
                                      description: >-
                                        The end time of the subtitle item in
                                        seconds, e.g. 65.08
                                    text:
                                      type: string
                                      description: The text of the subtitle item
                                    index:
                                      type: number
                                      description: The index of the subtitle item
                                    words:
                                      description: The words of the subtitle item
                                      type: array
                                      items:
                                        type: object
                                        properties:
                                          start:
                                            type: number
                                          end:
                                            type: number
                                          text:
                                            type: string
                                          punctuation:
                                            type: string
                                        required:
                                          - start
                                          - end
                                          - text
                                        additionalProperties: false
                                    speaker_id:
                                      anyOf:
                                        - type: number
                                        - type: 'null'
                                      description: The speaker id of the subtitle item
                                    _isGrouped:
                                      description: >-
                                        Whether this subtitle is a grouped
                                        subtitle
                                      type: boolean
                                    _originalSubtitles:
                                      description: >-
                                        Original subtitles that were grouped
                                        together
                                      type: array
                                      items: {}
                                  required:
                                    - startTime
                                    - end
                                    - text
                                    - index
                                  additionalProperties: false
                              - type: 'null'
                          translationUrls:
                            type: array
                            items:
                              type: object
                              properties:
                                code:
                                  type: string
                                url:
                                  type: string
                              required:
                                - code
                                - url
                              additionalProperties: false
                          description:
                            type: string
                          format:
                            type: string
                          author:
                            type: string
                          publishedDate:
                            type: string
                          content:
                            type: string
                          authorId:
                            type: string
                          chapters:
                            type: array
                            items:
                              type: object
                              properties:
                                from:
                                  type: number
                                to:
                                  type: number
                                content:
                                  type: string
                                type:
                                  type: number
                                imgUrl:
                                  type: string
                              required:
                                - from
                                - to
                                - content
                              additionalProperties: false
                          rawUrl:
                            type: string
                          rawHtml:
                            type: string
                        required:
                          - audioUrl
                          - title
                          - cover
                          - duration
                          - description
                          - format
                          - content
                          - rawUrl
                          - rawHtml
                        additionalProperties: false
                required:
                  - success
                  - id
                  - service
                  - sourceUrl
                  - htmlUrl
                  - costDuration
                  - remainingTime
                additionalProperties: false
        '400':
          description: Invalid input data
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/error.BAD_REQUEST'
        '401':
          description: Authorization not provided
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/error.UNAUTHORIZED'
        '403':
          description: Insufficient access
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/error.FORBIDDEN'
        '500':
          description: Internal server error
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/error.INTERNAL_SERVER_ERROR'
      security:
        - Authorization: []
components:
  schemas:
    error.BAD_REQUEST:
      type: object
      properties:
        message:
          type: string
          description: The error message
          example: Invalid input data
        code:
          type: string
          description: The error code
          example: BAD_REQUEST
        issues:
          description: An array of issues that were responsible for the error
          example: []
          type: array
          items:
            type: object
            properties:
              message:
                type: string
            required:
              - message
            additionalProperties: false
      required:
        - message
        - code
      additionalProperties: false
      title: Invalid input data error (400)
      description: The error information
      example:
        code: BAD_REQUEST
        message: Invalid input data
        issues: []
    error.UNAUTHORIZED:
      type: object
      properties:
        message:
          type: string
          description: The error message
          example: Authorization not provided
        code:
          type: string
          description: The error code
          example: UNAUTHORIZED
        issues:
          description: An array of issues that were responsible for the error
          example: []
          type: array
          items:
            type: object
            properties:
              message:
                type: string
            required:
              - message
            additionalProperties: false
      required:
        - message
        - code
      additionalProperties: false
      title: Authorization not provided error (401)
      description: The error information
      example:
        code: UNAUTHORIZED
        message: Authorization not provided
        issues: []
    error.FORBIDDEN:
      type: object
      properties:
        message:
          type: string
          description: The error message
          example: Insufficient access
        code:
          type: string
          description: The error code
          example: FORBIDDEN
        issues:
          description: An array of issues that were responsible for the error
          example: []
          type: array
          items:
            type: object
            properties:
              message:
                type: string
            required:
              - message
            additionalProperties: false
      required:
        - message
        - code
      additionalProperties: false
      title: Insufficient access error (403)
      description: The error information
      example:
        code: FORBIDDEN
        message: Insufficient access
        issues: []
    error.INTERNAL_SERVER_ERROR:
      type: object
      properties:
        message:
          type: string
          description: The error message
          example: Internal server error
        code:
          type: string
          description: The error code
          example: INTERNAL_SERVER_ERROR
        issues:
          description: An array of issues that were responsible for the error
          example: []
          type: array
          items:
            type: object
            properties:
              message:
                type: string
            required:
              - message
            additionalProperties: false
      required:
        - message
        - code
      additionalProperties: false
      title: Internal server error error (500)
      description: The error information
      example:
        code: INTERNAL_SERVER_ERROR
        message: Internal server error
        issues: []
  securitySchemes:
    Authorization:
      type: http
      scheme: bearer

````