---
title: "Query performance obligations"
method: POST
path: "/performance_obligations/search"
tags: ["Performance Obligations"]
---

# Query performance obligations

`POST /performance_obligations/search`

## Request

- Base URL: `https://us.api.flexprice.io/v1`
- URL: `https://us.api.flexprice.io/v1/performance_obligations/search`
- Auth: API key in header `x-api-key`

Use when searching performance obligations by contract, customer, status or recognition method. Returns a paginated list.

## Request body

- PobFilter
  - `contract_ids` string[]
  - `customer_ids` string[]
  - `end_time` string, date-time
  - `expand` string
  - `filters` TypesFilterCondition[]
    - `data_type` 'string' | 'number' | 'date' | 'array'
    - `field` string
    - `operator` 'eq' | 'contains' | 'not_contains' | 'gt' | 'lt' | 'gte' | 'in' | 'not_in' | 'before' | 'after'
    - `value` TypesValue
      - `array` string[]
      - `boolean` boolean
      - `date` string
      - `number` number
      - `string` string
  - `limit` integer
  - `offset` integer
  - `order` 'asc' | 'desc'
  - `performance_obligation_ids` string[]
  - `pob_statuses` TypesPerformanceObligationStatus[]
  - `recognition_methods` TypesRecognitionMethod[]
  - `sort` TypesSortCondition[]
    - `direction` 'asc' | 'desc'
    - `field` string
  - `start_time` string, date-time
  - `status` 'published' | 'deleted' | 'archived'

## Response `200`

OK

- ListPerformanceObligationsResponse
  - `items` PerformanceObligationResponse[]
    - `amortization_method` 'daily' | 'period_even' | 'period_even_prorated'
    - `associations` PerformanceObligationAssociationResponse[]
      - `created_at` string, date-time
      - `entity_id` string
      - `entity_type` 'subscription' | 'subscription_line_item' | 'invoice' | 'credit_note' | 'payment' | 'refund' | 'pob'
      - `id` string
    - `contract_id` string
    - `created_at` string, date-time
    - `id` string
    - `name` string
    - `pob_status` 'draft' | 'active' | 'satisfied' | 'cancelled'
    - `recognition_method` 'point_in_time' | 'straight_line' | 'as_consumed'
    - `service_end` string, date-time
    - `service_start` string, date-time
    - `status` 'published' | 'deleted' | 'archived'
    - `updated_at` string, date-time
  - `pagination` TypesPaginationResponse
    - `limit` integer
    - `offset` integer
    - `total` integer

## Other responses

- `400`: Invalid request
- `500`: Server error

## Changes

- **2026-10-29** `f4730fdf8ea5`: 5 warning
  - added the new `credit_note` enum value to the `items/items/associations/items/entity_type` response property for the response status `200`
  - added the new `invoice` enum value to the `items/items/associations/items/entity_type` response property for the response status `200`
  - added the new `payment` enum value to the `items/items/associations/items/entity_type` response property for the response status `200`
  - added the new `pob` enum value to the `items/items/associations/items/entity_type` response property for the response status `200`
  - …1 more
- **2026-10-29** `08033e753ac8`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/flexprice/apis/flexprice-api/changes/performance_obligations/search/post.md)

---

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