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

# Get connection

> Returns connection metadata without encrypted credentials.



## OpenAPI

````yaml /api-reference/openapi.json get /workspaces/{workspaceSlug}/connections/{connectionId}/
openapi: 3.1.0
info:
  title: Nvisy API
  summary: Document processing and annotation platform
  description: >-
    Nvisy provides intelligent document processing, annotation, and analysis
    capabilities. This API enables document upload, OCR processing, embedding
    generation, and semantic search across your document collections.
  termsOfService: https://nvisy.com/legal/terms-of-service
  contact:
    name: Nvisy Support
    url: https://nvisy.com
    email: hello@nvisy.com
  license:
    name: Proprietary
    url: https://nvisy.com/license
  version: 0.1.0
servers: []
security: []
tags:
  - name: Accounts
    description: Account management and profile operations
  - name: Authentication
    description: Login, signup, and token management
  - name: Workspaces
    description: Workspace creation and management
  - name: Files
    description: File upload, download, and management
  - name: Members
    description: Workspace member management
  - name: Invites
    description: Workspace invitation handling
  - name: API Tokens
    description: API token management
  - name: Connections
    description: External provider connections
  - name: Pipelines
    description: Redaction pipeline configuration
  - name: Pipeline Runs
    description: Pipeline run execution and review
  - name: Policies
    description: Redaction policy configuration
  - name: Webhooks
    description: Webhook configuration
  - name: Notifications
    description: Account notification management
  - name: Health
    description: Service health checks
paths:
  /workspaces/{workspaceSlug}/connections/{connectionId}/:
    get:
      tags:
        - Connections
      summary: Get connection
      description: Returns connection metadata without encrypted credentials.
      parameters:
        - in: path
          name: workspaceSlug
          description: URL-safe workspace identifier.
          required: true
          schema:
            description: URL-safe workspace identifier.
            type: string
          style: simple
        - in: path
          name: connectionId
          description: Opaque identifier of the connection.
          required: true
          schema:
            $ref: '#/components/schemas/ConnectionId'
            description: Opaque identifier of the connection.
          style: simple
      responses:
        '200':
          description: >-
            Response type for a workspace connection.


            Note: The encrypted connection data is never exposed in API
            responses.

            Only metadata about the connection is returned.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Connection'
        '401':
          description: >-
            HTTP error response representation with security-conscious design.


            This struct contains all the information needed to serialize an
            error

            response, including the error name, message, HTTP status code,
            resource

            information, and user-friendly messages.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '403':
          description: >-
            HTTP error response representation with security-conscious design.


            This struct contains all the information needed to serialize an
            error

            response, including the error name, message, HTTP status code,
            resource

            information, and user-friendly messages.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
        '404':
          description: >-
            HTTP error response representation with security-conscious design.


            This struct contains all the information needed to serialize an
            error

            response, including the error name, message, HTTP status code,
            resource

            information, and user-friendly messages.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
      security:
        - BearerAuth: []
