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

# Update connector by ID

> Update an existing connector's **label**, **description**, and **share_with_org**. For **email** connectors, you may also update **config** (e.g. `allowed_emails`). For **investment_research** connectors, **`config` cannot be updated**, broker credentials are fixed at creation. To use different broker credentials, create a new connector. As a PUT request, required fields follow the schema; leaving out a field can clear or default it. The connector **type** cannot be changed.



## OpenAPI

````yaml /api-rest/openapi/openapi_content_data.json put /contents/v1/connectors/{connector_id}
openapi: 3.1.0
info:
  title: Bigdata Content API
  description: API for managing and accessing private content documents uploaded by users.
  version: 1.0.0
servers:
  - url: https://api.bigdata.com/
security:
  - ApiKeyAuth: []
paths:
  /contents/v1/connectors/{connector_id}:
    put:
      tags:
        - Connectors
      summary: Update connector by ID
      description: >-
        Update an existing connector's **label**, **description**, and
        **share_with_org**. For **email** connectors, you may also update
        **config** (e.g. `allowed_emails`). For **investment_research**
        connectors, **`config` cannot be updated**, broker credentials are fixed
        at creation. To use different broker credentials, create a new
        connector. As a PUT request, required fields follow the schema; leaving
        out a field can clear or default it. The connector **type** cannot be
        changed.
      parameters:
        - name: connector_id
          in: path
          required: true
          description: UUID of the connector to update.
          schema:
            type: string
            format: uuid
            example: 019a9612-bfad-758c-884e-37dd8c6ad2cb
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ConnectorUpdatePayload'
            example:
              label: Broker Research - Daily Reports
              description: Collects daily reports from the broker's research team
              share_with_org: true
              config:
                allowed_emails:
                  - user1@bigdata.com
                  - user2@bigdata.com
      responses:
        '200':
          description: >-
            The updated connector. Subsequent ingestion uses the new
            configuration.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Connector'
              example:
                connector_id: 019c4c5c-b021-7a72-8651-53e01b8f9334
                user_id: user_id_001
                org_id: org_id_001
                share_with_org: true
                label: Broker Research - Daily Reports
                type: email
                description: Collects daily reports from the broker's research team
                config:
                  allowed_emails:
                    - user1@example.com
                    - user2@example.com
                created_at: '2026-02-11T11:01:09.574095Z'
                updated_at: '2026-02-11T11:15:30.123456Z'
                archived: false
        '400':
          description: >-
            Invalid request (e.g. malformed connector_id or invalid request
            body).
        '401':
          description: Unauthorized - Invalid or missing API key.
        '404':
          description: No connector found with this ID, or the user does not have access.
