---
title: "List Application sessions matching the given customer attributes"
method: POST
path: "/v1/applications/{applicationId}/sessions_search"
tags: ["Customer data"]
---

# List Application sessions matching the given customer attributes

`POST /v1/applications/{applicationId}/sessions_search`

## Request

- Base URL: `https://yourbaseurl.talon.one`
- URL: `https://yourbaseurl.talon.one/v1/applications/{applicationId}/sessions_search`
- Auth: one of:
  - API key in header `Authorization`
  - API key in header `Authorization`
- TypeScript: <https://skmtc.dev/talon/apis/management-api/docs/v1/applications/:applicationId/sessions_search/post.ts> (a function with typed inputs; its response is checked against the schema)

> [!note] Management API endpoints are **not** meant to be used in real-time integrations that directly serve your end users. Rate limit: 3 requests per second.

Get a list of the Application sessions matching the provided customer profile
attributes.

The match is successful if all the attributes of the request are found in a
profile, even if the profile has more attributes that are not present on the
request.

## Path parameters

- `applicationId` integer, required

## Query parameters

- `pageSize` integer
- `skip` integer
- `withTotalResultSize` boolean

## Request body

- CustomerProfileSearchQuery
  - `attributes` object: Properties to match against a customer profile. All provided attributes will be exactly matched against profile attributes.
  - `integrationIDs` string[]
  - `profileIDs` integer[]

## Response `200`

OK

- object
  - `hasMore` boolean
  - `totalResultSize` integer
  - `data` ApplicationSession[], required
    - `id` integer, required: The internal ID of this entity.
    - `created` string, date-time, required: The time this entity was created.
    - `integrationId` string, string, required: The integration ID set by your integration layer.
    - `storeIntegrationId` string: The integration ID of the store. You choose this ID when you create a store.
    - `applicationId` integer, required: The ID of the Application that owns this entity.
    - `profileId` integer: The globally unique Talon.One ID of the customer that created this entity.
    - `profileintegrationid` string: Integration ID of the customer for the session.
    - `coupon` string, required: Any coupon code entered.
    - `referral` string, required: Any referral code entered.
    - `state` 'open' | 'closed' | 'partially_returned' | 'cancelled', required: Indicates the current state of the session. Sessions can be created as `open` or `closed`. The state transitions are: 1. `open` -> `closed` 2. `open` -> `cancelled` 3. `closed` -> `cancelled` or `partially_returned` 4. `partially_returned` -> `cancelled` For more information, see [Customer session states](https://docs.talon.one/docs/dev/concepts/entities/customer-sessions).
    - `cartItems` CartItem[], required: Serialized JSON representation.
      - `name` string: Name of item.
      - `sku` string, required: Stock keeping unit of item.
      - `quantity` integer, required: Number of units of this item. Due to [cart item flattening](https://docs.talon.one/docs/product/rules/understanding-cart-item-flattening), if you provide a quantity greater than 1, the item will be split in as many items as the provided quantity. This will impact the number of **per-item** effects triggered from your campaigns.
      - `returnedQuantity` integer: Number of returned items, calculated internally based on returns of this item.
      - `remainingQuantity` integer: Remaining quantity of the item, calculated internally based on returns of this item.
      - `price` number: Price of the item in the currency defined by your Application. This field is required if this item is not part of a [catalog](https://docs.talon.one/docs/product/account/dev-tools/managing-cart-item-catalogs). If it is part of a catalog, setting a price here overrides the price from the catalog.
      - `category` string: Type, group or model of the item.
      - `product` Product: The specific properties of the product this item belongs to, if available.
        - `name` string, required: The product the item belongs to.
      - `weight` number: Weight of item in grams.
      - `height` number: Height of item in mm.
      - `width` number: Width of item in mm.
      - `length` number: Length of item in mm.
      - `position` number: Position of the Cart Item in the Cart (calculated internally).
      - `attributes` object: Use this property to set a value for the attributes of your choice. [Attributes](https://docs.talon.one/docs/dev/concepts/attributes) represent any information to attach to this cart item. Custom _cart item_ attributes must be created in the Campaign Manager before you set them with this property. **Note:** Any previously defined attributes that you do not include in the array will be removed.
      - `additionalCosts` object: Use this property to set a value for the additional costs of this item, such as a shipping cost. They must be created in the Campaign Manager before you set them with this property. See [Managing additional costs](https://docs.talon.one/docs/product/account/dev-tools/managing-additional-costs).
      - `catalogItemID` integer: The catalog item ID.
      - `selectedPriceType` string: The selected price type for this cart item (e.g. the price for members only).
      - `adjustmentReferenceId` string, uuid: The reference ID of the selected price adjustment for this cart item. Only returned if the selected price resulted from a price adjustment.
      - `adjustmentEffectiveFrom` string, date-time: The date and time from which the price adjustment is effective. Only returned if the selected price resulted from a price adjustment that contains this field.
      - `adjustmentEffectiveUntil` string, date-time: The date and time until which the price adjustment is effective. Only returned if the selected price resulted from a price adjustment that contains this field.
      - `prices` object: A map of keys and values representing the price types and related price adjustment details for this cart item. The keys correspond to the `priceType` names.
    - `discounts` object, required: **API V1 only.** A map of labeled discount values, in the same currency as the session. If you are using the V2 endpoints, refer to the `totalDiscounts` property instead.
    - `totalDiscounts` number, required: The total sum of the discounts applied to this session. **Note:** If more than one session is returned, this value is displayed as `0`.
    - `total` number, required: The total sum of the session before any discounts applied.
    - `attributes` object: Arbitrary properties associated with this item.

---

[API](https://skmtc.dev/talon/apis/management-api.md) - [All operations](https://skmtc.dev/talon/apis/management-api/llms.txt) - [OpenAPI document](https://skmtc.dev/talon/apis/management-api/revisions/7ef1b9504c3a?raw)
