Vessel Connections API

The Connections API from Vessel — 4 operation(s) for connections.

OpenAPI Specification

vessel-connections-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Vessel CRM Accounts Connections API
  description: The Vessel CRM API provides a unified interface for CRM operations across Salesforce, HubSpot, Zoho, Pipedrive, Close, Freshsales, Microsoft Dynamics, Affinity, monday.com, and Freshdesk. Operations are normalized across all CRM systems with consistent object models for contacts, deals, accounts, leads, notes, tasks, emails, calls, events, and users. Authentication uses vessel-api-token header and accessToken query parameter.
  version: '1.0'
  contact:
    name: Vessel Support
    email: support@vessel.dev
    url: https://www.vessel.dev/
  license:
    name: Proprietary
    url: https://www.vessel.dev/
servers:
- url: https://api.vessel.land
  description: Vessel CRM API
security:
- apiToken: []
tags:
- name: Connections
paths:
  /connection/connection:
    delete:
      operationId: deleteConnection
      summary: Delete a Connection
      description: Permanently deletes a CRM connection and frees associated resources. Always call this when a user disconnects their CRM.
      tags:
      - Connections
      parameters:
      - name: accessToken
        in: query
        required: true
        schema:
          type: string
      responses:
        '200':
          description: Connection deleted
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
  /connections/list:
    post:
      operationId: listConnections
      summary: List All Connections
      description: Returns all active connections for your API token. Useful for managing user integrations and tracking connection status.
      tags:
      - Connections
      security:
      - apiToken: []
      responses:
        '200':
          description: List of connections
          content:
            application/json:
              schema:
                type: object
                properties:
                  result:
                    type: object
                    properties:
                      connections:
                        type: array
                        items:
                          $ref: '#/components/schemas/Connection'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error_2'
  /connections/get:
    post:
      operationId: getConnection
      summary: Get a Connection
      description: Returns details for a specific connection by connection ID.
      tags:
      - Connections
      security:
      - apiToken: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - id
              properties:
                id:
                  type: string
                  description: Connection ID to retrieve
      responses:
        '200':
          description: Connection details
          content:
            application/json:
              schema:
                type: object
                properties:
                  result:
                    $ref: '#/components/schemas/Connection'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error_2'
        '404':
          description: Connection not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error_2'
  /connections/delete:
    post:
      operationId: deleteConnection
      summary: Delete a Connection
      description: Permanently deletes a connection and frees associated resources. Call this when a user disconnects a third-party integration from your app.
      tags:
      - Connections
      security:
      - apiToken: []
      - accessToken: []
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - id
              properties:
                id:
                  type: string
                  description: Connection ID to delete
      responses:
        '200':
          description: Connection deleted
          content:
            application/json:
              schema:
                type: object
                properties:
                  result:
                    type: object
                    properties:
                      success:
                        type: boolean
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error_2'
components:
  schemas:
    Connection:
      type: object
      description: A user's authenticated connection to a third-party integration
      properties:
        connectionId:
          type: string
          description: Unique connection identifier
        integrationId:
          type: string
          description: Connected integration identifier
        status:
          type: string
          description: Current connection status
          enum:
          - NEW_CONNECTION
          - INITIAL_SYNCED
          - READY
        createdAt:
          type: string
          format: date-time
          description: Connection creation timestamp
    Error:
      type: object
      description: API error response
      properties:
        error:
          type: string
          description: Error message
        code:
          type: string
          description: Error code
    Error_2:
      type: object
      description: API error response
      properties:
        error:
          type: object
          properties:
            message:
              type: string
              description: Human-readable error message
            code:
              type: string
              description: Error code identifier
  securitySchemes:
    apiToken:
      type: apiKey
      in: header
      name: vessel-api-token
      description: Your Vessel API token for server-side authentication