components:
  schemas:
    ConnectorUpdatePayload:
      type: object
      description: Payload for updating a connector.
      properties:
        label:
          type: string
          description: New display name for the connector. Required.
          example: Broker Research - Daily Reports
        description:
          type: string
          description: New optional description.
          default: ''
          example: Collects daily reports from the broker's research team
        share_with_org:
          type: boolean
          description: >-
            If true, all members of your organization can access the processed
            content. If false, only you can access the processed content.
          default: false
          example: true
        config:
          description: >-
            Connector-specific configuration. The structure depends on the
            connector type.
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/EmailConnectorConfig'
              title: Email
            - title: Investment research (no config update)
              type: 'null'
              description: >-
                Broker credentials cannot be updated via PUT. Use null or omit
                `config` when updating label, description, or sharing only.
      required:
        - label
    Connector:
      type: object
      description: >-
        An ingestion source (e.g. email inbox or investment research / broker
        feed). Returned by Create/Get/Update connector and List connectors.
      properties:
        connector_id:
          type: string
          format: uuid
          description: >-
            Unique identifier for the connector. Use when updating, deleting, or
            filtering documents by connector.
          example: 019a9612-bfad-758c-884e-37dd8c6ad2cb
        user_id:
          type: string
          description: ID of the user who owns the connector.
          example: user_id_001
        org_id:
          type: string
          description: ID of the organization the connector belongs to.
          example: org_id_001
        share_with_org:
          type: boolean
          description: >-
            If true, all members of your organization can access the processed
            content. If false, only you can access the processed content.
          example: true
        label:
          type: string
          description: Display name for the connector (e.g. for UI or admin lists).
          example: Broker Research - Daily Reports
        type:
          type: string
          description: >-
            Connector type. Determines the configuration and how content is
            ingested.
          enum:
            - email
            - investment_research
        description:
          type: string
          description: >-
            Optional human-readable description of what the connector is used
            for.
          example: Collects daily reports from the broker's research team
        config:
          description: >-
            Type-specific settings. Email connectors return inbox and allowed
            senders; investment research connectors return `user_id` only (never
            `user_password`).
          nullable: true
          oneOf:
            - $ref: '#/components/schemas/EmailConnectorResponseConfig'
              title: Email
            - $ref: '#/components/schemas/InvestmentResearchConnectorResponseConfig'
              title: Investment research
        files_count:
          type: integer
          description: >-
            Number of files ingested through this connector, when tracked (e.g.
            investment research sync).
          example: 10
        last_sync_at:
          type: string
          format: date-time
          nullable: true
          description: >-
            Timestamp of the last sync from the external source, when
            applicable.
          example: '2026-04-07T09:36:34.195040Z'
        last_sync_status:
          type: string
          nullable: true
          description: Outcome of the last sync (e.g. SUCCESS), when applicable.
          example: SUCCESS
        last_sync_error_msg:
          type: string
          nullable: true
          description: Error message from the last sync when it failed; null on success.
          example: null
        last_sync_count:
          type: integer
          nullable: true
          description: Number of items processed in the last sync, when applicable.
          example: 3200
        created_at:
          type: string
          format: date-time
          description: Timestamp when the connector was created.
          example: '2026-02-11T11:01:09.574095Z'
        updated_at:
          type: string
          format: date-time
          description: Timestamp when the connector was last updated.
          example: '2026-02-11T11:01:09.574102Z'
        archived:
          type: boolean
          description: Whether the connector is archived.
          example: false
      required:
        - connector_id
        - user_id
        - org_id
        - share_with_org
        - label
        - type
        - created_at
        - updated_at
        - archived
    EmailConnectorConfig:
      type: object
      description: Configuration for email connectors.
      properties:
        allowed_emails:
          type: array
          description: >-
            List of approved email addresses. Only emails from these addresses
            will be processed.
          items:
            type: string
            format: email
          default: []
          example:
            - user@example.com
            - admin@example.com
        email_hash:
          type: string
          description: Unique hash identifier for the email connector.
          example: a1b2c3d4e5f6
        email:
          type: string
          format: email
          description: >-
            The Bigdata inbox address for this connector. Returned after
            creation; forward emails from allowed_emails to this address to
            ingest them.
          nullable: true
          example: connector@bigdata.com
      required:
        - email_hash
    EmailConnectorResponseConfig:
      type: object
      description: >-
        Email connector configuration as returned by the API. Contains
        allowed_emails and the inbox email address.
      properties:
        allowed_emails:
          type: array
          description: Sender addresses that are allowed to send content to this connector.
          items:
            type: string
            format: email
          example:
            - user@example.com
            - admin@example.com
        email_hash:
          type: string
          description: Unique hash identifier for the email connector.
          example: a1b2c3d4e5f6
        email:
          type: string
          format: email
          description: >-
            Inbox address to forward emails to; only messages from
            allowed_emails are processed.
          nullable: true
          example: connector@bigdata.com
    InvestmentResearchConnectorResponseConfig:
      type: object
      description: >-
        Investment research connector configuration as returned by the API. Only
        non-secret fields are present.
      properties:
        user_id:
          type: string
          description: Broker or research portal user id (often an email address).
          example: API@ravenpack.com
      required:
        - user_id
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: X-API-KEY
      description: >-
        Your API key. Include it in every request as the X-API-KEY header.
        Create and manage keys in the Developer Platform.

````