Skip to main content

Productboard connector reference

Beta

This feature is in Beta. To use it, a workspace admin must turn on Lakeflow Connect for Productboard from the Previews page. See Manage Databricks previews.

The managed Productboard connector in Lakeflow Connect supports 18 source tables in the default schema. Only notes syncs incrementally, using the updatedAt cursor. The other 17 tables use full refresh.

Supported source tables​

The Productboard connector supports the following source tables, all under the default source schema:

Source table

Primary key

Description

Sync mode

Cursor field

features

id

Features and subfeatures, with all built-in and custom field values.

Full refresh only

products

id

Products in the product hierarchy, with field values and the first page of relationships.

Full refresh only

components

id

Components in the product hierarchy, with field values.

Full refresh only

feature_statuses

id

The status values that can be assigned to features and subfeatures.

Full refresh only

notes

id

Customer feedback notes, with field values, archive state, and the first page of relationships.

Incremental

updatedAt

companies

id

Companies, with field values and the first page of relationships.

Full refresh only

users

id

Users (customer contacts), with field values and the first page of relationships.

Full refresh only

members

id

Workspace members, including disabled members and members with pending invitations.

Full refresh only

release_groups

id

Release groups, with field values and the first page of relationships.

Full refresh only

releases

id

Releases, with field values and the first page of relationships.

Full refresh only

objectives

id

Objectives, with field values and the first page of relationships.

Full refresh only

key_results

id

Key results, with field values and the first page of relationships.

Full refresh only

initiatives

id

Initiatives, with field values and the first page of relationships.

Full refresh only

teams

id

Workspace teams.

Full refresh only

feature_relationships

feature_id, target_id, relationship_type

The complete set of relationships for each feature and subfeature, one row per relationship.

Full refresh only

component_relationships

component_id, target_id, relationship_type

The complete set of relationships for each component, one row per relationship.

Full refresh only

field_definitions

id, entity_type

Field configuration for each entity type, including built-in and custom fields.

Full refresh only

note_field_definitions

id, note_type

Field configuration for each note type (textNote, conversationNote, and opportunityNote).

Full refresh only

Source table

Primary key

Description

Sync mode

Cursor field

features

id

Features and subfeatures, with all built-in and custom field values.

Full refresh only

products

id

Products in the product hierarchy, with field values and the first page of relationships.

Full refresh only

components

id

Components in the product hierarchy, with field values.

Full refresh only

feature_statuses

id

The status values that can be assigned to features and subfeatures.

Full refresh only

notes

id

Customer feedback notes, with field values, archive state, and the first page of relationships.

Incremental

updatedAt

companies

id

Companies, with field values and the first page of relationships.

Full refresh only

users

id

Users (customer contacts), with field values and the first page of relationships.

Full refresh only

members

id

Workspace members, including disabled members and members with pending invitations.

Full refresh only

release_groups

id

Release groups, with field values and the first page of relationships.

Full refresh only

releases

id

Releases, with field values and the first page of relationships.

Full refresh only

objectives

id

Objectives, with field values and the first page of relationships.

Full refresh only

key_results

id

Key results, with field values and the first page of relationships.

Full refresh only

initiatives

id

Initiatives, with field values and the first page of relationships.

Full refresh only

teams

id

Workspace teams.

Full refresh only

feature_relationships

feature_id, target_id, relationship_type

The complete set of relationships for each feature and subfeature, one row per relationship.

Full refresh only

component_relationships

component_id, target_id, relationship_type

The complete set of relationships for each component, one row per relationship.

Full refresh only

field_definitions

id, entity_type

Field configuration for each entity type, including built-in and custom fields.

Full refresh only

note_field_definitions

id, note_type

Field configuration for each note type (textNote, conversationNote, and opportunityNote).

Full refresh only

Connector options​

The Productboard connector has the following option. For usage, see Examples.

Option

Type

Scope

Required

Applies to

Description

start_datetime

String

Pipeline

No

notes

The earliest updatedAt value to ingest on the first sync, in yyyy-MM-ddTHH:mm:ssZ format (for example, 2024-01-01T00:00:00Z). Defaults to 2020-01-01T00:00:00Z.

Option

Type

Scope

Required

Applies to

Description

start_datetime

String

Pipeline

No

notes

