Skip to content
ComPDF
DemoAPI ReferenceFAQ
New Release

Open-Source PDF SDK & AI Document Processing

Get the full self-hosted SDK and AI document processing on GitHub. One-click deploy to quickly build your document workflows.

Guides

BOTA Configuration

The BOTA interface is used to display the Bookmarks, Outline, and Annotations lists of a PDF document.

Through BOTA configuration, you can control which types of tabs are displayed and what menu options are available within each interface.

Configure BOTA through ComPDFKit.getDefaultConfig({ global: { bota: ... } }). If you do not provide this configuration, the SDK shows outline, bookmark, and annotations tabs by default.

Configure Enabled Tabs

Use CPDFBotaConfig.tabs to specify which tabs should be enabled:

tsx
ComPDFKit.getDefaultConfig({
  global: {
    bota: {
      tabs: ['outline', 'annotations']
    }
  }
});

Example Result:

AndroidiOS
guides_rn_3.8.8_1guides_rn_3.8.8_2

Configure Annotation Menu Options

BOTA supports setting global menus and individual annotation item menus for the Annotations list interface:

tsx
ComPDFKit.getDefaultConfig({
  global: {
    bota: {
      tabs: ['outline', 'annotations'],
      menus: {
        annotations: {
          global: botaMenus('importAnnotation', 'exportAnnotation', 'removeAllAnnotation'),
          item: [
            { id: 'reviewStatus', subMenus: ['accepted', 'cancelled', 'none'] },
            { id: 'markedStatus'},
            { id: 'more', subMenus: ['delete']}
          ]
        }
      }
    }
  }
})

Example Result:

AndroidiOS
guides_rn_3.8.8_4guides_rn_3.8.8_3

Annotation Global Menu Options

OptionDescription
importAnnotationImport annotations
exportAnnotationExport annotations
removeAllAnnotationRemove all annotations
removeAllReplyRemove all annotation replies

BOTA Configuration Fields

FieldDescription
tabsTabs displayed in the BOTA panel. Supported values are outline, bookmark, and annotations.
menus.annotations.globalGlobal actions displayed in the annotations list toolbar. Use botaMenus(...) for concise configuration.
menus.annotations.itemActions displayed for each annotation item. Use subMenus to limit nested review or more-menu options.

Note: BOTA menu customization applies to the SDK-provided BOTA panel. If you build a custom BOTA screen in React Native, handle those menu actions in your own component.

Annotation Review Status Submenu Options

OptionDescription
acceptedAccepted
rejectedRejected
cancelledCancelled
completedCompleted
noneNo status

More Menu Options

OptionDescription
addReplyAdd annotation reply
viewReplyView annotation replies
deleteDelete annotation