components:
  schemas:
    ConnectionId:
      description: Opaque conn identifier (conn_<uuid>).
      type: string
      pattern: >-
        ^conn_[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$
    Connection:
      description: |-
        Response type for a workspace connection.

        Note: The encrypted connection data is never exposed in API responses.
        Only metadata about the connection is returned.
      type: object
      properties:
        createdAt:
          description: When the connection was created.
          type: string
          format: date-time
        createdBy:
          description: Account that created this connection.
          allOf:
            - $ref: '#/components/schemas/AccountRef'
        displayName:
          description: Human-readable connection display name.
          type: string
        id:
          description: Opaque identifier of the connection.
          allOf:
            - $ref: '#/components/schemas/ConnectionId'
        isActive:
          description: Whether the connection is enabled.
          type: boolean
        provider:
          description: Provider identifier (`s3`, `azure`, `gcs`, `openai`, `ollama`, ...).
          type: string
        sync:
          $ref: '#/components/schemas/SyncSchedule'
          description: Sync configuration; present only for sync-capable connections.
        updatedAt:
          description: When the connection was last updated.
          type: string
          format: date-time
        workspaceSlug:
          description: Handle of the workspace this connection belongs to.
          allOf:
            - $ref: '#/components/schemas/Handle'
      required:
        - id
        - workspaceSlug
        - createdBy
        - displayName
        - provider
        - isActive
        - createdAt
        - updatedAt
    ErrorResponse:
      description: |-
        HTTP error response representation with security-conscious design.

        This struct contains all the information needed to serialize an error
        response, including the error name, message, HTTP status code, resource
        information, and user-friendly messages.
      type: object
      properties:
        message:
          description: User-friendly error message safe for client display
          type: string
        name:
          description: The error name/type identifier
          type: string
        resource:
          description: The resource that the error relates to (optional, set by handler)
          type: string
        suggestion:
          description: Helpful suggestion for resolving the error (optional)
          type: string
        validation:
          description: Validation error details for field-specific errors
          type: array
          items:
            $ref: '#/components/schemas/ValidationErrorDetail'
      required:
        - name
        - message
    AccountRef:
      description: >-
        Public reference to the account behind a resource — whoever created it,

        uploaded it, triggered it, or performed it.


        Reused across resource responses so an account is always presented the
        same

        way: a handle plus an optional avatar.
      type: object
      properties:
        avatarUrl:
          description: Serve path of the account's avatar, when set.
          type: string
        displayName:
          description: Human-readable display name, when set.
          type: string
        username:
          description: Handle of the account.
          allOf:
            - $ref: '#/components/schemas/Handle'
      required:
        - username
    SyncSchedule:
      description: >-
        A connection's sync configuration, present only for sync-capable
        connections.
      type: object
      properties:
        deletionPolicy:
          description: How an import reconciles files whose source object was deleted.
          allOf:
            - $ref: '#/components/schemas/SyncDeletionPolicy'
        lastSynced:
          description: When the connection last synced successfully, if ever.
          type: string
          format: date-time
        scheduleCron:
          description: Cron expression for scheduled imports, if configured.
          type: string
        syncMode:
          description: Whether the connection imports data in or exports data out.
          allOf:
            - $ref: '#/components/schemas/SyncMode'
      required:
        - syncMode
        - deletionPolicy
    Handle:
      description: >-
        Lowercase, dash-separated identifier used in URLs and as account
        handles.
      type: string
      maxLength: 32
      minLength: 3
      pattern: ^[a-z0-9]+(?:-[a-z0-9]+)*$
    ValidationErrorDetail:
      description: Validation error details for field-specific errors.
      type: object
      properties:
        code:
          description: Error code for the validation failure
          type: string
        field:
          description: Field name that failed validation
          type: string
        message:
          description: Human-readable error message
          type: string
        params:
          description: Additional parameters related to the validation error
          type: object
          additionalProperties: true
      required:
        - field
        - code
        - message
    SyncDeletionPolicy:
      description: >-
        What an import does with a file whose source object no longer exists.


        Corresponds to the `SYNC_DELETION_POLICY` PostgreSQL enum. Deletion is
        opt-in

        per connection: the default `Ignore` keeps imports strictly additive so
        a

        transient listing error or a misconfigured root path can never remove
        files.
      oneOf:
        - description: Leave the imported file untouched when its source object is gone.
          type: string
          const: ignore
        - description: >-
            Delete the imported file when its source object is gone: the file
            row is

            soft-deleted (preserving import provenance) and its stored object is

            removed to reclaim storage.
          type: string
          const: delete
    SyncMode:
      description: >-
        The direction a connection syncs data.


        Corresponds to the `SYNC_MODE` PostgreSQL enum: `Import` fetches objects
        from

        the connection into the workspace; `Export` pushes workspace files out.
      oneOf:
        - description: Fetch objects from the connection into the workspace.
          type: string
          const: import
        - description: Push workspace files out to the connection.
          type: string
          const: export

````