The earliest updatedAt value to ingest on the first sync, in yyyy-MM-ddTHH:mm:ssZ format (for example, 2024-01-01T00:00:00Z). Defaults to 2020-01-01T00:00:00Z.

Destination table schemas​

features​

Primary key: id Sync mode: Full refresh only

Field

Data type

id

STRING

type

STRING

createdAt

TIMESTAMP

updatedAt

TIMESTAMP

fields

VARIANT

links

STRUCT<self: STRING, html: STRING>

metadata

STRUCT<source: STRUCT<system: STRING, recordId: STRING, url: STRING>>

Field

Data type

id

STRING

type

STRING

createdAt

TIMESTAMP

updatedAt

TIMESTAMP

fields

VARIANT

links

STRUCT<self: STRING, html: STRING>

metadata

STRUCT<source: STRUCT<system: STRING, recordId: STRING, url: STRING>>

note

This table does not support SCD type 2 because it has VARIANT columns.

products​

Primary key: id Sync mode: Full refresh only

Field

Data type

id

STRING

type

STRING

createdAt

TIMESTAMP

updatedAt

TIMESTAMP

fields

VARIANT

links

STRUCT<self: STRING, html: STRING>

relationships

STRUCT<data: ARRAY<STRUCT<type: STRING, target: STRUCT<id: STRING, type: STRING, links: STRUCT<self: STRING, html: STRING>>>>, links: STRUCT<next: STRING>>

metadata

STRUCT<source: STRUCT<system: STRING, recordId: STRING, url: STRING>>

Field

Data type

id

STRING

type

STRING

createdAt

TIMESTAMP

updatedAt

TIMESTAMP

fields

VARIANT

links

STRUCT<self: STRING, html: STRING>

relationships

STRUCT<data: ARRAY<STRUCT<type: STRING, target: STRUCT<id: STRING, type: STRING, links: STRUCT<self: STRING, html: STRING>>>>, links: STRUCT<next: STRING>>

metadata

STRUCT<source: STRUCT<system: STRING, recordId: STRING, url: STRING>>

note

This table does not support SCD type 2 because it has VARIANT columns.

components​

Primary key: id Sync mode: Full refresh only

Field

Data type

id

STRING

type

STRING

createdAt

TIMESTAMP

updatedAt

TIMESTAMP

fields

VARIANT

links

STRUCT<self: STRING, html: STRING>

metadata

STRUCT<source: STRUCT<system: STRING, recordId: STRING, url: STRING>>

Field

Data type

id

STRING

type

STRING

createdAt

TIMESTAMP

updatedAt

TIMESTAMP

fields

VARIANT

links

STRUCT<self: STRING, html: STRING>

metadata

STRUCT<source: STRUCT<system: STRING, recordId: STRING, url: STRING>>

note

This table does not support SCD type 2 because it has VARIANT columns.

feature_statuses​

Primary key: id Sync mode: Full refresh only

Field

Data type

id

STRING

name

STRING

assignedEntityTypes

ARRAY<STRING>

Field

Data type

id

STRING

name

STRING

assignedEntityTypes

ARRAY<STRING>

notes​

Primary key: id Sync mode: Incremental Cursor field: updatedAt

Field

Data type

id

STRING

type

STRING

createdAt

TIMESTAMP

updatedAt

TIMESTAMP

fields

VARIANT

archived

BOOLEAN

links

STRUCT<self: STRING, html: STRING>

relationships

STRUCT<data: ARRAY<STRUCT<type: STRING, target: STRUCT<id: STRING, type: STRING, links: STRUCT<self: STRING>>>>, links: STRUCT<next: STRING>>

metadata

STRUCT<source: STRUCT<system: STRING, recordId: STRING, url: STRING>>

Field

Data type

id

STRING

type

STRING

createdAt

TIMESTAMP

updatedAt

TIMESTAMP

fields

VARIANT

archived

BOOLEAN

links

STRUCT<self: STRING, html: STRING>

relationships

STRUCT<data: ARRAY<STRUCT<type: STRING, target: STRUCT<id: STRING, type: STRING, links: STRUCT<self: STRING>>>>, links: STRUCT<next: STRING>>

metadata

STRUCT<source: STRUCT<system: STRING, recordId: STRING, url: STRING>>

note

This table does not support SCD type 2 because it has VARIANT columns.

