openapi: 3.2.0 info: title: Bigtincan Hub Public Tab API version: '1.0' description: 'The Bigtincan Hub Public API provides programmatic access to the Bigtincan sales enablement platform: stories, files, channels, tabs, groups, users, tags, bookmarks, forms, public file shares, search, CRM story recommendations, interaction tracking and admin management.' contact: name: Bigtincan Support url: https://www.bigtincan.com/contact/ termsOfService: https://www.bigtincan.com/eula/ servers: - url: https://pubapi.bigtincan.com/ security: - oauth2_password: [] - oauth2_authorization_code: [] tags: - name: Tab paths: /v1/tab/all: get: tags: - Tab summary: Retrieve tabs. description: Retrieve tabs. Tab access is limited to the requester's group associations. operationId: get-v1-tab-all parameters: - name: search in: query description: Search by tab name required: false schema: type: string - name: type in: query description: Filter by tab type (regular/web) required: false schema: type: string - name: page in: query description: 'Pagination: current page' required: false schema: type: integer - name: limit in: query description: 'Pagination: results per page. Max 100' required: false schema: type: integer default: 10 - $ref: '#/components/schemas/As-User' name: As-User in: header required: false responses: '200': description: A list of tabs '400': $ref: '#/components/responses/400' '401': $ref: '#/components/responses/401' '403': $ref: '#/components/responses/403' /v1/admin/tabs: get: tags: - Tab summary: Retrieve admin tabs. description: Get all tabs as an admin. operationId: get-v1-admin-tabs parameters: - name: search in: query description: Search by tab name required: false schema: type: string - name: include_channel_count in: query description: Include channel count of tab required: false schema: type: boolean default: false - name: page in: query description: 'Pagination: current page' required: false schema: type: integer - name: limit in: query description: 'Pagination: results per page. Max 100' required: false schema: type: integer default: 10 responses: '200': description: A list of tabs '400': $ref: '#/components/responses/400' '401': $ref: '#/components/responses/401' '403': $ref: '#/components/responses/403' /v1/tab: post: tags: - Tab summary: Create a tab. description: Create a tab. operationId: post-v1-tab parameters: - $ref: '#/components/schemas/As-User' name: As-User in: header required: false responses: '201': description: Tab object '400': $ref: '#/components/responses/400' '401': $ref: '#/components/responses/401' '403': $ref: '#/components/responses/403' requestBody: content: application/json: schema: $ref: '#/components/schemas/Add_Tab_Request' description: Tab object required: true /v1/tabs/{tab_id}/channels/{channel_id}/groups: put: tags: - Tab summary: Add groups to a tab. description: "Add one or more groups to a tab-channel relationship to complete a full relationship. The tab and channel will become visible to all users in the groups based on the permissions set.\n\n Permissions:\n - View: 1\n - Publish: 2\n - View and Publish: 3\n - View and Edit: 9" operationId: put-v1-tabs-by-tab-id-channels-by-channel-id-groups parameters: - name: tab_id in: path description: Tab ID required: true schema: type: string - name: channel_id in: path description: Channel ID required: true schema: type: string - $ref: '#/components/schemas/As-User' name: As-User in: header required: false responses: '200': description: Relationship object '400': $ref: '#/components/responses/400' '401': $ref: '#/components/responses/401' '403': $ref: '#/components/responses/403' requestBody: content: application/json: schema: $ref: '#/components/schemas/Add_Group_To_Tab_Request' description: Group object required: true /v1/tabs/{tab_id}/channels/{channel_id}/groups/{group_id}: delete: tags: - Tab summary: Remove a group from a tab. description: Remove a group from a tab. operationId: delete-v1-tabs-by-tab-id-channels-by-channel-id-groups-by-group-id parameters: - name: tab_id in: path description: Tab ID required: true schema: type: string - name: channel_id in: path description: Channel ID required: true schema: type: string - name: group_id in: path description: Group ID required: true schema: type: string - $ref: '#/components/schemas/As-User' name: As-User in: header required: false responses: '204': description: Group removed from tab '400': $ref: '#/components/responses/400' '401': $ref: '#/components/responses/401' '403': $ref: '#/components/responses/403' /v1/tab/{tab_id}: delete: tags: - Tab summary: Delete a tab. description: Delete a tab. operationId: delete-v1-tab-by-tab-id parameters: - name: tab_id in: path description: Tab ID required: true schema: type: string - $ref: '#/components/schemas/As-User' name: As-User in: header required: false responses: '204': description: Tab deleted '400': $ref: '#/components/responses/400' '401': $ref: '#/components/responses/401' '403': $ref: '#/components/responses/403' /v1/admin/tabs/{tab_id}: patch: tags: - Tab summary: Modify a tab description: Modify a tab operationId: patch-v1-admin-tabs-by-tab-id parameters: - name: tab_id in: path description: Tab id required: true schema: type: string responses: '200': description: Tab updated '400': $ref: '#/components/responses/400' '401': $ref: '#/components/responses/401' '403': $ref: '#/components/responses/403' '404': $ref: '#/components/responses/404' '422': description: Validation error requestBody: content: application/json: schema: $ref: '#/components/schemas/Modify_tab_request' description: Tab object required: true components: schemas: Add_Tab_Request: required: - name properties: name: description: Tab name type: string description: description: Tab description type: string type: object As-User: description: Perform action on behalf of this user ID. type: string Add_Group_To_Tab_Request: type: array items: required: - id - permissions properties: id: description: Group ID type: string permissions: description: Permissions type: integer default: 1 type: object Modify_tab_request: properties: name: description: Tab name type: string description: description: Tab description type: string cover_art_url: description: Cover Art URL type: string default: '' type: object responses: '404': description: Not found '403': description: Forbidden '401': description: Unauthorized '400': description: Bad request securitySchemes: oauth2_password: type: oauth2 flows: password: scopes: {} tokenUrl: https://pubapi.bigtincan.com/services/oauth2/token description: 'Client ID + Client Secret + API Key exchanged at /services/oauth2/token with grant_type=password. Returns access_token + refresh_token. The As-User header is available only with this flow. Source: https://pubapi.bigtincan.com/doc/interactive/' oauth2_authorization_code: type: oauth2 flows: authorizationCode: scopes: {} authorizationUrl: https://pubapi.bigtincan.com/services/oauth2/authorize tokenUrl: https://pubapi.bigtincan.com/services/oauth2/token description: 'Interactive Bigtincan Hub user login. The As-User header is disabled for this flow. Source: https://pubapi.bigtincan.com/doc/interactive/'