Freshworks · Schema

Freshworks Contact

A contact record representing a customer, requester, or lead across Freshworks products including Freshdesk, Freshsales, and Freshchat. Contacts are the primary person entities in the Freshworks ecosystem.

Properties

Name Type Description
id integer Unique identifier of the contact.
first_name string First name of the contact.
last_name string Last name of the contact.
name string Full display name of the contact.
email string Primary email address of the contact.
phone string Primary phone number.
mobile string Mobile phone number.
address string Mailing or street address.
city string City of residence.
state string State or province.
country string Country of residence.
zipcode string ZIP or postal code.
job_title string Job title or position.
department string Department within the company.
company_id integer ID of the associated company or account.
company_name string Name of the associated company.
language string Preferred language (ISO 639-1 code).
time_zone string Time zone identifier (IANA format).
tags array Tags applied to the contact for segmentation.
active boolean Whether the contact is active in the system.
lead_score integer Lead score assigned to the contact (Freshsales).
owner_id integer ID of the sales agent who owns this contact (Freshsales).
custom_fields object Custom field key-value pairs specific to the account configuration.
created_at string Timestamp when the contact was created.
updated_at string Timestamp when the contact was last updated.
View JSON Schema on GitHub

JSON Schema

freshworks-contact-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://freshworks.com/schemas/freshworks/contact.json",
  "title": "Freshworks Contact",
  "description": "A contact record representing a customer, requester, or lead across Freshworks products including Freshdesk, Freshsales, and Freshchat. Contacts are the primary person entities in the Freshworks ecosystem.",
  "type": "object",
  "required": ["id"],
  "properties": {
    "id": {
      "type": "integer",
      "description": "Unique identifier of the contact."
    },
    "first_name": {
      "type": "string",
      "description": "First name of the contact.",
      "maxLength": 255
    },
    "last_name": {
      "type": "string",
      "description": "Last name of the contact.",
      "maxLength": 255
    },
    "name": {
      "type": "string",
      "description": "Full display name of the contact.",
      "maxLength": 255
    },
    "email": {
      "type": "string",
      "format": "email",
      "description": "Primary email address of the contact."
    },
    "phone": {
      "type": "string",
      "description": "Primary phone number.",
      "pattern": "^[+]?[0-9\\s\\-().]+$"
    },
    "mobile": {
      "type": "string",
      "description": "Mobile phone number.",
      "pattern": "^[+]?[0-9\\s\\-().]+$"
    },
    "address": {
      "type": "string",
      "description": "Mailing or street address."
    },
    "city": {
      "type": "string",
      "description": "City of residence."
    },
    "state": {
      "type": "string",
      "description": "State or province."
    },
    "country": {
      "type": "string",
      "description": "Country of residence."
    },
    "zipcode": {
      "type": "string",
      "description": "ZIP or postal code."
    },
    "job_title": {
      "type": "string",
      "description": "Job title or position."
    },
    "department": {
      "type": "string",
      "description": "Department within the company."
    },
    "company_id": {
      "type": "integer",
      "description": "ID of the associated company or account."
    },
    "company_name": {
      "type": "string",
      "description": "Name of the associated company."
    },
    "language": {
      "type": "string",
      "description": "Preferred language (ISO 639-1 code).",
      "pattern": "^[a-z]{2}(-[A-Z]{2})?$"
    },
    "time_zone": {
      "type": "string",
      "description": "Time zone identifier (IANA format)."
    },
    "tags": {
      "type": "array",
      "description": "Tags applied to the contact for segmentation.",
      "items": {
        "type": "string"
      }
    },
    "active": {
      "type": "boolean",
      "description": "Whether the contact is active in the system."
    },
    "lead_score": {
      "type": "integer",
      "description": "Lead score assigned to the contact (Freshsales).",
      "minimum": 0
    },
    "owner_id": {
      "type": "integer",
      "description": "ID of the sales agent who owns this contact (Freshsales)."
    },
    "custom_fields": {
      "type": "object",
      "description": "Custom field key-value pairs specific to the account configuration.",
      "additionalProperties": true
    },
    "created_at": {
      "type": "string",
      "format": "date-time",
      "description": "Timestamp when the contact was created."
    },
    "updated_at": {
      "type": "string",
      "format": "date-time",
      "description": "Timestamp when the contact was last updated."
    }
  }
}

Work with this as data

Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for schemas

4 MCP tools reach this
  • find_json_schemasBrowse and filter every JSON Schema in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/freshworks-contact"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.