companies​

Primary key: id Sync mode: Full refresh only

Field

Data type

id

STRING

type

STRING

createdAt

TIMESTAMP

updatedAt

TIMESTAMP

fields

VARIANT

links

STRUCT<self: STRING, html: STRING>

relationships

STRUCT<data: ARRAY<STRUCT<type: STRING, target: STRUCT<id: STRING, type: STRING, links: STRUCT<self: STRING, html: STRING>>>>, links: STRUCT<next: STRING>>

metadata

STRUCT<source: STRUCT<system: STRING, recordId: STRING, url: STRING>>

Field

Data type

id

STRING

type

STRING

createdAt

TIMESTAMP

updatedAt

TIMESTAMP

fields

VARIANT

links

STRUCT<self: STRING, html: STRING>

relationships

STRUCT<data: ARRAY<STRUCT<type: STRING, target: STRUCT<id: STRING, type: STRING, links: STRUCT<self: STRING, html: STRING>>>>, links: STRUCT<next: STRING>>

metadata

STRUCT<source: STRUCT<system: STRING, recordId: STRING, url: STRING>>

note

This table does not support SCD type 2 because it has VARIANT columns.

users​

Primary key: id Sync mode: Full refresh only

Field

Data type

id

STRING

type

STRING

createdAt

TIMESTAMP

updatedAt

TIMESTAMP

fields

VARIANT

links

STRUCT<self: STRING, html: STRING>

relationships

STRUCT<data: ARRAY<STRUCT<type: STRING, target: STRUCT<id: STRING, type: STRING, links: STRUCT<self: STRING, html: STRING>>>>, links: STRUCT<next: STRING>>

metadata

STRUCT<source: STRUCT<system: STRING, recordId: STRING, url: STRING>>

Field

Data type

id

STRING

type

STRING

createdAt

TIMESTAMP

updatedAt

TIMESTAMP

fields

VARIANT

links

STRUCT<self: STRING, html: STRING>

relationships

STRUCT<data: ARRAY<STRUCT<type: STRING, target: STRUCT<id: STRING, type: STRING, links: STRUCT<self: STRING, html: STRING>>>>, links: STRUCT<next: STRING>>

metadata

STRUCT<source: STRUCT<system: STRING, recordId: STRING, url: STRING>>

note

This table does not support SCD type 2 because it has VARIANT columns.

members​

Primary key: id Sync mode: Full refresh only

Field

Data type

id

STRING

type

STRING

createdAt

TIMESTAMP

updatedAt

TIMESTAMP

fields

STRUCT<name: STRING, username: STRING, email: STRING, role: STRING, disabled: BOOLEAN, invitationPending: BOOLEAN, teams: ARRAY<STRUCT<id: STRING, name: STRING, links: STRUCT<self: STRING>>>>

links

STRUCT<self: STRING, html: STRING>

Field

Data type

id

STRING

type

STRING

createdAt

TIMESTAMP

updatedAt

TIMESTAMP

fields

STRUCT<name: STRING, username: STRING, email: STRING, role: STRING, disabled: BOOLEAN, invitationPending: BOOLEAN, teams: ARRAY<STRUCT<id: STRING, name: STRING, links: STRUCT<self: STRING>>>>

links

STRUCT<self: STRING, html: STRING>

release_groups​

Primary key: id Sync mode: Full refresh only

Field

Data type

id

STRING

type

STRING

createdAt

TIMESTAMP

updatedAt

TIMESTAMP

fields

VARIANT

links

STRUCT<self: STRING, html: STRING>

relationships

STRUCT<data: ARRAY<STRUCT<type: STRING, target: STRUCT<id: STRING, type: STRING, links: STRUCT<self: STRING, html: STRING>>>>, links: STRUCT<next: STRING>>

metadata

STRUCT<source: STRUCT<system: STRING, recordId: STRING, url: STRING>>

Field

Data type

id

STRING

type

STRING

createdAt

TIMESTAMP

updatedAt

TIMESTAMP

fields

VARIANT

links

STRUCT<self: STRING, html: STRING>

relationships

STRUCT<data: ARRAY<STRUCT<type: STRING, target: STRUCT<id: STRING, type: STRING, links: STRUCT<self: STRING, html: STRING>>>>, links: STRUCT<next: STRING>>

