Merge CRM API

Merge CRM API provides unified access to 20+ CRM platforms including Salesforce, HubSpot, Pipedrive, and Zoho CRM. It offers read and write capabilities for standardized CRM data objects such as Accounts, Contacts, Leads, Opportunities, and Engagements, along with custom object support.

Documentation

Specifications

Examples

Schemas & Data

Other Resources

OpenAPI Specification

merge-crm-api-openapi.yaml Raw ↑
openapi: 3.1.0
info:
  title: CRM
  version: 1.0.0
paths:
  /crm/v1/accounts:
    get:
      operationId: list
      summary: List
      description: >-
        Returns a list of `Account` objects.{/* BEGIN_CRM_ACCOUNT_FETCH_SUPPORTED_FIELDS
        */}<Footer><MergeSupportedFieldsByIntegrationWidget requestType="GET"
        data="H4sIAAAAAAAAA+2ZbVMiORDHv4qVlxQwpyzuStXVFQveqleMHs5651rWVJNphkgmiUkGhK397lcZQHHPp9WZFbx754Tkn9i/7k4n+UooWIylnpAGoTohZZLICDlpkCalMhWWlAko5kOCsx7haIuUiUmVktpi9DtDHpk9jX3SIF6COsZKKlifYeRRnXhMWIw1WCaF8a5HVfrZMFImnIkhRvO5HtCZ9avArON3n8bjzLiVKjDGDrRM40EXL1M0D0m61XBMUFjglQgseEvDK3o2/q42t+4IOVqM2mChjRap+wfnUw2sVabheQPkqppNW41w5KHwQFtGORqvXtvZer9Tr8xVstl/C2P+62bp4rIne+9LYUx5CGmpE9ArP9gf+xfxO7/17sqffq770+HUvxj+UgpjKHWCTv0wOK0dtpubh3d0CI+3/945+dj+eOCX6HS35l+cjv2AbnYCOuxN92sHn+j4YO/PK396utVpf675wW794JPcPGx1TafVlZ1mtUrKZJkjaZx9XW6YO0eTUuTydt/9BGJcssmMAihWUWmPM1o1tSokMJUCxqZKZeIlGDHwjjjYvtQJZJqhuUxBY1WJeGF6JsW13UmD7Pp7Tb+1277tA80RMA49jqRhdYr/clvSOCMQRRqNQQeVSmGBzvkaqpnK5MsERQxx5iruNyai1Fg9ce4LxoZALRsxOwnB+aBw1igTkSY91KHsh5goLieYzSCz+VPBLJt9jwVqt+iBFBjOxrh2jYm0GFKNYDGaCc/bnK/c/goV2MFNE4tu/k5VdCNgwQyd+Bh7hlkk567bZco0RkegIUHrJm+cnX8r383XshG2IFHAYpEP59uaC84XKn/OS2xv05zzuo9MISSeS6DfZ4LZSU62n6sVGV1LVl/EhbR3RsIP2fSZ9muBMinHfFPUXLRo8z2UkB7IQvdYu1DvfmGeaXFp8mbkJAtJK8/YPh5Bsw5bQUsqlflPnowyzRWDtM779V7aO1bS5kNpL+0ZJe3jO7TfDPZPdlegDuMI0R3h9np12fWZ56nc7UTh8/HvC8PigeU5VQvXcq9QjD+6293Dep2j9w8ElW+CHSKoV4D3HZN7bP80O7/Qph1GtTSybzfaEwEJo2ajtl3fOAaeLS1HWy/0a9v1TL1Qu88uQcJUc3dZ87I8umpJs6jw8lNrBsh5PtgXaq93Q7HEcBVKl2dSOWIKI81GOZf/17JF1C1Pib6fXresUZ3i4HA2W3YezBdyP+la494w/MGaZJXCMNuy+hx0znF4o7sqx7z/0v3tzPpS00KoOt0HYu3/Y+GKpNvjNAbd6nby9QHjVN3r4Mq+1Lz5ijZASNyek9dGeqNXOM01rlidlcZSDzdyD6mFctjqdop8GHvasX0d2ZxYFud9Sz3KNF+ltizsEXqVGX5BEaEZbhzndlZfkJwrhx/GdisI/lrBLesN3mp+kQOZf6qcyoF8UvFR6CH/DT1VsNxq0PNv/wC61wOtYyYAAA=="
        /></Footer>{/* END_CRM_ACCOUNT_FETCH_SUPPORTED_FIELDS */}
      tags:
        - subpackage_accounts
      parameters:
        - name: created_after
          in: query
          description: If provided, will only return objects created after this datetime.
          required: false
          schema:
            type: string
            format: date-time
        - name: created_before
          in: query
          description: If provided, will only return objects created before this datetime.
          required: false
          schema:
            type: string
            format: date-time
        - name: cursor
          in: query
          description: The pagination cursor value.
          required: false
          schema:
            type: string
        - name: expand
          in: query
          description: >-
            Which relations should be returned in expanded form. Multiple relation names should be comma separated
            without spaces.
          required: false
          schema:
            type: array
            items:
              $ref: '#/components/schemas/AccountsGetParametersExpandSchemaItems'
        - name: include_deleted_data
          in: query
          description: >-
            Indicates whether or not this object has been deleted in the third party platform. Full coverage deletion
            detection is a premium add-on. Native deletion detection is offered for free with limited coverage. [Learn
            more](https://docs.merge.dev/integrations/hris/supported-features/).
          required: false
          schema:
            type: boolean
        - name: include_remote_data
          in: query
          description: Whether to include the original data Merge fetched from the third-party to produce these models.
          required: false
          schema:
            type: boolean
        - name: include_remote_fields
          in: query
          description: >-
            Whether to include all remote fields, including fields that Merge did not map to common models, in a
            normalized format.
          required: false
          schema:
            type: boolean
        - name: include_shell_data
          in: query
          description: >-
            Whether to include shell records. Shell records are empty records (they may contain some metadata but all
            other fields are null).
          required: false
          schema:
            type: boolean
        - name: modified_after
          in: query
          description: If provided, only objects synced by Merge after this date time will be returned.
          required: false
          schema:
            type: string
            format: date-time
        - name: modified_before
          in: query
          description: If provided, only objects synced by Merge before this date time will be returned.
          required: false
          schema:
            type: string
            format: date-time
        - name: name
          in: query
          description: If provided, will only return accounts with this name.
          required: false
          schema:
            type: string
        - name: owner_id
          in: query
          description: If provided, will only return accounts with this owner.
          required: false
          schema:
            type: string
        - name: page_size
          in: query
          description: Number of results to return per page. The maximum limit is 100.
          required: false
          schema:
            type: integer
        - name: remote_id
          in: query
          description: The API provider's ID for the given object.
          required: false
          schema:
            type: string
        - name: Authorization
          in: header
          description: Token-based authentication with required prefix "Bearer"
          required: true
          schema:
            type: string
        - name: X-Account-Token
          in: header
          description: Token identifying the end user.
          required: true
          schema:
            type: string
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedAccountList'
    post:
      operationId: create
      summary: Create
      description: >-
        Creates an `Account` object with the given values.{/* BEGIN_CRM_ACCOUNT_CREATE_SUPPORTED_FIELDS
        */}<Footer><MergeSupportedFieldsByIntegrationWidget requestType="POST"
        data="H4sIAAAAAAAAA+2Xb0/bMBDGv8rkl1WaDLqOUWmaSttRkBoYhG0MoehiX1O3Tmz8p4VO++5T2gBlg2qCMPZi7xLn/Jz9e8655DuhYDGV+oq0CNUZ8UgmGQrSIm1Kpcst8QgoHkKGy4h4ukk8YpxSUltkHzkKZvoah6RFggx1inWX8yFHFlCdBTy3mGqwXOYmuJlVHy6mEY8Ink+QlbnW6Czj6rAM/OXWBIKbYqUKjLEjLV06OsILh2adZLEagRnmFkSdgYVgZXpdL+ffN1asm6FAi6wLFrpokRYbLFONrFWmFQQjFMpfpPUZTgPMA9CWU4EmaDa2N7e2m/VSZZH9Q5yK9xu18UUik61anFIRg6sNInoZRnuzcJy+CTtvLsP5STOcT+bhePK6FqdQG0SD5kF02jjotjcO7gmIj99+3f68093ZD2t03muE49NZGNGNQUQnyXyvsb9LZ/v9T5fh/HRz0D1phFGvub8rNw46R2bQOZKDtu8Tj6z6SFpn31cHyuLogDJO4N3gvQxSXIGytAEUryuXCE590/Ahg7nMYWZ8KrMgQ8YhOBRgh1Jnpaiv8vSaOpf5DXLSIr2w3w47ve5d+9tT4AISgaRltcPfKpa0zghDQzVXCx2PCDA2Bmr5lNurGIpyyouNeUTOctTEIxozaTGmGsEiW4aUY5zdXjvFbp/PMDHcIjkvHl84rpEdgoYMLepiEec/vHtZCmmqJllI+mNVPUdgTKMxuDwXq0xLgGokc4xzlyXFpv8uSKnUwrwqSS40XwbldS2+INK+S46VtNUw7bvEKGljc+FAryvPsB3tfe5VSZTnzBmrr9ae/SXhWA5jzJSQV7gQeoQLNx3vqa7cFfRX72IqwKzkKEOmIBySB9w85AqZ5tOK3zY3ss9s6WOde7pTD/pT5q/WpmMQaIZS04p9utVd02L/n71n9fYb5gzN5NUxClGtu6Vy/G5mN6Poy7N8Rf3RC/bf6V7f5Ei+6hwNqgU9lyNZ/ByVbaz6o1R563oe5Oc/fgLJWWhSUg4AAA=="
        /></Footer>{/* END_CRM_ACCOUNT_CREATE_SUPPORTED_FIELDS */}
      tags:
        - subpackage_accounts
      parameters:
        - name: is_debug_mode
          in: query
          description: Whether to include debug fields (such as log file links) in the response.
          required: false
          schema:
            type: boolean
        - name: run_async
          in: query
          description: Whether or not third-party updates should be run asynchronously.
          required: false
          schema:
            type: boolean
        - name: Authorization
          in: header
          description: Token-based authentication with required prefix "Bearer"
          required: true
          schema:
            type: string
        - name: X-Account-Token
          in: header
          description: Token identifying the end user.
          required: true
          schema:
            type: string
      responses:
        '201':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CRMAccountResponse'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/CRMAccountEndpointRequest'
  /crm/v1/accounts/{id}:
    get:
      operationId: retrieve
      summary: Retrieve
      description: >-
        Returns an `Account` object with the given `id`.{/* BEGIN_CRM_ACCOUNT_FETCH_SUPPORTED_FIELDS
        */}<Footer><MergeSupportedFieldsByIntegrationWidget requestType="GET"
        data="H4sIAAAAAAAAA+2ZbVMiORDHv4qVlxQwpyzuStXVFQveqleMHs5651rWVJNphkgmiUkGhK397lcZQHHPp9WZFbx754Tkn9i/7k4n+UooWIylnpAGoTohZZLICDlpkCalMhWWlAko5kOCsx7haIuUiUmVktpi9DtDHpk9jX3SIF6COsZKKlifYeRRnXhMWIw1WCaF8a5HVfrZMFImnIkhRvO5HtCZ9avArON3n8bjzLiVKjDGDrRM40EXL1M0D0m61XBMUFjglQgseEvDK3o2/q42t+4IOVqM2mChjRap+wfnUw2sVabheQPkqppNW41w5KHwQFtGORqvXtvZer9Tr8xVstl/C2P+62bp4rIne+9LYUx5CGmpE9ArP9gf+xfxO7/17sqffq770+HUvxj+UgpjKHWCTv0wOK0dtpubh3d0CI+3/945+dj+eOCX6HS35l+cjv2AbnYCOuxN92sHn+j4YO/PK396utVpf675wW794JPcPGx1TafVlZ1mtUrKZJkjaZx9XW6YO0eTUuTydt/9BGJcssmMAihWUWmPM1o1tSokMJUCxqZKZeIlGDHwjjjYvtQJZJqhuUxBY1WJeGF6JsW13UmD7Pp7Tb+1277tA80RMA49jqRhdYr/clvSOCMQRRqNQQeVSmGBzvkaqpnK5MsERQxx5iruNyai1Fg9ce4LxoZALRsxOwnB+aBw1igTkSY91KHsh5goLieYzSCz+VPBLJt9jwVqt+iBFBjOxrh2jYm0GFKNYDGaCc/bnK/c/goV2MFNE4tu/k5VdCNgwQyd+Bh7hlkk567bZco0RkegIUHrJm+cnX8r383XshG2IFHAYpEP59uaC84XKn/OS2xv05zzuo9MISSeS6DfZ4LZSU62n6sVGV1LVl/EhbR3RsIP2fSZ9muBMinHfFPUXLRo8z2UkB7IQvdYu1DvfmGeaXFp8mbkJAtJK8/YPh5Bsw5bQUsqlflPnowyzRWDtM779V7aO1bS5kNpL+0ZJe3jO7TfDPZPdlegDuMI0R3h9np12fWZ56nc7UTh8/HvC8PigeU5VQvXcq9QjD+6293Dep2j9w8ElW+CHSKoV4D3HZN7bP80O7/Qph1GtTSybzfaEwEJo2ajtl3fOAaeLS1HWy/0a9v1TL1Qu88uQcJUc3dZ87I8umpJs6jw8lNrBsh5PtgXaq93Q7HEcBVKl2dSOWIKI81GOZf/17JF1C1Pib6fXresUZ3i4HA2W3YezBdyP+la494w/MGaZJXCMNuy+hx0znF4o7sqx7z/0v3tzPpS00KoOt0HYu3/Y+GKpNvjNAbd6nby9QHjVN3r4Mq+1Lz5ijZASNyek9dGeqNXOM01rlidlcZSDzdyD6mFctjqdop8GHvasX0d2ZxYFud9Sz3KNF+ltizsEXqVGX5BEaEZbhzndlZfkJwrhx/GdisI/lrBLesN3mp+kQOZf6qcyoF8UvFR6CH/DT1VsNxq0PNv/wC61wOtYyYAAA=="
        /></Footer>{/* END_CRM_ACCOUNT_FETCH_SUPPORTED_FIELDS */}
      tags:
        - subpackage_accounts
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
            format: uuid
        - name: expand
          in: query
          description: >-
            Which relations should be returned in expanded form. Multiple relation names should be comma separated
            without spaces.
          required: false
          schema:
            type: array
            items:
              $ref: '#/components/schemas/AccountsIdGetParametersExpandSchemaItems'
        - name: include_remote_data
          in: query
          description: Whether to include the original data Merge fetched from the third-party to produce these models.
          required: false
          schema:
            type: boolean
        - name: include_remote_fields
          in: query
          description: >-
            Whether to include all remote fields, including fields that Merge did not map to common models, in a
            normalized format.
          required: false
          schema:
            type: boolean
        - name: include_shell_data
          in: query
          description: >-
            Whether to include shell records. Shell records are empty records (they may contain some metadata but all
            other fields are null).
          required: false
          schema:
            type: boolean
        - name: Authorization
          in: header
          description: Token-based authentication with required prefix "Bearer"
          required: true
          schema:
            type: string
        - name: X-Account-Token
          in: header
          description: Token identifying the end user.
          required: true
          schema:
            type: string
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Account'
    patch:
      operationId: partial-update
      summary: Partial Update
      description: >-
        Updates an `Account` object with the given `id`.{/* BEGIN_CRM_ACCOUNT_EDIT_SUPPORTED_FIELDS
        */}<Footer><MergeSupportedFieldsByIntegrationWidget requestType="PATCH"
        data="H4sIAAAAAAAAA82XbU/bMBDHv8rkl1WaDEq3UWmaSttRkBoYZA+AUHSxr6lbJzZ+aKFo331Km0HZoNogIN4lzvl/9u9/FyfXhILFVOor0iJUZ8QjmWQoSIu0KZUut8QjoHgIGS4j4ukm8YhxSkltkX3mKJjpaxySFgky1CnWXc6HHFlAdRbw3GKqwXKZm+BmVn24mEY8Ing+QVbmWqOzjKvDMvCPWxMIboqVKjDGjrR06egILxyadZLFagRmmFsQdQYWgpXpdb2cf99YsW6GAi2yLljookVabLBMNbJWmVYQjFAof5HWZzgNMA9AW04FmqDZ2N58v92slyqL7J/iVHzcqI0vEpm8r8UpFTG42iCil2G0NwvH6VbY2boM51+b4XwyD8eTt7U4hdogGjQPopPGQbe9cXBPQHz87sf2t53uzn5Yo/NeIxyfzMKIbgwiOknme439XTrb73+5DOcnm4Pu10YY9Zr7u3LjoHNkBp0jOWj7PvHIqo+kdXa9OlAWRweUcQLvBu9lkOIKlKUNoHhduURw6puGDxnMZQ4z41OZBRkyDsGhADuUOitFfZWnv6lzmd8gJy3SC/vtsNPr3rW/PQUuIBFIWlY7/KtiSeuMMDRUc7XQ8YgAY2Oglk+5vYqhKKe82JhH5CxHTTyiMZMWY6oRLLJlSDnG2e21U+z2+QwTwy2S8+LxheMa2SFoyNCiLhZx/tO7l6WQpmqShaQ/Vs/NsYT2krCkUguDqqS10HwWXMCYRmNw+Rq5B93velMjmWOcuywptv+iSPsuOVbSVsO07xKjpI3NhQO9rgTDdrT3rVclUZ4zZ6y+WtvfS8KxHMaYKSGvcCH0CBduTrWnunJX0F+9i6kAs5KjDJmCcEgecPOQK2SaTyt+o9zIPoOlj3XrP9xZceSFfDgGgWYoNa3YiFvdNefkq2yu19FMD9h1ijlDM3lzjEJUa1ipHH+Y2c0o+v4sXzf/5NvrOXFO5Ui+6RwNqgU9lyNZ/LSUR0/13fGSHfEE5Oc/fwErwnrU6g0AAA=="
        /></Footer>{/* END_CRM_ACCOUNT_EDIT_SUPPORTED_FIELDS */}
      tags:
        - subpackage_accounts
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
            format: uuid
        - name: is_debug_mode
          in: query
          description: Whether to include debug fields (such as log file links) in the response.
          required: false
          schema:
            type: boolean
        - name: run_async
          in: query
          description: Whether or not third-party updates should be run asynchronously.
          required: false
          schema:
            type: boolean
        - name: Authorization
          in: header
          description: Token-based authentication with required prefix "Bearer"
          required: true
          schema:
            type: string
        - name: X-Account-Token
          in: header
          description: Token identifying the end user.
          required: true
          schema:
            type: string
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/CRMAccountResponse'
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PatchedCRMAccountEndpointRequest'
  /crm/v1/accounts/meta/patch/{id}:
    get:
      operationId: meta-patch-retrieve
      summary: Meta Patch Retrieve
      description: >-
        Returns metadata for `CRMAccount` PATCHs.{/* BEGIN_CRM_ACCOUNT_FETCH_SUPPORTED_FIELDS
        */}<Footer><MergeSupportedFieldsByIntegrationWidget requestType="GET"
        data="H4sIAAAAAAAAA+2ZbVMiORDHv4qVlxQwpyzuStXVFQveqleMHs5651rWVJNphkgmiUkGhK397lcZQHHPp9WZFbx754Tkn9i/7k4n+UooWIylnpAGoTohZZLICDlpkCalMhWWlAko5kOCsx7haIuUiUmVktpi9DtDHpk9jX3SIF6COsZKKlifYeRRnXhMWIw1WCaF8a5HVfrZMFImnIkhRvO5HtCZ9avArON3n8bjzLiVKjDGDrRM40EXL1M0D0m61XBMUFjglQgseEvDK3o2/q42t+4IOVqM2mChjRap+wfnUw2sVabheQPkqppNW41w5KHwQFtGORqvXtvZer9Tr8xVstl/C2P+62bp4rIne+9LYUx5CGmpE9ArP9gf+xfxO7/17sqffq770+HUvxj+UgpjKHWCTv0wOK0dtpubh3d0CI+3/945+dj+eOCX6HS35l+cjv2AbnYCOuxN92sHn+j4YO/PK396utVpf675wW794JPcPGx1TafVlZ1mtUrKZJkjaZx9XW6YO0eTUuTydt/9BGJcssmMAihWUWmPM1o1tSokMJUCxqZKZeIlGDHwjjjYvtQJZJqhuUxBY1WJeGF6JsW13UmD7Pp7Tb+1277tA80RMA49jqRhdYr/clvSOCMQRRqNQQeVSmGBzvkaqpnK5MsERQxx5iruNyai1Fg9ce4LxoZALRsxOwnB+aBw1igTkSY91KHsh5goLieYzSCz+VPBLJt9jwVqt+iBFBjOxrh2jYm0GFKNYDGaCc/bnK/c/goV2MFNE4tu/k5VdCNgwQyd+Bh7hlkk567bZco0RkegIUHrJm+cnX8r383XshG2IFHAYpEP59uaC84XKn/OS2xv05zzuo9MISSeS6DfZ4LZSU62n6sVGV1LVl/EhbR3RsIP2fSZ9muBMinHfFPUXLRo8z2UkB7IQvdYu1DvfmGeaXFp8mbkJAtJK8/YPh5Bsw5bQUsqlflPnowyzRWDtM779V7aO1bS5kNpL+0ZJe3jO7TfDPZPdlegDuMI0R3h9np12fWZ56nc7UTh8/HvC8PigeU5VQvXcq9QjD+6293Dep2j9w8ElW+CHSKoV4D3HZN7bP80O7/Qph1GtTSybzfaEwEJo2ajtl3fOAaeLS1HWy/0a9v1TL1Qu88uQcJUc3dZ87I8umpJs6jw8lNrBsh5PtgXaq93Q7HEcBVKl2dSOWIKI81GOZf/17JF1C1Pib6fXresUZ3i4HA2W3YezBdyP+la494w/MGaZJXCMNuy+hx0znF4o7sqx7z/0v3tzPpS00KoOt0HYu3/Y+GKpNvjNAbd6nby9QHjVN3r4Mq+1Lz5ijZASNyek9dGeqNXOM01rlidlcZSDzdyD6mFctjqdop8GHvasX0d2ZxYFud9Sz3KNF+ltizsEXqVGX5BEaEZbhzndlZfkJwrhx/GdisI/lrBLesN3mp+kQOZf6qcyoF8UvFR6CH/DT1VsNxq0PNv/wC61wOtYyYAAA=="
        /></Footer>{/* END_CRM_ACCOUNT_FETCH_SUPPORTED_FIELDS */}
      tags:
        - subpackage_accounts
      parameters:
        - name: id
          in: path
          required: true
          schema:
            type: string
            format: uuid
        - name: Authorization
          in: header
          description: Token-based authentication with required prefix "Bearer"
          required: true
          schema:
            type: string
        - name: X-Account-Token
          in: header
          description: Token identifying the end user.
          required: true
          schema:
            type: string
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MetaResponse'
  /crm/v1/accounts/meta/post:
    get:
      operationId: meta-post-retrieve
      summary: Meta Post Retrieve
      description: >-
        Returns metadata for `CRMAccount` POSTs.{/* BEGIN_CRM_ACCOUNT_FETCH_SUPPORTED_FIELDS
        */}<Footer><MergeSupportedFieldsByIntegrationWidget requestType="GET"
        data="H4sIAAAAAAAAA+2ZbVMiORDHv4qVlxQwpyzuStXVFQveqleMHs5651rWVJNphkgmiUkGhK397lcZQHHPp9WZFbx754Tkn9i/7k4n+UooWIylnpAGoTohZZLICDlpkCalMhWWlAko5kOCsx7haIuUiUmVktpi9DtDHpk9jX3SIF6COsZKKlifYeRRnXhMWIw1WCaF8a5HVfrZMFImnIkhRvO5HtCZ9avArON3n8bjzLiVKjDGDrRM40EXL1M0D0m61XBMUFjglQgseEvDK3o2/q42t+4IOVqM2mChjRap+wfnUw2sVabheQPkqppNW41w5KHwQFtGORqvXtvZer9Tr8xVstl/C2P+62bp4rIne+9LYUx5CGmpE9ArP9gf+xfxO7/17sqffq770+HUvxj+UgpjKHWCTv0wOK0dtpubh3d0CI+3/945+dj+eOCX6HS35l+cjv2AbnYCOuxN92sHn+j4YO/PK396utVpf675wW794JPcPGx1TafVlZ1mtUrKZJkjaZx9XW6YO0eTUuTydt/9BGJcssmMAihWUWmPM1o1tSokMJUCxqZKZeIlGDHwjjjYvtQJZJqhuUxBY1WJeGF6JsW13UmD7Pp7Tb+1277tA80RMA49jqRhdYr/clvSOCMQRRqNQQeVSmGBzvkaqpnK5MsERQxx5iruNyai1Fg9ce4LxoZALRsxOwnB+aBw1igTkSY91KHsh5goLieYzSCz+VPBLJt9jwVqt+iBFBjOxrh2jYm0GFKNYDGaCc/bnK/c/goV2MFNE4tu/k5VdCNgwQyd+Bh7hlkk567bZco0RkegIUHrJm+cnX8r383XshG2IFHAYpEP59uaC84XKn/OS2xv05zzuo9MISSeS6DfZ4LZSU62n6sVGV1LVl/EhbR3RsIP2fSZ9muBMinHfFPUXLRo8z2UkB7IQvdYu1DvfmGeaXFp8mbkJAtJK8/YPh5Bsw5bQUsqlflPnowyzRWDtM779V7aO1bS5kNpL+0ZJe3jO7TfDPZPdlegDuMI0R3h9np12fWZ56nc7UTh8/HvC8PigeU5VQvXcq9QjD+6293Dep2j9w8ElW+CHSKoV4D3HZN7bP80O7/Qph1GtTSybzfaEwEJo2ajtl3fOAaeLS1HWy/0a9v1TL1Qu88uQcJUc3dZ87I8umpJs6jw8lNrBsh5PtgXaq93Q7HEcBVKl2dSOWIKI81GOZf/17JF1C1Pib6fXresUZ3i4HA2W3YezBdyP+la494w/MGaZJXCMNuy+hx0znF4o7sqx7z/0v3tzPpS00KoOt0HYu3/Y+GKpNvjNAbd6nby9QHjVN3r4Mq+1Lz5ijZASNyek9dGeqNXOM01rlidlcZSDzdyD6mFctjqdop8GHvasX0d2ZxYFud9Sz3KNF+ltizsEXqVGX5BEaEZbhzndlZfkJwrhx/GdisI/lrBLesN3mp+kQOZf6qcyoF8UvFR6CH/DT1VsNxq0PNv/wC61wOtYyYAAA=="
        /></Footer>{/* END_CRM_ACCOUNT_FETCH_SUPPORTED_FIELDS */}
      tags:
        - subpackage_accounts
      parameters:
        - name: Authorization
          in: header
          description: Token-based authentication with required prefix "Bearer"
          required: true
          schema:
            type: string
        - name: X-Account-Token
          in: header
          description: Token identifying the end user.
          required: true
          schema:
            type: string
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MetaResponse'
  /crm/v1/accounts/remote-field-classes:
    get:
      operationId: remote-field-classes-list
      summary: Remote Field Classes List
      description: >-
        Returns a list of `RemoteFieldClass` objects.{/* BEGIN_CRM_ACCOUNT_FETCH_SUPPORTED_FIELDS
        */}<Footer><MergeSupportedFieldsByIntegrationWidget requestType="GET"
        data="H4sIAAAAAAAAA+2ZbVMiORDHv4qVlxQwpyzuStXVFQveqleMHs5651rWVJNphkgmiUkGhK397lcZQHHPp9WZFbx754Tkn9i/7k4n+UooWIylnpAGoTohZZLICDlpkCalMhWWlAko5kOCsx7haIuUiUmVktpi9DtDHpk9jX3SIF6COsZKKlifYeRRnXhMWIw1WCaF8a5HVfrZMFImnIkhRvO5HtCZ9avArON3n8bjzLiVKjDGDrRM40EXL1M0D0m61XBMUFjglQgseEvDK3o2/q42t+4IOVqM2mChjRap+wfnUw2sVabheQPkqppNW41w5KHwQFtGORqvXtvZer9Tr8xVstl/C2P+62bp4rIne+9LYUx5CGmpE9ArP9gf+xfxO7/17sqffq770+HUvxj+UgpjKHWCTv0wOK0dtpubh3d0CI+3/945+dj+eOCX6HS35l+cjv2AbnYCOuxN92sHn+j4YO/PK396utVpf675wW794JPcPGx1TafVlZ1mtUrKZJkjaZx9XW6YO0eTUuTydt/9BGJcssmMAihWUWmPM1o1tSokMJUCxqZKZeIlGDHwjjjYvtQJZJqhuUxBY1WJeGF6JsW13UmD7Pp7Tb+1277tA80RMA49jqRhdYr/clvSOCMQRRqNQQeVSmGBzvkaqpnK5MsERQxx5iruNyai1Fg9ce4LxoZALRsxOwnB+aBw1igTkSY91KHsh5goLieYzSCz+VPBLJt9jwVqt+iBFBjOxrh2jYm0GFKNYDGaCc/bnK/c/goV2MFNE4tu/k5VdCNgwQyd+Bh7hlkk567bZco0RkegIUHrJm+cnX8r383XshG2IFHAYpEP59uaC84XKn/OS2xv05zzuo9MISSeS6DfZ4LZSU62n6sVGV1LVl/EhbR3RsIP2fSZ9muBMinHfFPUXLRo8z2UkB7IQvdYu1DvfmGeaXFp8mbkJAtJK8/YPh5Bsw5bQUsqlflPnowyzRWDtM779V7aO1bS5kNpL+0ZJe3jO7TfDPZPdlegDuMI0R3h9np12fWZ56nc7UTh8/HvC8PigeU5VQvXcq9QjD+6293Dep2j9w8ElW+CHSKoV4D3HZN7bP80O7/Qph1GtTSybzfaEwEJo2ajtl3fOAaeLS1HWy/0a9v1TL1Qu88uQcJUc3dZ87I8umpJs6jw8lNrBsh5PtgXaq93Q7HEcBVKl2dSOWIKI81GOZf/17JF1C1Pib6fXresUZ3i4HA2W3YezBdyP+la494w/MGaZJXCMNuy+hx0znF4o7sqx7z/0v3tzPpS00KoOt0HYu3/Y+GKpNvjNAbd6nby9QHjVN3r4Mq+1Lz5ijZASNyek9dGeqNXOM01rlidlcZSDzdyD6mFctjqdop8GHvasX0d2ZxYFud9Sz3KNF+ltizsEXqVGX5BEaEZbhzndlZfkJwrhx/GdisI/lrBLesN3mp+kQOZf6qcyoF8UvFR6CH/DT1VsNxq0PNv/wC61wOtYyYAAA=="
        /></Footer>{/* END_CRM_ACCOUNT_FETCH_SUPPORTED_FIELDS */}
      tags:
        - subpackage_accounts
      parameters:
        - name: cursor
          in: query
          description: The pagination cursor value.
          required: false
          schema:
            type: string
        - name: include_deleted_data
          in: query
          description: >-
            Indicates whether or not this object has been deleted in the third party platform. Full coverage deletion
            detection is a premium add-on. Native deletion detection is offered for free with limited coverage. [Learn
            more](https://docs.merge.dev/integrations/hris/supported-features/).
          required: false
          schema:
            type: boolean
        - name: include_remote_data
          in: query
          description: Whether to include the original data Merge fetched from the third-party to produce these models.
          required: false
          schema:
            type: boolean
        - name: include_remote_fields
          in: query
          description: >-
            Whether to include all remote fields, including fields that Merge did not map to common models, in a
            normalized format.
          required: false
          schema:
            type: boolean
        - name: include_shell_data
          in: query
          description: >-
            Whether to include shell records. Shell records are empty records (they may contain some metadata but all
            other fields are null).
          required: false
          schema:
            type: boolean
        - name: is_common_model_field
          in: query
          description: If provided, will only return remote field classes with this is_common_model_field value
          required: false
          schema:
            type: boolean
        - name: is_custom
          in: query
          description: If provided, will only return remote fields classes with this is_custom value
          required: false
          schema:
            type: boolean
        - name: page_size
          in: query
          description: Number of results to return per page. The maximum limit is 100.
          required: false
          schema:
            type: integer
        - name: Authorization
          in: header
          description: Token-based authentication with required prefix "Bearer"
          required: true
          schema:
            type: string
        - name: X-Account-Token
          in: header
          description: Token identifying the end user.
          required: true
          schema:
            type: string
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedRemoteFieldClassList'
  /crm/v1/contacts:
    get:
      operationId: list
      summary: List
      description: >-
        Returns a list of `Contact` objects.{/* BEGIN_CRM_CONTACT_FETCH_SUPPORTED_FIELDS
        */}<Footer><MergeSupportedFieldsByIntegrationWidget requestType="GET"
        data="H4sIAAAAAAAAA+1Za0/jOBT9K8gfq7ZZ6JQZKq1WnZQdYNXA0gy7DELRrXObmjq2sZ0WOpr/vkr64LEsO4BbgsS3xrVP3HPuPffa/U4oWEykviYtQnVKqiSVMXLSIr4UFqglVQKKBZDibEY03iJVYjKlpLYY/86Qx2ZP44C0iJeiTrCWCTZgGHtUpx4TFhMNlklhvOWq2qBYRqqEMzHCuE2pzIR9BGc2rwazifcejceZyXeqwBg71DJLhsd4maF5DDLfDccUhQVei8GCd2t5Tc/WPzSW7ztGjhbjDljooEWa/8D5q4bWKtPyvCFyVS9eW49x7KHwQFtGORqv2djZ+rjTrM1Rirf/FiX8183KxWVf9j9WooTyCLJKN6RXQbg/CS6SD4H/4SqYfm0G09E0uBj9UokSqHTDbvMwPG0cdtqbhw9MiHrbf++cfO58PggqdLrbCC5OJ0FIN7shHfWn+42DL3RysPfnVTA93ep2vjaCcLd58EVuHvrHpusfy267XidVcltH0jr7fntgHhxtSpHLu3P3U0jwFiczFUCxmsr6nNG6adQhhakUMDF1KlMvxZiBd8TBDqROocCMzGUGGutKJAvqmRRL3kmL7AZ77cDf7dyNgfYYGIc+R9KyOsN/hS1pnZF5CJEqwRQYjyCONRqDucgDpo2NRP7zqoSDsRFQy8bMXkdgF0Pzr9VQCoxElvZR52s1ptJiRDWCxXg2fz6Wq333KVJghzdDLCbn+cNlxjTGR6AhRZvDts7Of1Qf5t6yMfqQKmCJcKPBXcyFBhfqXYP/0GAwYILZa0fsz9HKE/vzz0LaYsLqgtkHZTKObp1kDrpiHp/iGPeIXJNT+Fwa19TmkCUwhnu8vq4j+1Ip1I6JLjBXzPRtjt9ySdzL+j0lrRsF9rK+UdL+fxEM2uH+ye7q+EeRQFI0rU9VgyMUHfciPeREFPHpUqVlW3+jWpVYZjk+Vb19YVgytNxRNV3Cla6c3pfldZPmDwTl1rNGCGo9pL8scUpVPLqMamnkwG50rgWkjJqNxnZzowe82JxDeRb4je1mgb5+qejsniHKNH+JcOuwt5mdgRmZ59pakFkzRM7diLhAe9XEek7L+7rZdcQUxpqNHbfBS9i1tQcvTZ0yNgsvya5cAc5mO3Uh7AJuPab409a23mwpysKAg3acLje4JTvQlOL0MmNHaroS1nPcR6L5/RDj1pd6WQLaP+66ldLkqPk/Mu/d9dPkCBHS3FNd1YkbvNVUiLfoXzknE6lHG87DfoEc+cfd9fwp8UwBytHsnliWuL6HHBeY5blKKesV5DcUMZrRRs/ZiW+hwBw5+jSxW2H411u4WSnXRdc3OZTuvWkqh/KnKvL7OZC87NL4/Mc/LxPs67siAAA="
        /></Footer>{/* END_CRM_CONTACT_FETCH_SUPPORTED_FIELDS */}
      tags:
        - subpackage_contacts
      parameters:
        - name: account_id
          in: query
          description: If provided, will only return contacts with this account.
          required: false
          schema:
            type: string
        - name: created_after
          in: query
          description: If provided, will only return objects created after this datetime.
          required: false
          schema:
            type: string
            format: date-time
        - name: created_before
          in: query
          description: If provided, will only return objects created before this datetime.
          required: false
          schema:
            type: string
            format: date-time
        - name: cursor
          in: query
          description: The pagination cursor value.
          required: false
          schema:
            type: string
        - name: email_addresses
          in: query
          description: >-
            If provided, will only return contacts matching the email addresses; multiple email_addresses can be
            separated by commas.
          required: false
          schema:
            type: string
        - name: expand
          in: query
          description: >-
            Which relations should be returned in expanded form. Multiple relation names should be comma separated
            without spaces.
          required: false
          schema:
            type: array
            items:
              $ref: '#/components/schemas/ContactsGetParametersExpandSchemaItems'
        - name: include_deleted_data
          in: query
          description: >-
            Indicates whether or not this object has been deleted in the third party platform. Full coverage deletion
            detection is a premium add-on. Native deletion detection is offered for free with limited coverage. [Learn
            more](https://docs.merge.dev/integrations/hris/supported-features/).
          required: false
          schema:
            type: boolean
        - name: include_remote_data
          in: query
          description: Whether to include the original data Merge fetched from the third-party to produce these models.
          required: false
          schema:
            type: boolean
        - name: include_remote_fields
          in: query
          description: >-
            Whether to include all remote fields, including fields that Merge did not map to common models, in a
            normalized format.
          required: false
          schema:
            type: boolean
        - name: include_shell_data
          in: query
          description: >-
            Whether to include shell records. Shell records are empty records (they may contain some metadata but all
            other fields are null).
          required: false
          schema:
            type: boolean
        - name: modified_after
          in: query
          description: If provided, only objects synced by Merge after this date time will be returned.
          required: false
          schema:
            type: string
            format: date-time
        - name: modified_before
          in: query
          description: If provided, only objects synced by Merge before this date time will be returned.
          required: false
          schema:
            type: string
            format: date-time
        - name: page_size
          in: query
          description: Number of results to return per page. The maximum limit is 100.
          required: false
          schema:
            type: integer
        - name: phone_numbers
          in: query
          description: >-
            If provided, will only return contacts matching the phone numbers; multiple phone numbers can be separated
            by commas.
          required: false
          schema:
            type: string
        - name: remote_id
          in: query
          description: The API provider's ID for the given object.
          required: false
          schema:
            type: string
        - name: Authorization
          in: header
          description: Token-based authentication with required prefix "Bearer"
          required: true
          schema:
            type: string
        - name: X-Account-Token
          in: header
          description: Token identifying the end user.
          required: true
          schema:
            type: string
      responses:
        '200':
          description: ''
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PaginatedContactList'
    post:
      operationId: create
      summary: Create
      description: >-
        Creates a `Contact` object with the given values.{/* BEGIN_CRM_CONTACT_CREATE_SUPPORTED_FIELDS
        */}<Footer><MergeSupportedFieldsByIntegrationWidget requestType="POST"
        data="H4sIAAAAAAAAA9WWYW/aMBCG/0rljwiSAWVdI00TBVZAInSQduuqKjrsIxicONgOtKn636eUlKVbhzQNKu3jne9en++5U/JAKBgMpLonDqEqJGUSSoaCOKQlIwPUkDKBmLsQ4ibCX9VImegkjqUyyD5zFEx3FU6JQ+wQVYCVJOJTjsymKrR5ZDBQYLiMtL3Nqkyf0kiZCB4tkDUplUlkduhs4iqwCfzF1LbgOqs0Bq3NTMkkmI1wmaDeJZlVIzDEyICoMDBgF9IrapP/mi+rm6FAg6wNBtpokGYPzK+aGRNrx7ZnKGLr6VqL4crGyAZlOBWo7Ub9tHZy2qjkKk+3f/ID8bFami8ncnJS8gMqfEhKA4/euV5v7c6DY7d1fOemlw03XaTufPGu5AdQGniDxtC7rg/bzerwlQB//P7b6dVZ+6zvlmjaqbvz67Xr0erAo4tJ2qv3z+m63/1y56bXtUH7su56nUb/XFaHrZEetEZy0LQsUiZFjsS5eSg68uHoJpNxLDMMhbNeCAEWmrLBADGvxMlEcGrpugUhpDKCtbaoDO0QGQe7m0x0LI2vlwkotOZx8Nx0LqNtx4lD3KbXu+q8ZN9cARcwEUgcoxL8bVyJc0Py0cnGmzGFWmOGFUPgwi96plxp40fZE8tEgDY+UMNX3Nz7YJ5d+bFcR6iyUmYyQj9KwgmqTENhKA36VCEYZJu83LddhNzmjNxmxjLhCtkFKAjRZCrOzcsUq2j5VIAuqOQhKxAJktvH8mu4LniMTPEV7gfYhQAzlSrcyh6U2b9xOhCfFyXsF9YYBOqpVHTPtH7qWnH0P6zYgdAVr9gvue8YMdSLozEKsV92ubL/YW1qnvd1B8CO2226rU77LRH+Pa8dfP7UWzmTR63RYL99TeVMZj86+afnkHvxZruws7e3jz8ARI8VnAcKAAA="
        /></Footer>{

# --- truncated at 32 KB (412 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/merge/refs/heads/main/openapi/merge-crm-api-openapi.yaml