freshworks Notes API

Manage notes attached to CRM records.

OpenAPI Specification

freshworks-notes-api-openapi.yml Raw ↑
openapi: 3.1.0
info:
  title: Freshworks Freshcaller Accounts Notes API
  description: The Freshcaller API provides access to cloud-based phone system functionality for contact center operations. It allows developers to export call data, call recordings, user information, and agent team details stored in the Freshcaller system. The API supports integration of voice and telephony workflows into broader business applications, enabling organizations to automate call center reporting, synchronize agent data, and build custom dashboards around their phone operations.
  version: '1.0'
  contact:
    name: Freshworks Support
    url: https://support.freshcaller.com/
  termsOfService: https://www.freshworks.com/terms/
servers:
- url: https://{domain}.freshcaller.com/api/v1
  description: Freshcaller Production Server
  variables:
    domain:
      default: yourdomain
      description: Your Freshcaller subdomain
security:
- apiKeyAuth: []
tags:
- name: Notes
  description: Manage notes attached to CRM records.
paths:
  /notes:
    post:
      operationId: createNote
      summary: Create a note
      description: Creates a new note attached to a CRM record (contact, account, deal, or lead).
      tags:
      - Notes
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/NoteCreate'
      responses:
        '200':
          description: Note created successfully
          content:
            application/json:
              schema:
                type: object
                properties:
                  note:
                    $ref: '#/components/schemas/Note'
        '400':
          $ref: '#/components/responses/BadRequest'
        '401':
          $ref: '#/components/responses/Unauthorized'
  /notes/{note_id}:
    delete:
      operationId: deleteNote
      summary: Delete a note
      description: Deletes a note from the CRM.
      tags:
      - Notes
      parameters:
      - name: note_id
        in: path
        required: true
        description: The ID of the note.
        schema:
          type: integer
      responses:
        '204':
          description: Note deleted successfully
        '401':
          $ref: '#/components/responses/Unauthorized'
        '404':
          $ref: '#/components/responses/NotFound'
components:
  schemas:
    Note:
      type: object
      properties:
        id:
          type: integer
          description: Unique ID of the note.
        description:
          type: string
          description: Content of the note.
        targetable_type:
          type: string
          description: Type of associated record.
        targetable_id:
          type: integer
          description: ID of associated record.
        created_at:
          type: string
          format: date-time
          description: Timestamp when created.
        updated_at:
          type: string
          format: date-time
          description: Timestamp when last updated.
    NoteCreate:
      type: object
      required:
      - description
      - targetable_type
      - targetable_id
      properties:
        description:
          type: string
          description: Content of the note.
        targetable_type:
          type: string
          description: Type of record to attach note to (Contact, SalesAccount, Deal, Lead).
        targetable_id:
          type: integer
          description: ID of the record.
    Error:
      type: object
      properties:
        description:
          type: string
          description: Human-readable error message.
        errors:
          type: array
          items:
            type: object
            properties:
              field:
                type: string
                description: Field that caused the error.
              message:
                type: string
                description: Error message.
              code:
                type: string
                description: Error code.
  responses:
    NotFound:
      description: The requested resource was not found.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    Unauthorized:
      description: Authentication credentials are missing or invalid.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
    BadRequest:
      description: The request body or parameters are invalid.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error'
  securitySchemes:
    apiKeyAuth:
      type: apiKey
      in: header
      name: X-Api-Auth
      description: API key authentication. The API key can be found in your Freshcaller admin settings.
externalDocs:
  description: Freshcaller API Documentation
  url: https://developers.freshcaller.com/api/