metadata

STRUCT<source: STRUCT<system: STRING, recordId: STRING, url: STRING>>

note

This table does not support SCD type 2 because it has VARIANT columns.

releases​

Primary key: id Sync mode: Full refresh only

Field

Data type

id

STRING

type

STRING

createdAt

TIMESTAMP

updatedAt

TIMESTAMP

fields

VARIANT

links

STRUCT<self: STRING, html: STRING>

relationships

STRUCT<data: ARRAY<STRUCT<type: STRING, target: STRUCT<id: STRING, type: STRING, links: STRUCT<self: STRING, html: STRING>>>>, links: STRUCT<next: STRING>>

metadata

STRUCT<source: STRUCT<system: STRING, recordId: STRING, url: STRING>>

Field

Data type

id

STRING

type

STRING

createdAt

TIMESTAMP

updatedAt

TIMESTAMP

fields

VARIANT

links

STRUCT<self: STRING, html: STRING>

relationships

STRUCT<data: ARRAY<STRUCT<type: STRING, target: STRUCT<id: STRING, type: STRING, links: STRUCT<self: STRING, html: STRING>>>>, links: STRUCT<next: STRING>>

metadata

STRUCT<source: STRUCT<system: STRING, recordId: STRING, url: STRING>>

note

This table does not support SCD type 2 because it has VARIANT columns.

objectives​

Primary key: id Sync mode: Full refresh only

Field

Data type

id

STRING

type

STRING

createdAt

TIMESTAMP

updatedAt

TIMESTAMP

fields

VARIANT

links

STRUCT<self: STRING, html: STRING>

relationships

STRUCT<data: ARRAY<STRUCT<type: STRING, target: STRUCT<id: STRING, type: STRING, links: STRUCT<self: STRING, html: STRING>>>>, links: STRUCT<next: STRING>>

metadata

STRUCT<source: STRUCT<system: STRING, recordId: STRING, url: STRING>>

Field

Data type

id

STRING

type

STRING

createdAt

TIMESTAMP

updatedAt

TIMESTAMP

fields

VARIANT

links

STRUCT<self: STRING, html: STRING>

relationships

STRUCT<data: ARRAY<STRUCT<type: STRING, target: STRUCT<id: STRING, type: STRING, links: STRUCT<self: STRING, html: STRING>>>>, links: STRUCT<next: STRING>>

metadata

STRUCT<source: STRUCT<system: STRING, recordId: STRING, url: STRING>>

note

This table does not support SCD type 2 because it has VARIANT columns.

key_results​

Primary key: id Sync mode: Full refresh only

Field

Data type

id

STRING

type

STRING

createdAt

TIMESTAMP

updatedAt

TIMESTAMP

fields

VARIANT

links

STRUCT<self: STRING, html: STRING>

relationships

STRUCT<data: ARRAY<STRUCT<type: STRING, target: STRUCT<id: STRING, type: STRING, links: STRUCT<self: STRING, html: STRING>>>>, links: STRUCT<next: STRING>>

metadata

STRUCT<source: STRUCT<system: STRING, recordId: STRING, url: STRING>>

Field

Data type

id

STRING

type

STRING

createdAt

TIMESTAMP

updatedAt

TIMESTAMP

fields

VARIANT

links

STRUCT<self: STRING, html: STRING>

relationships

STRUCT<data: ARRAY<STRUCT<type: STRING, target: STRUCT<id: STRING, type: STRING, links: STRUCT<self: STRING, html: STRING>>>>, links: STRUCT<next: STRING>>

metadata

STRUCT<source: STRUCT<system: STRING, recordId: STRING, url: STRING>>

note

This table does not support SCD type 2 because it has VARIANT columns.

initiatives​

Primary key: id Sync mode: Full refresh only

Field

Data type

id

STRING

type

STRING

createdAt

TIMESTAMP

updatedAt

TIMESTAMP

fields

VARIANT

links

STRUCT<self: STRING, html: STRING>

relationships

STRUCT<data: ARRAY<STRUCT<type: STRING, target: STRUCT<id: STRING, type: STRING, links: STRUCT<self: STRING, html: STRING>>>>, links: STRUCT<next: STRING>>

metadata

STRUCT<source: STRUCT<system: STRING, recordId: STRING, url: STRING>>

Field

