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

# Get frequent contacts

> Returns contacts with consolidated interaction data for quick smart suggestions (top N).



## OpenAPI

````yaml /raas/swagger-partner.json get /user/operations/frequent/{userToken}/{limit}
openapi: 3.0.0
info:
  title: ''
  version: 0.0.1
servers:
  - url: https://raas-partner-cv.nomas.cash/v1
security: []
paths:
  /user/operations/frequent/{userToken}/{limit}:
    get:
      tags:
        - Operations
      summary: Get frequent contacts
      description: >-
        Returns contacts with consolidated interaction data for quick smart
        suggestions (top N).
      operationId: getFrequentContacts
      parameters:
        - description: Requester user token.
          in: path
          name: userToken
          required: true
          schema:
            type: string
        - description: Top N contacts to return.
          in: path
          name: limit
          required: true
          schema:
            type: number
            format: double
      responses:
        '200':
          description: >-
            **200 — OK.** Frequent contacts.


            **Scenarios for this response** (keep in sync with
            `testing-sandbox.mdx`):


            | Scenario | How to reproduce | Typical `code` / body |

            |------------|------------------|------------------------|

            | Top N | Valid `userToken` and numeric `limit` within policy
            bounds. | `ContactInfo[]` |


            See also [Full scenario
            matrix](/raas/guides/testing-sandbox#get-frequent-contacts-scenario-matrix).
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/ContactInfo'
                type: array
              example:
                - phone: '+19163015400'
                  firstName: Jose
                  lastName: Llontop
                  countryCode: US
        '400':
          description: >-
            **400 — Bad request.**


            **Scenarios for this response** (keep in sync with
            `testing-sandbox.mdx`):


            | Scenario | How to reproduce | Typical `code` / body |

            |------------|------------------|------------------------|

            | Bad limit / validation | Non-numeric `limit`, negative or zero
            limit, or `NumiBadRequestError` from `getLastOperationsContact`. |
            `ErrorResponse` (`reason` + `code`) |


            See also [Full scenario
            matrix](/raas/guides/testing-sandbox#get-frequent-contacts-scenario-matrix).
          content:
            application/json:
              schema:
                properties:
                  code:
                    type: string
                  reason:
                    type: string
                required:
                  - code
                  - reason
                type: object
              example:
                reason: Invalid limit or request parameters.
        '401':
          description: >-
            **401 — Unauthorized.**


            **Scenarios for this response** (keep in sync with
            `testing-sandbox.mdx`):


            | Scenario | How to reproduce | Typical `code` / body |

            |------------|------------------|------------------------|

            | Missing / bad API key | Omit `api_key` or invalid key / scope for
            `partner`, `partner_send`, or `partner_full`. | OpenAPI `401` via
            `@Response<ErrorResponse>`. |


            See also [Full scenario
            matrix](/raas/guides/testing-sandbox#get-frequent-contacts-scenario-matrix).
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ErrorResponse'
              example:
                reason: Missing or invalid API key
        '500':
          description: >-
            **500 — Internal server error.**


            **Scenarios for this response** (keep in sync with
            `testing-sandbox.mdx`):


            | Scenario | How to reproduce | Typical `code` / body |

            |------------|------------------|------------------------|

            | Indexed query / unexpected |
            `operationService.getLastOperationsContact` throws after
            `NumiBadRequestError` is ruled out, or datastore/index failure. |
            `ERROR_INTERNAL_SERVER_ERROR` (no raw exception text to client) |


            See also [Full scenario
            matrix](/raas/guides/testing-sandbox#get-frequent-contacts-scenario-matrix).
          content:
            application/json:
              schema:
                properties:
                  code:
                    type: string
                  reason:
                    type: string
                required:
                  - code
                  - reason
                type: object
              example:
                reason: An unhandled error has occurred
      security:
        - api_key:
            - partner
            - partner_send
            - partner_full
components:
  schemas:
    ContactInfo:
      description: Row returned by `GET /user/contacts/{userToken}` (partner list).
      properties:
        phone:
          type: string
          description: |-
            Contact phone number in **E.164** form (leading `+`).
            Example: `+19166020018`.
        firstName:
          type: string
          description: Contact first name
        lastName:
          type: string
          description: Contact last name
        email:
          type: string
          description: Contact email
        countryCode:
          type: string
          description: |-
            Contact country code

            ISO 3166-1 alpha-2.
        alias:
          type: string
          description: Contact alias
        id:
          type: string
          description: Contact ID
      required:
        - phone
      type: object
      additionalProperties: false
    ErrorResponse:
      properties:
        detail:
          type: string
        code:
          type: string
        reason:
          type: string
      required:
        - code
        - reason
      type: object
  securitySchemes:
    api_key:
      type: apiKey
      name: api_key
      in: header

````