Read records from a price column’s source table with filtering, sorting, pagination, and optional cache-backed snapshots.
Extract prices
Reads records from the source table of the given price column. Supports filtering, field selection, sorting, and pagination. Optionally builds a cache snapshot to guarantee consistent ordering and pagination across multiple requests — useful when the underlying data may change between page fetches.Required permission:Get Prices Data From API - Price Columns (api-prices-extraction)
POST {api_url}/api/prices/{priceColumn}Content-Type: application/jsonAuthorization: Bearer {token} // or ApiKeyclient_id: {unique client id} // when using ApiKey, client_id is not needed
Path parameter
Description
{priceColumn}
The name value of a price column returned by the GET endpoint (e.g. LocalListPrice).
The page number to fetch (1-based). Used together with NrOfRecords. When using a CacheKey, this controls which pre-built page is returned.
Skip
integer
0
Number of records to skip before applying paging. Useful for offset-based access.
NrOfRecords
integer
100
Number of records per page.
Field selection
Field
Type
Default
Description
Fields
string[]
null (all fields)
Limits the response to the specified column names. Use the fields array from the GET endpoint to find valid values.
Sorting
Field
Type
Default
Description
OrderBy
string[]
null
Simple ascending sort by one or more column names.
OrderByNew
object[]
null
Advanced sorting. Each entry has columnName (string) and type ("asc" or "desc"). Takes precedence over OrderBy when both are provided.
Filtering
Field
Type
Default
Description
Filters
object[]
null
Array of filter conditions to apply. See Filter structure below.
Caching
Field
Type
Default
Description
UseCache
boolean
false
When true, the API builds a snapshot that freezes the set of matching rows and their order based on your sorting. Returns the first page immediately. Use the returned CacheKey for subsequent page requests to walk through the same stable row set. Column values still reflect the latest data at the time each page is fetched.
CacheKey
guid
null
When provided, fetches the specified page from an already-built snapshot. Combine with Page to walk through pages. When CacheKey is set, UseCache is not required.
Filter structure
Each filter object in the Filters array can have the following fields:
Field
Type
Description
columnName
string
The column to filter on. Must be a field listed under fields in the GET response.
op
string
The filter operator. See supported operators below.
value
string
The filter value as a string. For Between / NotBetween, use "low|high" format.
valueArray
string[]
For multi-value operators (ContainsAny, NotContainsAny). Supply the list of values here instead of value.
Supported operators (op)
Operator
Description
=
Equals. Empty string matches null or empty values.
!=
Not equals. Empty string matches not-null / not-empty values.
equals
Numeric equals.
notEqual
Numeric not equal.
greaterThan
Greater than.
greaterThanOrEqual
Greater than or equal.
lessThan
Less than.
lessThanOrEqual
Less than or equal.
Between
Between two values. Use value in "low|high" format.
NotBetween
Not between two values. Use value in "low|high" format.
Contains
Substring match (LIKE %value%).
NotContains
Does not contain substring.
StartsWith
Starts with the given string.
NotStartsWith
Does not start with the given string.
EndsWith
Ends with the given string.
NotEndsWith
Does not end with the given string.
ContainsAny
Matches any value in valueArray.
NotContainsAny
Does not match any value in valueArray.
equalsBlank
Value is null or empty.
notEqualBlank
Value is not null and not empty.
Cache-backed pagination
When fetching large datasets where you need to page through results reliably — especially if the underlying data could change between requests — use the cache snapshot flow:
Build the snapshot — Send a POST request with UseCache: true and your desired OrderBy / OrderByNew and NrOfRecords. The response metadata includes:
CacheKey — a GUID identifying this snapshot
TotalRows — total number of rows in the snapshot
TotalPages — total number of pages at the chosen page size
PageSize — confirmed rows per page
The first page of data
Fetch subsequent pages — Send additional POST requests with the same CacheKey and increment Page (e.g. Page: 2, Page: 3, …). Ordering and page size are already locked into the snapshot, so you do not need to resend them.
This guarantees that every matching record appears exactly once across pages and that ordering is stable, regardless of inserts or deletes in the source table while you are paging. Column values are still read fresh on each page fetch.
Snapshots are automatically cleaned up after 24 hours. Page through the snapshot promptly after receiving the cache key.
You may include filters when fetching pages. These filters are applied after the snapshot has been created, when the page is read. If you use filters, use the same filters for every page request to keep the result consistent.
POST {api_url}/api/prices/LocalListPriceContent-Type: application/jsonAuthorization: Bearer {token}{ "CacheKey": "3fa85f64-5717-4562-b3fc-2c963f66afa6", "Page": 2}
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"PriceEdge API Documentation","colors":{"primary":"#e73b66","light":"#e73b66","dark":"#e7556a"},"logo":{"light":"https://mintcdn.com/pe-7485e258/JvV9Z2zLtJmlJ3a1/logo/priceedge%20logo%20black.svg?fit=max\u0026auto=format\u0026n=JvV9Z2zLtJmlJ3a1\u0026q=85\u0026s=d22273523a9cf6ad476a952b57173487","dark":"https://mintcdn.com/pe-7485e258/JvV9Z2zLtJmlJ3a1/logo/priceedge%20logo%20white.svg?fit=max\u0026auto=format\u0026n=JvV9Z2zLtJmlJ3a1\u0026q=85\u0026s=e4cba5875bc0a40d242ebe386f34f3ce"},"favicon":"https://mintcdn.com/pe-7485e258/JvV9Z2zLtJmlJ3a1/favicon.svg?fit=max\u0026auto=format\u0026n=JvV9Z2zLtJmlJ3a1\u0026q=85\u0026s=c7d8e94a14677eda89d54efbbeced286","navbar":{"links":[{"href":"mailto:support@priceedge.se","label":"Support"}],"primary":{"type":"button","label":"Login","href":"https://priceedge.eu/login"}},"footer":{"socials":{"linkedin":"https://www.linkedin.com/company/priceedge"}},"contextual":{"options":["copy","view","chatgpt","claude","perplexity","mcp","cursor","vscode"],"display":"header"},"styling":{"latex":false},"navigation":{"global":{"anchors":[{"anchor":"Visit PriceEdge","icon":"chevrons-down","href":"https://priceedge.com"}]},"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"pe-7485e258","hasAudioNarration":false,"actualSubdomain":"pe-7485e258","customDomains":["developer.priceedge.com"],"gitSource":{"type":"github","owner":"priceedge","repo":"docs","deployBranch":"main","contentDirectory":"","isPrivate":false,"mountPath":"","label":""},"entitlements":{},"buildId":"6ad1de9950c5dd6c404390c2","clientVersion":"0.0.4142","searchFilterCounts":[{"language":"default","tag":"API reference","count":11},{"language":"default","tag":"Data endpoints","count":4},{"language":"default","tag":"Price extraction","count":3},{"language":"default","tag":"Webhooks","count":3},{"language":"default","tag":"API documentation","count":1},{"language":"default","tag":"Guides","count":1},{"language":"default","tag":"Getting started","count":1}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-rbac-roles","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-metadata","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"api-reference/price-extraction/extract-prices","slug":"/api-reference/price-extraction/extract-prices","pageMetadata":{"title":"Extract prices","description":"Read records from a price column's source table with filtering, sorting, pagination, and optional cache-backed snapshots.","icon":"file-export","href":"/api-reference/price-extraction/extract-prices"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Read records from a price column’s source table with filtering, sorting, pagination, and optional cache-backed snapshots.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,code:`code`,li:`li`,ol:`ol`,p:`p`,pre:`pre`,span:`span`,strong:`strong`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,ul:`ul`,..._provideComponents(),...props.components},{CodeBlock,Heading,Table,Tip,Warning}=_components;if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Table)_missingMdxReference(`Table`,true);if(!Tip)_missingMdxReference(`Tip`,true);if(!Warning)_missingMdxReference(`Warning`,true);return _jsxs(_Fragment,{children:[_jsx(Heading,{level:`2`,id:`extract-prices`,children:`Extract prices`}),`\n`,_jsxs(_components.p,{children:[`Reads records from the source table of the given price column. Supports filtering, field selection, sorting, and pagination. Optionally builds a `,_jsx(_components.strong,{children:`cache snapshot`}),` to guarantee consistent ordering and pagination across multiple requests — useful when the underlying data may change between page fetches.`]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`Required permission:`}),` `,_jsx(_components.code,{children:`Get Prices Data From API - Price Columns (api-prices-extraction)`})]}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`5`,language:`http`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`http`,children:_jsxs(_components.code,{language:`http`,numberOfLines:`5`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`POST`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {api_url}/api/prices/{priceColumn}`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:`Content-Type`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` application/json`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:`Authorization`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` Bearer {token} // or ApiKey`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:`client_id`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` {unique client id} // when using ApiKey, client_id is not needed`})]}),`\n`]})})}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Path parameter`}),_jsx(_components.th,{children:`Description`})]})}),_jsx(_components.tbody,{children:_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`{priceColumn}`})}),_jsxs(_components.td,{children:[`The `,_jsx(_components.code,{children:`name`}),` value of a price column returned by the GET endpoint (e.g. `,_jsx(_components.code,{children:`LocalListPrice`}),`).`]})]})})]}),`\n`,_jsx(Heading,{level:`2`,id:`request-body`,children:`Request body`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`14`,language:`json`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`json`,children:_jsxs(_components.code,{language:`json`,numberOfLines:`14`,children:[_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`{`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"Page\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`1`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"Skip\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`0`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"NrOfRecords\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`100`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"Fields\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: [`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"cd_ItemNumber\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Price\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`],`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"OrderByNew\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: [`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` { `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"columnName\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Price\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"type\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"desc\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` ],`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"Filters\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: [`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` { `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"columnName\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"Price\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"op\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"greaterThan\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"value\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"100\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` ],`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"UseCache\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`false`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"CacheKey\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`null`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`}`})}),`\n`]})})}),`\n`,_jsx(Heading,{level:`2`,id:`request-body-parameters`,children:`Request body parameters`}),`\n`,_jsx(Heading,{level:`3`,id:`pagination`,children:`Pagination`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Field`}),_jsx(_components.th,{children:`Type`}),_jsx(_components.th,{children:`Default`}),_jsx(_components.th,{children:`Description`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`Page`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`integer`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`1`})}),_jsxs(_components.td,{children:[`The page number to fetch (1-based). Used together with `,_jsx(_components.code,{children:`NrOfRecords`}),`. When using a `,_jsx(_components.code,{children:`CacheKey`}),`, this controls which pre-built page is returned.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`Skip`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`integer`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`0`})}),_jsx(_components.td,{children:`Number of records to skip before applying paging. Useful for offset-based access.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`NrOfRecords`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`integer`})}),_jsx(_components.td,{\"data-numeric\":`true`,children:_jsx(_components.code,{children:`100`})}),_jsx(_components.td,{children:`Number of records per page.`})]})]})]}),`\n`,_jsx(Heading,{level:`3`,id:`field-selection`,children:`Field selection`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Field`}),_jsx(_components.th,{children:`Type`}),_jsx(_components.th,{children:`Default`}),_jsx(_components.th,{children:`Description`})]})}),_jsx(_components.tbody,{children:_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`Fields`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`string[]`})}),_jsxs(_components.td,{children:[_jsx(_components.code,{children:`null`}),` (all fields)`]}),_jsxs(_components.td,{children:[`Limits the response to the specified column names. Use the `,_jsx(_components.code,{children:`fields`}),` array from the GET endpoint to find valid values.`]})]})})]}),`\n`,_jsx(Heading,{level:`3`,id:`sorting`,children:`Sorting`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Field`}),_jsx(_components.th,{children:`Type`}),_jsx(_components.th,{children:`Default`}),_jsx(_components.th,{children:`Description`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`OrderBy`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`string[]`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`null`})}),_jsx(_components.td,{children:`Simple ascending sort by one or more column names.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`OrderByNew`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`object[]`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`null`})}),_jsxs(_components.td,{children:[`Advanced sorting. Each entry has `,_jsx(_components.code,{children:`columnName`}),` (string) and `,_jsx(_components.code,{children:`type`}),` (`,_jsx(_components.code,{children:`\"asc\"`}),` or `,_jsx(_components.code,{children:`\"desc\"`}),`). Takes precedence over `,_jsx(_components.code,{children:`OrderBy`}),` when both are provided.`]})]})]})]}),`\n`,_jsx(Heading,{level:`3`,id:`filtering`,children:`Filtering`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Field`}),_jsx(_components.th,{children:`Type`}),_jsx(_components.th,{children:`Default`}),_jsx(_components.th,{children:`Description`})]})}),_jsx(_components.tbody,{children:_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`Filters`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`object[]`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`null`})}),_jsxs(_components.td,{children:[`Array of filter conditions to apply. See `,_jsx(_components.a,{href:`#filter-structure`,children:`Filter structure`}),` below.`]})]})})]}),`\n`,_jsx(Heading,{level:`3`,id:`caching`,children:`Caching`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Field`}),_jsx(_components.th,{children:`Type`}),_jsx(_components.th,{children:`Default`}),_jsx(_components.th,{children:`Description`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`UseCache`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`boolean`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`false`})}),_jsxs(_components.td,{children:[`When `,_jsx(_components.code,{children:`true`}),`, the API builds a snapshot that freezes the set of matching rows and their order based on your sorting. Returns the first page immediately. Use the returned `,_jsx(_components.code,{children:`CacheKey`}),` for subsequent page requests to walk through the same stable row set. Column values still reflect the latest data at the time each page is fetched.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`CacheKey`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`guid`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`null`})}),_jsxs(_components.td,{children:[`When provided, fetches the specified page from an already-built snapshot. Combine with `,_jsx(_components.code,{children:`Page`}),` to walk through pages. When `,_jsx(_components.code,{children:`CacheKey`}),` is set, `,_jsx(_components.code,{children:`UseCache`}),` is not required.`]})]})]})]}),`\n`,_jsx(Heading,{level:`2`,id:`filter-structure`,children:`Filter structure`}),`\n`,_jsxs(_components.p,{children:[`Each filter object in the `,_jsx(_components.code,{children:`Filters`}),` array can have the following fields:`]}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Field`}),_jsx(_components.th,{children:`Type`}),_jsx(_components.th,{children:`Description`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`columnName`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`string`})}),_jsxs(_components.td,{children:[`The column to filter on. Must be a field listed under `,_jsx(_components.code,{children:`fields`}),` in the GET response.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`op`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`string`})}),_jsx(_components.td,{children:`The filter operator. See supported operators below.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`value`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`string`})}),_jsxs(_components.td,{children:[`The filter value as a string. For `,_jsx(_components.code,{children:`Between`}),` / `,_jsx(_components.code,{children:`NotBetween`}),`, use `,_jsx(_components.code,{children:`\"low|high\"`}),` format.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`valueArray`})}),_jsx(_components.td,{children:_jsx(_components.code,{children:`string[]`})}),_jsxs(_components.td,{children:[`For multi-value operators (`,_jsx(_components.code,{children:`ContainsAny`}),`, `,_jsx(_components.code,{children:`NotContainsAny`}),`). Supply the list of values here instead of `,_jsx(_components.code,{children:`value`}),`.`]})]})]})]}),`\n`,_jsxs(Heading,{level:`3`,id:`supported-operators-op`,children:[`Supported operators (`,_jsx(_components.code,{children:`op`}),`)`]}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Operator`}),_jsx(_components.th,{children:`Description`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`=`})}),_jsx(_components.td,{children:`Equals. Empty string matches null or empty values.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`!=`})}),_jsx(_components.td,{children:`Not equals. Empty string matches not-null / not-empty values.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`equals`})}),_jsx(_components.td,{children:`Numeric equals.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`notEqual`})}),_jsx(_components.td,{children:`Numeric not equal.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`greaterThan`})}),_jsx(_components.td,{children:`Greater than.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`greaterThanOrEqual`})}),_jsx(_components.td,{children:`Greater than or equal.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`lessThan`})}),_jsx(_components.td,{children:`Less than.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`lessThanOrEqual`})}),_jsx(_components.td,{children:`Less than or equal.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`Between`})}),_jsxs(_components.td,{children:[`Between two values. Use `,_jsx(_components.code,{children:`value`}),` in `,_jsx(_components.code,{children:`\"low|high\"`}),` format.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`NotBetween`})}),_jsxs(_components.td,{children:[`Not between two values. Use `,_jsx(_components.code,{children:`value`}),` in `,_jsx(_components.code,{children:`\"low|high\"`}),` format.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`Contains`})}),_jsxs(_components.td,{children:[`Substring match (LIKE `,_jsx(_components.code,{children:`%value%`}),`).`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`NotContains`})}),_jsx(_components.td,{children:`Does not contain substring.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`StartsWith`})}),_jsx(_components.td,{children:`Starts with the given string.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`NotStartsWith`})}),_jsx(_components.td,{children:`Does not start with the given string.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`EndsWith`})}),_jsx(_components.td,{children:`Ends with the given string.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`NotEndsWith`})}),_jsx(_components.td,{children:`Does not end with the given string.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`ContainsAny`})}),_jsxs(_components.td,{children:[`Matches any value in `,_jsx(_components.code,{children:`valueArray`}),`.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`NotContainsAny`})}),_jsxs(_components.td,{children:[`Does not match any value in `,_jsx(_components.code,{children:`valueArray`}),`.`]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`equalsBlank`})}),_jsx(_components.td,{children:`Value is null or empty.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`notEqualBlank`})}),_jsx(_components.td,{children:`Value is not null and not empty.`})]})]})]}),`\n`,_jsx(Heading,{level:`2`,id:`cache-backed-pagination`,children:`Cache-backed pagination`}),`\n`,_jsx(_components.p,{children:`When fetching large datasets where you need to page through results reliably — especially if the underlying data could change between requests — use the cache snapshot flow:`}),`\n`,_jsxs(_components.ol,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Build the snapshot`}),` — Send a POST request with `,_jsx(_components.code,{children:`UseCache: true`}),` and your desired `,_jsx(_components.code,{children:`OrderBy`}),` / `,_jsx(_components.code,{children:`OrderByNew`}),` and `,_jsx(_components.code,{children:`NrOfRecords`}),`. The response metadata includes:`,`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.code,{children:`CacheKey`}),` — a GUID identifying this snapshot`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.code,{children:`TotalRows`}),` — total number of rows in the snapshot`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.code,{children:`TotalPages`}),` — total number of pages at the chosen page size`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.code,{children:`PageSize`}),` — confirmed rows per page`]}),`\n`,_jsx(_components.li,{children:`The first page of data`}),`\n`]}),`\n`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Fetch subsequent pages`}),` — Send additional POST requests with the same `,_jsx(_components.code,{children:`CacheKey`}),` and increment `,_jsx(_components.code,{children:`Page`}),` (e.g. `,_jsx(_components.code,{children:`Page: 2`}),`, `,_jsx(_components.code,{children:`Page: 3`}),`, …). Ordering and page size are already locked into the snapshot, so you do not need to resend them.`]}),`\n`]}),`\n`,_jsx(_components.p,{children:`This guarantees that every matching record appears exactly once across pages and that ordering is stable, regardless of inserts or deletes in the source table while you are paging. Column values are still read fresh on each page fetch.`}),`\n`,_jsx(Warning,{children:_jsx(_components.p,{children:`Snapshots are automatically cleaned up after 24 hours. Page through the snapshot promptly after receiving the cache key.`})}),`\n`,_jsx(Tip,{children:_jsx(_components.p,{children:`You may include filters when fetching pages. These filters are applied after the snapshot has been created, when the page is read. If you use filters, use the same filters for every page request to keep the result consistent.`})}),`\n`,_jsx(Heading,{level:`3`,id:`example-—-page-1-build-cache`,children:`Example — page 1 (build cache)`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`10`,language:`http`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`http`,children:_jsxs(_components.code,{language:`http`,numberOfLines:`10`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`POST`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {api_url}/api/prices/LocalListPrice`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:`Content-Type`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` application/json`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:`Authorization`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` Bearer {token}`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`{`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"UseCache\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#569CD6`},children:`true`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"NrOfRecords\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`500`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"OrderByNew\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: [{ `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"columnName\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"cd_ItemNumber\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`, `}),_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:`\"type\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"asc\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` }]`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`}`})}),`\n`]})})}),`\n`,_jsx(Heading,{level:`3`,id:`example-—-page-2-use-existing-cache`,children:`Example — page 2 (use existing cache)`}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`9`,language:`http`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`http`,children:_jsxs(_components.code,{language:`http`,numberOfLines:`9`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#C586C0`},children:`POST`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:` {api_url}/api/prices/LocalListPrice`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:`Content-Type`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` application/json`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#569CD6`},children:`Authorization`}),_jsx(_components.span,{style:{color:`#CF222E`,\"--shiki-dark\":`#569CD6`},children:`:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` Bearer {token}`})]}),`\n`,_jsx(_components.span,{className:`line`}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`{`})}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"CacheKey\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:`\"3fa85f64-5717-4562-b3fc-2c963f66afa6\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`,`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#116329`,\"--shiki-dark\":`#9CDCFE`},children:` \"Page\"`}),_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`: `}),_jsx(_components.span,{style:{color:`#0550AE`,\"--shiki-dark\":`#B5CEA8`},children:`2`})]}),`\n`,_jsx(_components.span,{className:`line`,children:_jsx(_components.span,{style:{color:`#1F2328`,\"--shiki-dark\":`#D4D4D4`},children:`}`})}),`\n`]})})})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Extract prices","description":"Read records from a price column's source table with filtering, sorting, pagination, and optional cache-backed snapshots.","icon":"file-export","href":"/api-reference/price-extraction/extract-prices"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Extract prices","slug":"extract-prices","depth":2,"children":[]},{"title":"Request body","slug":"request-body","depth":2,"children":[]},{"title":"Request body parameters","slug":"request-body-parameters","depth":2,"children":[{"title":"Pagination","slug":"pagination","depth":3,"children":[]},{"title":"Field selection","slug":"field-selection","depth":3,"children":[]},{"title":"Sorting","slug":"sorting","depth":3,"children":[]},{"title":"Filtering","slug":"filtering","depth":3,"children":[]},{"title":"Caching","slug":"caching","depth":3,"children":[]}]},{"title":"Filter structure","slug":"filter-structure","depth":2,"children":[{"title":"Supported operators (op)","slug":"supported-operators-op","depth":3,"children":[]}]},{"title":"Cache-backed pagination","slug":"cache-backed-pagination","depth":2,"children":[{"title":"Example — page 1 (build cache)","slug":"example-—-page-1-build-cache","depth":3,"children":[]},{"title":"Example — page 2 (use existing cache)","slug":"example-—-page-2-use-existing-cache","depth":3,"children":[]}]}],"codeExamples":{}},"jsLinks":[],"subdomain":"pe-7485e258","siteName":"PriceEdge API Documentation","title":"Extract prices - PriceEdge API Documentation","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-07-16T09:51:09.919Z","originalFileLocation":"api-reference/price-extraction/extract-prices.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Read records from a price column\u0026#x27;s source table with filtering, sorting, pagination, and optional cache-backed snapshots.\">\u003cmeta data-mint-head name=\"application-name\" content=\"PriceEdge API Documentation\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/pe-7485e258/3qNSmrqCgGE8C0WU/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/pe-7485e258/3qNSmrqCgGE8C0WU/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/pe-7485e258/3qNSmrqCgGE8C0WU/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/pe-7485e258/3qNSmrqCgGE8C0WU/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/pe-7485e258/3qNSmrqCgGE8C0WU/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/pe-7485e258/3qNSmrqCgGE8C0WU/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/pe-7485e258/3qNSmrqCgGE8C0WU/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/pe-7485e258/3qNSmrqCgGE8C0WU/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/pe-7485e258/3qNSmrqCgGE8C0WU/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Extract prices - PriceEdge API Documentation\">\u003cmeta data-mint-head property=\"og:description\" content=\"Read records from a price column\u0026#x27;s source table with filtering, sorting, pagination, and optional cache-backed snapshots.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"PriceEdge API Documentation\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://developer.priceedge.com/api-reference/price-extraction/extract-prices\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://pe-7485e258.mintlify.site/_mintlify/api/og/v2?division=Price+extraction\u0026amp;title=Extract+prices\u0026amp;description=Read+records+from+a+price+column%27s+source+table+with+filtering%2C+sorting%2C+pagination%2C+and+optional+cache-backed+snapshots.\u0026amp;theme=cfd1cbc401b25a5a8cdbf7cb\u0026amp;signature=fcc3fc78374a516f15b4fa711957a36f965cc6b72a3ad9d2f5e02bccab2af029\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Extract prices - PriceEdge API Documentation\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Read records from a price column\u0026#x27;s source table with filtering, sorting, pagination, and optional cache-backed snapshots.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://pe-7485e258.mintlify.site/_mintlify/api/og/v2?division=Price+extraction\u0026amp;title=Extract+prices\u0026amp;description=Read+records+from+a+price+column%27s+source+table+with+filtering%2C+sorting%2C+pagination%2C+and+optional+cache-backed+snapshots.\u0026amp;theme=cfd1cbc401b25a5a8cdbf7cb\u0026amp;signature=fcc3fc78374a516f15b4fa711957a36f965cc6b72a3ad9d2f5e02bccab2af029\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/pe-7485e258/3qNSmrqCgGE8C0WU/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"PriceEdge API Documentation\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#e73b66\">\u003clink data-mint-head rel=\"canonical\" href=\"https://developer.priceedge.com/api-reference/price-extraction/extract-prices\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/price-extraction/extract-prices.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://developer.priceedge.com/#organization\",\"name\":\"PriceEdge API Documentation\",\"url\":\"https://developer.priceedge.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/pe-7485e258/JvV9Z2zLtJmlJ3a1/logo/priceedge%20logo%20black.svg?fit=max\u0026auto=format\u0026n=JvV9Z2zLtJmlJ3a1\u0026q=85\u0026s=d22273523a9cf6ad476a952b57173487\"}},{\"@type\":\"WebSite\",\"@id\":\"https://developer.priceedge.com#website\",\"name\":\"PriceEdge API Documentation\",\"url\":\"https://developer.priceedge.com\",\"publisher\":{\"@id\":\"https://developer.priceedge.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://developer.priceedge.com/api-reference/price-extraction/extract-prices#webpage\",\"url\":\"https://developer.priceedge.com/api-reference/price-extraction/extract-prices\",\"name\":\"Extract prices\",\"description\":\"Read records from a price column's source table with filtering, sorting, pagination, and optional cache-backed snapshots.\",\"dateModified\":\"2026-07-16T09:51:09.919Z\",\"isPartOf\":{\"@id\":\"https://developer.priceedge.com#website\"},\"breadcrumb\":{\"@id\":\"https://developer.priceedge.com/api-reference/price-extraction/extract-prices#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://developer.priceedge.com/api-reference/price-extraction/extract-prices#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Price extraction\",\"item\":\"https://developer.priceedge.com/api-reference/price-extraction/overview\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Extract prices\",\"item\":\"https://developer.priceedge.com/api-reference/price-extraction/extract-prices\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://developer.priceedge.com/api-reference/price-extraction/extract-prices#article\",\"headline\":\"Extract prices\",\"name\":\"Extract prices\",\"description\":\"Read records from a price column's source table with filtering, sorting, pagination, and optional cache-backed snapshots.\",\"url\":\"https://developer.priceedge.com/api-reference/price-extraction/extract-prices\",\"mainEntityOfPage\":{\"@id\":\"https://developer.priceedge.com/api-reference/price-extraction/extract-prices#webpage\"},\"dateModified\":\"2026-07-16T09:51:09.919Z\",\"publisher\":{\"@id\":\"https://developer.priceedge.com/#organization\"},\"isPartOf\":{\"@id\":\"https://developer.priceedge.com#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"PriceEdge API Documentation\",\"publisher\":{\"@type\":\"Organization\",\"name\":\"PriceEdge API Documentation\"},\"provider\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","agentPointerHref":"/api-reference/price-extraction/extract-prices.md","siteName":"PriceEdge API Documentation","nav":{"global":{"anchors":[{"anchor":"Visit PriceEdge","icon":"chevrons-down","href":"https://priceedge.com"}]},"tabs":[{"tab":"Guides","pages":[{"title":"Guides","href":""}]},{"tab":"API reference","groups":[{"group":"API documentation","pages":[{"title":"Authentication","icon":"key","href":"/api-reference/introduction"}]},{"group":"Data endpoints","pages":[{"title":"Table metadata","icon":"table","href":"/api-reference/endpoint/TABLE-METADATA"},{"title":"Get data","icon":"file-export","href":"/api-reference/endpoint/GET-DATA"},{"title":"Set data","icon":"file-import","href":"/api-reference/endpoint/SET-DATA"},{"title":"Delete data","icon":"trash","href":"/api-reference/endpoint/DELETE-DATA"}]},{"group":"Price extraction","pages":[{"title":"Price extraction","icon":"sparkles","href":"/api-reference/price-extraction/overview"},{"title":"List price columns","description":"Returns all price columns configured in the system along with metadata about their underlying source tables.","icon":"list","href":"/api-reference/price-extraction/list-price-columns"},{"title":"Extract prices","icon":"file-export","href":"/api-reference/price-extraction/extract-prices"}]},{"group":"Webhooks","pages":[{"title":"Webhook","description":"How to setup webhooks","icon":"up-right-and-down-left-from-center","href":"/api-reference/webhooks/webhook"},{"title":"Webhook Security","icon":"shield-halved","href":"/api-reference/webhooks/webhook-security"},{"title":"Webhook cache snapshot","icon":"database","href":"/api-reference/webhooks/webhook-cache"}]}]}]},"basePath":"","title":"Extract prices - PriceEdge API Documentation","buildId":"dpl_G2Qd45vZZ7MkBiGF9yYx8ZsbbKXX","deploymentId":"dpl_G2Qd45vZZ7MkBiGF9yYx8ZsbbKXX","dynamics":[],"chunks":[]}