Data type

id

STRING

type

STRING

createdAt

TIMESTAMP

updatedAt

TIMESTAMP

fields

VARIANT

links

STRUCT<self: STRING, html: STRING>

relationships

STRUCT<data: ARRAY<STRUCT<type: STRING, target: STRUCT<id: STRING, type: STRING, links: STRUCT<self: STRING, html: STRING>>>>, links: STRUCT<next: STRING>>

metadata

STRUCT<source: STRUCT<system: STRING, recordId: STRING, url: STRING>>

note

This table does not support SCD type 2 because it has VARIANT columns.

teams​

Primary key: id Sync mode: Full refresh only

Field

Data type

id

STRING

type

STRING

createdAt

TIMESTAMP

updatedAt

TIMESTAMP

fields

STRUCT<name: STRING, handle: STRING, description: STRING>

links

STRUCT<self: STRING, html: STRING, members: STRING>

Field

Data type

id

STRING

type

STRING

createdAt

TIMESTAMP

updatedAt

TIMESTAMP

fields

STRUCT<name: STRING, handle: STRING, description: STRING>

links

STRUCT<self: STRING, html: STRING, members: STRING>

feature_relationships​

Primary key: feature_id, target_id, relationship_type Sync mode: Full refresh only

Field

Data type

feature_id

STRING

target

STRUCT<id: STRING, type: STRING, links: STRUCT<self: STRING, html: STRING>>

target_id

STRING

relationship_type

STRING

Field

Data type

feature_id

STRING

target

STRUCT<id: STRING, type: STRING, links: STRUCT<self: STRING, html: STRING>>

target_id

STRING

relationship_type

STRING

component_relationships​

Primary key: component_id, target_id, relationship_type Sync mode: Full refresh only

Field

Data type

component_id

STRING

target

STRUCT<id: STRING, type: STRING, links: STRUCT<self: STRING, html: STRING>>

target_id

STRING

relationship_type

STRING

Field

Data type

component_id

STRING

target

STRUCT<id: STRING, type: STRING, links: STRUCT<self: STRING, html: STRING>>

target_id

STRING

relationship_type

STRING

field_definitions​

Primary key: id, entity_type Sync mode: Full refresh only

Field

Data type

id

STRING

name

STRING

path

STRING

entity_type

STRING

schema

VARIANT

values

VARIANT

constraints

VARIANT

lifecycle

VARIANT

default

VARIANT

links

STRUCT<self: STRING>

Field

Data type

id

STRING

name

STRING

path

STRING

entity_type

STRING

schema

VARIANT

values

VARIANT

constraints

VARIANT

lifecycle

VARIANT

default

VARIANT

links

STRUCT<self: STRING>

note

This table does not support SCD type 2 because it has VARIANT columns.

note_field_definitions​

Primary key: id, note_type Sync mode: Full refresh only

Field

Data type

id

STRING

name

STRING

path

STRING

note_type

STRING

schema

VARIANT

values

VARIANT

constraints

VARIANT

lifecycle

VARIANT

default

VARIANT

Field

Data type

id

STRING

name

STRING

path

STRING

note_type

STRING

schema

VARIANT

values

VARIANT

constraints

VARIANT

lifecycle

VARIANT

default

VARIANT

note

This table does not support SCD type 2 because it has VARIANT columns.

Required OAuth permissions​

The connector requests the following read scopes when it exchanges the signed JWT for an access token. For more information, see Authentication in the Productboard developer documentation.

Permission

Required for

entities:read

features, products, components, feature_statuses, companies, users, release_groups, releases, objectives, key_results, initiatives, feature_relationships, component_relationships, field_definitions

notes:read

notes, note_field_definitions

members:read

members

teams:read

teams

members:pii:read

Unredacted owner and creator emails in entity tables and notes, and unredacted member names, usernames, and emails in members

users:pii:read

Unredacted user names and emails in users

Permission

Required for

entities:read

features, products, components, feature_statuses, companies, users, release_groups, releases, objectives, key_results, initiatives, feature_relationships, component_relationships, field_definitions

notes:read

notes, note_field_definitions

members:read

members

teams:read

teams

members:pii:read

Unredacted owner and creator emails in entity tables and notes, and unredacted member names, usernames, and emails in members

users:pii:read

Unredacted user names and emails in users