# Extensions

Extensions

## List extensions for a tenant

> List extensions for a tenant

```json
{"openapi":"3.0.2","info":{"title":"Flow Retail API version 2","version":"2.0.0"},"tags":[{"name":"Extensions","description":"Extensions"}],"servers":[{"description":"Flow Retail Production","url":"https://api.flowretail.com/v2"},{"description":"Flow Retail Stage","url":"https://api.stage.flowretail.com/v2"}],"security":[{"authToken":[]}],"components":{"securitySchemes":{"authToken":{"description":"Token received from the auth service","scheme":"bearer","type":"http"}},"parameters":{"pageNumberQuery":{"description":"Reference to a specific page in a result set.","in":"query","name":"pageNumber","required":false,"schema":{"type":"integer"}},"pageSizeQuery":{"description":"The number of items per page in a result set.","in":"query","name":"pageSize","required":false,"schema":{"type":"integer"}},"sortByQuery":{"description":"Defines which field the resource list is sorted by.","in":"query","name":"sortBy","required":false,"schema":{"type":"string"}},"sortDirectionQuery":{"description":"Reference to a sort direction","explode":false,"in":"query","name":"sortDirection","schema":{"$ref":"#/components/schemas/SortDirectionENUM"},"style":"form"}},"schemas":{"SortDirectionENUM":{"description":"|ENUM      | Description |\n| ---------------- | ------------ |\n| ASC | Sort in ascending order|\n| DESC | Sort in descending order|\n","enum":["ASC","DESC"],"title":"SortDirectionENUM","type":"string"},"TenantExtensionResponseSchema":{"title":"TenantExtensionResponseSchema","type":"object","description":"TenantExtensionResponseSchema","required":["tenantExtensionUid","name","active","extensionCode","hasStoreExtensionSettings","tenantParameters","statusMessages","availableTenantParameters","availableStoreParameters"],"properties":{"tenantExtensionUid":{"$ref":"#/components/schemas/UID"},"name":{"type":"string"},"active":{"type":"boolean"},"extensionCode":{"$ref":"#/components/schemas/ExtensionCodeENUM"},"hasStoreExtensionSettings":{"type":"boolean","description":"Indicate if the extension needs to be activated and configured pr store"},"tenantParameters":{"type":"array","items":{"$ref":"#/components/schemas/GeneralParameterResponseSchema"}},"statusMessages":{"type":"array","items":{"type":"string"}},"availableTenantParameters":{"type":"array","deprecated":true,"items":{"$ref":"#/components/schemas/AvailableExtensionParameterSchema"}},"availableStoreParameters":{"type":"array","items":{"$ref":"#/components/schemas/GeneralParameterResponseSchema"}}}},"UID":{"title":"UID","type":"string","pattern":"^[A-Za-z0-9-_]+"},"ExtensionCodeENUM":{"enum":["FLOWGIFTCARD","ADYEN_POS","PAYEX_POS","VIPPS","EXTERNAL_CUSTOMER_SEARCH","STORE_CREDIT","SMS","STRIPE","NETS","VERIFONE","SERVICE_WORKSHOP","TWO_INVOICE","FOREIGN_CASH","OMNIUM","DILLER","ARTS","CAMPAIGN","B2B","PEOPLE_COUNTER_KUNDETELLING","COMPENSATION","SWISH","DINTERO","KID","EHF","POWER","BRITANNIA"],"title":"ExtensionCodeENUM","type":"string"},"GeneralParameterResponseSchema":{"title":"GeneralParameterResponseSchema","type":"object","required":["key","value","type","allowedValues","validationRegex","name","required"],"properties":{"key":{"type":"string"},"value":{"type":"string"},"type":{"$ref":"#/components/schemas/GeneralParameterTypeENUM"},"allowedValues":{"type":"array","items":{"type":"string"}},"validationRegex":{"type":"string"},"name":{"type":"string"},"required":{"type":"boolean"}}},"GeneralParameterTypeENUM":{"title":"GeneralSettingTypeENUM","type":"string","enum":["STRING","INTEGER","DECIMAL","BOOL","ENUM"],"description":"| Type | Description |\n|--|--|\n|BOOL | Booleans will be the string `true` or `false` |\n|DECIMAL | Descimal numbers can only have two decimals and is represented as an integer multiplied by 100. Example: 1.2 is will be 120 and 5 will be 500 |\n|ENUM| The enum value should be one of the values listed in `allowedValues` |"},"AvailableExtensionParameterSchema":{"title":"AvailableExtensionParameterSchema","type":"object","required":["key","type","required"],"properties":{"key":{"type":"string"},"type":{"$ref":"#/components/schemas/ExtensionParameterDataTypeENUM"},"required":{"type":"boolean"}}},"ExtensionParameterDataTypeENUM":{"type":"string","title":"ExtensionParameterDataTypeENUM","enum":["STRING","INTEGER","DECIMAL","BOOLEAN"]},"Paging":{"description":"totalCount The total number of items in the result set.\n\npageSize The number of items per page.\n\npageNumber The current page in the result set.","properties":{"pageNumber":{"type":"integer"},"pageSize":{"type":"integer"},"totalCount":{"type":"integer"}},"required":["totalCount","pageSize","pageNumber"],"title":"Paging","type":"object"}},"responses":{"TenantExtensionListResponse":{"content":{"application/json":{"schema":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/TenantExtensionResponseSchema"}},"paging":{"$ref":"#/components/schemas/Paging"}},"required":["items","paging"]}}},"description":"Example response"}}},"paths":{"/tenants/{tenantUid}/extensions":{"get":{"description":"List extensions for a tenant","operationId":"get-tenants-extensions","parameters":[{"$ref":"#/components/parameters/pageNumberQuery"},{"$ref":"#/components/parameters/pageSizeQuery"},{"$ref":"#/components/parameters/sortByQuery"},{"$ref":"#/components/parameters/sortDirectionQuery"}],"responses":{"200":{"$ref":"#/components/responses/TenantExtensionListResponse"}},"summary":"List extensions for a tenant","tags":["Extensions"]}}}}
```

## Get tenant extension details

> Get details for a tenant extension.

```json
{"openapi":"3.0.2","info":{"title":"Flow Retail API version 2","version":"2.0.0"},"tags":[{"name":"Extensions","description":"Extensions"}],"servers":[{"description":"Flow Retail Production","url":"https://api.flowretail.com/v2"},{"description":"Flow Retail Stage","url":"https://api.stage.flowretail.com/v2"}],"security":[{"authToken":[]}],"components":{"securitySchemes":{"authToken":{"description":"Token received from the auth service","scheme":"bearer","type":"http"}},"responses":{"TenantExtensionResponse":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TenantExtensionResponseSchema"}}},"description":"Example response"}},"schemas":{"TenantExtensionResponseSchema":{"title":"TenantExtensionResponseSchema","type":"object","description":"TenantExtensionResponseSchema","required":["tenantExtensionUid","name","active","extensionCode","hasStoreExtensionSettings","tenantParameters","statusMessages","availableTenantParameters","availableStoreParameters"],"properties":{"tenantExtensionUid":{"$ref":"#/components/schemas/UID"},"name":{"type":"string"},"active":{"type":"boolean"},"extensionCode":{"$ref":"#/components/schemas/ExtensionCodeENUM"},"hasStoreExtensionSettings":{"type":"boolean","description":"Indicate if the extension needs to be activated and configured pr store"},"tenantParameters":{"type":"array","items":{"$ref":"#/components/schemas/GeneralParameterResponseSchema"}},"statusMessages":{"type":"array","items":{"type":"string"}},"availableTenantParameters":{"type":"array","deprecated":true,"items":{"$ref":"#/components/schemas/AvailableExtensionParameterSchema"}},"availableStoreParameters":{"type":"array","items":{"$ref":"#/components/schemas/GeneralParameterResponseSchema"}}}},"UID":{"title":"UID","type":"string","pattern":"^[A-Za-z0-9-_]+"},"ExtensionCodeENUM":{"enum":["FLOWGIFTCARD","ADYEN_POS","PAYEX_POS","VIPPS","EXTERNAL_CUSTOMER_SEARCH","STORE_CREDIT","SMS","STRIPE","NETS","VERIFONE","SERVICE_WORKSHOP","TWO_INVOICE","FOREIGN_CASH","OMNIUM","DILLER","ARTS","CAMPAIGN","B2B","PEOPLE_COUNTER_KUNDETELLING","COMPENSATION","SWISH","DINTERO","KID","EHF","POWER","BRITANNIA"],"title":"ExtensionCodeENUM","type":"string"},"GeneralParameterResponseSchema":{"title":"GeneralParameterResponseSchema","type":"object","required":["key","value","type","allowedValues","validationRegex","name","required"],"properties":{"key":{"type":"string"},"value":{"type":"string"},"type":{"$ref":"#/components/schemas/GeneralParameterTypeENUM"},"allowedValues":{"type":"array","items":{"type":"string"}},"validationRegex":{"type":"string"},"name":{"type":"string"},"required":{"type":"boolean"}}},"GeneralParameterTypeENUM":{"title":"GeneralSettingTypeENUM","type":"string","enum":["STRING","INTEGER","DECIMAL","BOOL","ENUM"],"description":"| Type | Description |\n|--|--|\n|BOOL | Booleans will be the string `true` or `false` |\n|DECIMAL | Descimal numbers can only have two decimals and is represented as an integer multiplied by 100. Example: 1.2 is will be 120 and 5 will be 500 |\n|ENUM| The enum value should be one of the values listed in `allowedValues` |"},"AvailableExtensionParameterSchema":{"title":"AvailableExtensionParameterSchema","type":"object","required":["key","type","required"],"properties":{"key":{"type":"string"},"type":{"$ref":"#/components/schemas/ExtensionParameterDataTypeENUM"},"required":{"type":"boolean"}}},"ExtensionParameterDataTypeENUM":{"type":"string","title":"ExtensionParameterDataTypeENUM","enum":["STRING","INTEGER","DECIMAL","BOOLEAN"]}}},"paths":{"/tenants/{tenantUid}/extensions/{tenantExtensionUid}":{"get":{"description":"Get details for a tenant extension.","operationId":"get-tenants-extension-details","responses":{"200":{"$ref":"#/components/responses/TenantExtensionResponse"}},"summary":"Get tenant extension details","tags":["Extensions"]}}}}
```

## Update tenant extension details

> Update details for a tenant extension.

```json
{"openapi":"3.0.2","info":{"title":"Flow Retail API version 2","version":"2.0.0"},"tags":[{"name":"Extensions","description":"Extensions"}],"servers":[{"description":"Flow Retail Production","url":"https://api.flowretail.com/v2"},{"description":"Flow Retail Stage","url":"https://api.stage.flowretail.com/v2"}],"security":[{"authToken":[]}],"components":{"securitySchemes":{"authToken":{"description":"Token received from the auth service","scheme":"bearer","type":"http"}},"requestBodies":{"TenantExtensionUpdateRequest":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TenantExtensionUpdateRequestSchema"}}}}},"schemas":{"TenantExtensionUpdateRequestSchema":{"title":"TenantExtensionUpdateRequestSchema","type":"object","properties":{"name":{"type":"string"},"active":{"type":"boolean"},"tenantParameters":{"type":"array","items":{"$ref":"#/components/schemas/GeneralParameterRequestSchema"}}},"required":["active"]},"GeneralParameterRequestSchema":{"description":"GeneralParameterRequestSchema","title":"GeneralParameterRequestSchema","type":"object","properties":{"key":{"type":"string"},"value":{"type":"string"}},"required":["key","value"]},"TenantExtensionResponseSchema":{"title":"TenantExtensionResponseSchema","type":"object","description":"TenantExtensionResponseSchema","required":["tenantExtensionUid","name","active","extensionCode","hasStoreExtensionSettings","tenantParameters","statusMessages","availableTenantParameters","availableStoreParameters"],"properties":{"tenantExtensionUid":{"$ref":"#/components/schemas/UID"},"name":{"type":"string"},"active":{"type":"boolean"},"extensionCode":{"$ref":"#/components/schemas/ExtensionCodeENUM"},"hasStoreExtensionSettings":{"type":"boolean","description":"Indicate if the extension needs to be activated and configured pr store"},"tenantParameters":{"type":"array","items":{"$ref":"#/components/schemas/GeneralParameterResponseSchema"}},"statusMessages":{"type":"array","items":{"type":"string"}},"availableTenantParameters":{"type":"array","deprecated":true,"items":{"$ref":"#/components/schemas/AvailableExtensionParameterSchema"}},"availableStoreParameters":{"type":"array","items":{"$ref":"#/components/schemas/GeneralParameterResponseSchema"}}}},"UID":{"title":"UID","type":"string","pattern":"^[A-Za-z0-9-_]+"},"ExtensionCodeENUM":{"enum":["FLOWGIFTCARD","ADYEN_POS","PAYEX_POS","VIPPS","EXTERNAL_CUSTOMER_SEARCH","STORE_CREDIT","SMS","STRIPE","NETS","VERIFONE","SERVICE_WORKSHOP","TWO_INVOICE","FOREIGN_CASH","OMNIUM","DILLER","ARTS","CAMPAIGN","B2B","PEOPLE_COUNTER_KUNDETELLING","COMPENSATION","SWISH","DINTERO","KID","EHF","POWER","BRITANNIA"],"title":"ExtensionCodeENUM","type":"string"},"GeneralParameterResponseSchema":{"title":"GeneralParameterResponseSchema","type":"object","required":["key","value","type","allowedValues","validationRegex","name","required"],"properties":{"key":{"type":"string"},"value":{"type":"string"},"type":{"$ref":"#/components/schemas/GeneralParameterTypeENUM"},"allowedValues":{"type":"array","items":{"type":"string"}},"validationRegex":{"type":"string"},"name":{"type":"string"},"required":{"type":"boolean"}}},"GeneralParameterTypeENUM":{"title":"GeneralSettingTypeENUM","type":"string","enum":["STRING","INTEGER","DECIMAL","BOOL","ENUM"],"description":"| Type | Description |\n|--|--|\n|BOOL | Booleans will be the string `true` or `false` |\n|DECIMAL | Descimal numbers can only have two decimals and is represented as an integer multiplied by 100. Example: 1.2 is will be 120 and 5 will be 500 |\n|ENUM| The enum value should be one of the values listed in `allowedValues` |"},"AvailableExtensionParameterSchema":{"title":"AvailableExtensionParameterSchema","type":"object","required":["key","type","required"],"properties":{"key":{"type":"string"},"type":{"$ref":"#/components/schemas/ExtensionParameterDataTypeENUM"},"required":{"type":"boolean"}}},"ExtensionParameterDataTypeENUM":{"type":"string","title":"ExtensionParameterDataTypeENUM","enum":["STRING","INTEGER","DECIMAL","BOOLEAN"]}},"responses":{"TenantExtensionResponse":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/TenantExtensionResponseSchema"}}},"description":"Example response"}}},"paths":{"/tenants/{tenantUid}/extensions/{tenantExtensionUid}":{"put":{"description":"Update details for a tenant extension.","operationId":"put-tenants-extensions-details","requestBody":{"$ref":"#/components/requestBodies/TenantExtensionUpdateRequest"},"responses":{"200":{"$ref":"#/components/responses/TenantExtensionResponse"}},"summary":"Update tenant extension details","tags":["Extensions"]}}}}
```

## Delete a tenant extension

> Deletes a tenant extension.

```json
{"openapi":"3.0.2","info":{"title":"Flow Retail API version 2","version":"2.0.0"},"tags":[{"name":"Extensions","description":"Extensions"}],"servers":[{"description":"Flow Retail Production","url":"https://api.flowretail.com/v2"},{"description":"Flow Retail Stage","url":"https://api.stage.flowretail.com/v2"}],"security":[{"authToken":[]}],"components":{"securitySchemes":{"authToken":{"description":"Token received from the auth service","scheme":"bearer","type":"http"}}},"paths":{"/tenants/{tenantUid}/extensions/{tenantExtensionUid}":{"delete":{"description":"Deletes a tenant extension.","operationId":"delete-tenants-extention","responses":{"204":{"description":"No Content"}},"summary":"Delete a tenant extension","tags":["Extensions"]}}}}
```

## List store extensions for a tenant extension

> List store extensions for a tenant extension

```json
{"openapi":"3.0.2","info":{"title":"Flow Retail API version 2","version":"2.0.0"},"tags":[{"name":"Extensions","description":"Extensions"}],"servers":[{"description":"Flow Retail Production","url":"https://api.flowretail.com/v2"},{"description":"Flow Retail Stage","url":"https://api.stage.flowretail.com/v2"}],"security":[{"authToken":[]}],"components":{"securitySchemes":{"authToken":{"description":"Token received from the auth service","scheme":"bearer","type":"http"}},"parameters":{"pageNumberQuery":{"description":"Reference to a specific page in a result set.","in":"query","name":"pageNumber","required":false,"schema":{"type":"integer"}},"pageSizeQuery":{"description":"The number of items per page in a result set.","in":"query","name":"pageSize","required":false,"schema":{"type":"integer"}},"sortByQuery":{"description":"Defines which field the resource list is sorted by.","in":"query","name":"sortBy","required":false,"schema":{"type":"string"}},"sortDirectionQuery":{"description":"Reference to a sort direction","explode":false,"in":"query","name":"sortDirection","schema":{"$ref":"#/components/schemas/SortDirectionENUM"},"style":"form"},"tenantExtensionActiveQuery":{"description":"filter on active status for a store extension.","in":"query","name":"tenantExtensionActiveQuery","required":false,"schema":{"type":"boolean"}},"tenantExtensionStoreNameQuery":{"description":"filter on store name for a store extension","in":"query","name":"tenantExtensionStoreNameQuery","required":false,"schema":{"type":"string"}}},"schemas":{"SortDirectionENUM":{"description":"|ENUM      | Description |\n| ---------------- | ------------ |\n| ASC | Sort in ascending order|\n| DESC | Sort in descending order|\n","enum":["ASC","DESC"],"title":"SortDirectionENUM","type":"string"},"StoreExtensionStoreResponseSchema":{"description":"StoreExtensionStoreResponseSchema","type":"object","title":"StoreExtensionStoreResponseSchema","properties":{"storeExtensionUid":{"$ref":"#/components/schemas/UID"},"active":{"type":"boolean"},"storeUid":{"$ref":"#/components/schemas/UID"},"storeName":{"type":"string"}},"required":["storeExtensionUid","active","storeUid","storeName"]},"UID":{"title":"UID","type":"string","pattern":"^[A-Za-z0-9-_]+"},"Paging":{"description":"totalCount The total number of items in the result set.\n\npageSize The number of items per page.\n\npageNumber The current page in the result set.","properties":{"pageNumber":{"type":"integer"},"pageSize":{"type":"integer"},"totalCount":{"type":"integer"}},"required":["totalCount","pageSize","pageNumber"],"title":"Paging","type":"object"}},"responses":{"TenantExtensionStoreListResponse":{"content":{"application/json":{"schema":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/StoreExtensionStoreResponseSchema"}},"paging":{"$ref":"#/components/schemas/Paging"}},"required":["items","paging"]}}},"description":"Example response"}}},"paths":{"/tenants/{tenantUid}/extensions/{tenantExtensionUid}/stores":{"get":{"description":"List store extensions for a tenant extension","operationId":"get-tenant-extension-stores","parameters":[{"$ref":"#/components/parameters/pageNumberQuery"},{"$ref":"#/components/parameters/pageSizeQuery"},{"$ref":"#/components/parameters/sortByQuery"},{"$ref":"#/components/parameters/sortDirectionQuery"},{"$ref":"#/components/parameters/tenantExtensionActiveQuery"},{"$ref":"#/components/parameters/tenantExtensionStoreNameQuery"}],"responses":{"200":{"$ref":"#/components/responses/TenantExtensionStoreListResponse"}},"summary":"List store extensions for a tenant extension","tags":["Extensions"]}}}}
```

## List extensions for a store

> List extensions for a store

```json
{"openapi":"3.0.2","info":{"title":"Flow Retail API version 2","version":"2.0.0"},"tags":[{"name":"Extensions","description":"Extensions"}],"servers":[{"description":"Flow Retail Production","url":"https://api.flowretail.com/v2"},{"description":"Flow Retail Stage","url":"https://api.stage.flowretail.com/v2"}],"security":[{"authToken":[]}],"components":{"securitySchemes":{"authToken":{"description":"Token received from the auth service","scheme":"bearer","type":"http"}},"parameters":{"pageNumberQuery":{"description":"Reference to a specific page in a result set.","in":"query","name":"pageNumber","required":false,"schema":{"type":"integer"}},"pageSizeQuery":{"description":"The number of items per page in a result set.","in":"query","name":"pageSize","required":false,"schema":{"type":"integer"}},"sortByQuery":{"description":"Defines which field the resource list is sorted by.","in":"query","name":"sortBy","required":false,"schema":{"type":"string"}},"sortDirectionQuery":{"description":"Reference to a sort direction","explode":false,"in":"query","name":"sortDirection","schema":{"$ref":"#/components/schemas/SortDirectionENUM"},"style":"form"}},"schemas":{"SortDirectionENUM":{"description":"|ENUM      | Description |\n| ---------------- | ------------ |\n| ASC | Sort in ascending order|\n| DESC | Sort in descending order|\n","enum":["ASC","DESC"],"title":"SortDirectionENUM","type":"string"},"StoreExtensionResponseSchema":{"description":"StoreExtensionResponseSchema","title":"StoreExtensionResponseSchema","type":"object","required":["storeExtensionUid","active","storeParameters","tenantExtension","statusMessages"],"properties":{"storeExtensionUid":{"$ref":"#/components/schemas/UID"},"active":{"type":"boolean"},"storeParameters":{"type":"array","items":{"$ref":"#/components/schemas/GeneralParameterResponseSchema"}},"tenantExtension":{"$ref":"#/components/schemas/StoreExtensionTenantExtensionResponseSchema"},"statusMessages":{"type":"array","items":{"type":"string"}}}},"UID":{"title":"UID","type":"string","pattern":"^[A-Za-z0-9-_]+"},"GeneralParameterResponseSchema":{"title":"GeneralParameterResponseSchema","type":"object","required":["key","value","type","allowedValues","validationRegex","name","required"],"properties":{"key":{"type":"string"},"value":{"type":"string"},"type":{"$ref":"#/components/schemas/GeneralParameterTypeENUM"},"allowedValues":{"type":"array","items":{"type":"string"}},"validationRegex":{"type":"string"},"name":{"type":"string"},"required":{"type":"boolean"}}},"GeneralParameterTypeENUM":{"title":"GeneralSettingTypeENUM","type":"string","enum":["STRING","INTEGER","DECIMAL","BOOL","ENUM"],"description":"| Type | Description |\n|--|--|\n|BOOL | Booleans will be the string `true` or `false` |\n|DECIMAL | Descimal numbers can only have two decimals and is represented as an integer multiplied by 100. Example: 1.2 is will be 120 and 5 will be 500 |\n|ENUM| The enum value should be one of the values listed in `allowedValues` |"},"StoreExtensionTenantExtensionResponseSchema":{"description":"StoreExtensionTenantExtensionResponseSchema","type":"object","title":"StoreExtensionTenantExtensionResponseSchema","properties":{"extensionCode":{"$ref":"#/components/schemas/ExtensionCodeENUM"},"active":{"type":"boolean"},"tenantExtensionUid":{"$ref":"#/components/schemas/UID"},"name":{"type":"string"}},"required":["extensionCode","active","tenantExtensionUid","name"]},"ExtensionCodeENUM":{"enum":["FLOWGIFTCARD","ADYEN_POS","PAYEX_POS","VIPPS","EXTERNAL_CUSTOMER_SEARCH","STORE_CREDIT","SMS","STRIPE","NETS","VERIFONE","SERVICE_WORKSHOP","TWO_INVOICE","FOREIGN_CASH","OMNIUM","DILLER","ARTS","CAMPAIGN","B2B","PEOPLE_COUNTER_KUNDETELLING","COMPENSATION","SWISH","DINTERO","KID","EHF","POWER","BRITANNIA"],"title":"ExtensionCodeENUM","type":"string"},"Paging":{"description":"totalCount The total number of items in the result set.\n\npageSize The number of items per page.\n\npageNumber The current page in the result set.","properties":{"pageNumber":{"type":"integer"},"pageSize":{"type":"integer"},"totalCount":{"type":"integer"}},"required":["totalCount","pageSize","pageNumber"],"title":"Paging","type":"object"}},"responses":{"StoreExtensionListResponse":{"content":{"application/json":{"schema":{"properties":{"items":{"items":{"$ref":"#/components/schemas/StoreExtensionResponseSchema"},"type":"array"},"paging":{"$ref":"#/components/schemas/Paging"}},"required":["items","paging"],"type":"object"}}},"description":"Example response"}}},"paths":{"/tenants/{tenantUid}/stores/{storeUid}/extensions":{"get":{"description":"List extensions for a store","operationId":"get-stores-extensions","parameters":[{"$ref":"#/components/parameters/pageNumberQuery"},{"$ref":"#/components/parameters/pageSizeQuery"},{"$ref":"#/components/parameters/sortByQuery"},{"$ref":"#/components/parameters/sortDirectionQuery"}],"responses":{"200":{"$ref":"#/components/responses/StoreExtensionListResponse"}},"summary":"List extensions for a store","tags":["Extensions"]}}}}
```

## Add a new extension to a store

> Add a new extension to a store\
> \
> Required store or tenant role ADMIN

```json
{"openapi":"3.0.2","info":{"title":"Flow Retail API version 2","version":"2.0.0"},"tags":[{"name":"Extensions","description":"Extensions"}],"servers":[{"description":"Flow Retail Production","url":"https://api.flowretail.com/v2"},{"description":"Flow Retail Stage","url":"https://api.stage.flowretail.com/v2"}],"security":[{"authToken":[]}],"components":{"securitySchemes":{"authToken":{"description":"Token received from the auth service","scheme":"bearer","type":"http"}},"requestBodies":{"StoreExtensionCreateRequest":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StoreExtensionCreateRequestSchema"}}}}},"schemas":{"StoreExtensionCreateRequestSchema":{"title":"StoreExtensionCreateRequestSchema","type":"object","properties":{"active":{"type":"boolean","description":"Activate/Deactivate the extension on the store"},"storeParameters":{"type":"array","description":"A list of store parameters. \nThe valid keys can be found in storeParameterKeys on the tenantExtension.\nIf there are no storeParameterKeys you need to supply an empty list.","items":{"$ref":"#/components/schemas/GeneralParameterRequestSchema"}},"tenantExtensionUid":{"$ref":"#/components/schemas/UID"},"storeExtensionUid":{"$ref":"#/components/schemas/UID"}},"required":["active","storeParameters","tenantExtensionUid"]},"GeneralParameterRequestSchema":{"description":"GeneralParameterRequestSchema","title":"GeneralParameterRequestSchema","type":"object","properties":{"key":{"type":"string"},"value":{"type":"string"}},"required":["key","value"]},"UID":{"title":"UID","type":"string","pattern":"^[A-Za-z0-9-_]+"},"StoreExtensionResponseSchema":{"description":"StoreExtensionResponseSchema","title":"StoreExtensionResponseSchema","type":"object","required":["storeExtensionUid","active","storeParameters","tenantExtension","statusMessages"],"properties":{"storeExtensionUid":{"$ref":"#/components/schemas/UID"},"active":{"type":"boolean"},"storeParameters":{"type":"array","items":{"$ref":"#/components/schemas/GeneralParameterResponseSchema"}},"tenantExtension":{"$ref":"#/components/schemas/StoreExtensionTenantExtensionResponseSchema"},"statusMessages":{"type":"array","items":{"type":"string"}}}},"GeneralParameterResponseSchema":{"title":"GeneralParameterResponseSchema","type":"object","required":["key","value","type","allowedValues","validationRegex","name","required"],"properties":{"key":{"type":"string"},"value":{"type":"string"},"type":{"$ref":"#/components/schemas/GeneralParameterTypeENUM"},"allowedValues":{"type":"array","items":{"type":"string"}},"validationRegex":{"type":"string"},"name":{"type":"string"},"required":{"type":"boolean"}}},"GeneralParameterTypeENUM":{"title":"GeneralSettingTypeENUM","type":"string","enum":["STRING","INTEGER","DECIMAL","BOOL","ENUM"],"description":"| Type | Description |\n|--|--|\n|BOOL | Booleans will be the string `true` or `false` |\n|DECIMAL | Descimal numbers can only have two decimals and is represented as an integer multiplied by 100. Example: 1.2 is will be 120 and 5 will be 500 |\n|ENUM| The enum value should be one of the values listed in `allowedValues` |"},"StoreExtensionTenantExtensionResponseSchema":{"description":"StoreExtensionTenantExtensionResponseSchema","type":"object","title":"StoreExtensionTenantExtensionResponseSchema","properties":{"extensionCode":{"$ref":"#/components/schemas/ExtensionCodeENUM"},"active":{"type":"boolean"},"tenantExtensionUid":{"$ref":"#/components/schemas/UID"},"name":{"type":"string"}},"required":["extensionCode","active","tenantExtensionUid","name"]},"ExtensionCodeENUM":{"enum":["FLOWGIFTCARD","ADYEN_POS","PAYEX_POS","VIPPS","EXTERNAL_CUSTOMER_SEARCH","STORE_CREDIT","SMS","STRIPE","NETS","VERIFONE","SERVICE_WORKSHOP","TWO_INVOICE","FOREIGN_CASH","OMNIUM","DILLER","ARTS","CAMPAIGN","B2B","PEOPLE_COUNTER_KUNDETELLING","COMPENSATION","SWISH","DINTERO","KID","EHF","POWER","BRITANNIA"],"title":"ExtensionCodeENUM","type":"string"}},"responses":{"StoreExtensionResponse":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StoreExtensionResponseSchema"}}},"description":"Example response"}}},"paths":{"/tenants/{tenantUid}/stores/{storeUid}/extensions":{"post":{"description":"Add a new extension to a store\n\nRequired store or tenant role ADMIN","operationId":"post-stores-extensions","requestBody":{"$ref":"#/components/requestBodies/StoreExtensionCreateRequest"},"responses":{"201":{"$ref":"#/components/responses/StoreExtensionResponse"}},"summary":"Add a new extension to a store","tags":["Extensions"]}}}}
```

## Get store extension details

> Get details for a store extension.

```json
{"openapi":"3.0.2","info":{"title":"Flow Retail API version 2","version":"2.0.0"},"tags":[{"name":"Extensions","description":"Extensions"}],"servers":[{"description":"Flow Retail Production","url":"https://api.flowretail.com/v2"},{"description":"Flow Retail Stage","url":"https://api.stage.flowretail.com/v2"}],"security":[{"authToken":[]}],"components":{"securitySchemes":{"authToken":{"description":"Token received from the auth service","scheme":"bearer","type":"http"}},"responses":{"StoreExtensionResponse":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StoreExtensionResponseSchema"}}},"description":"Example response"}},"schemas":{"StoreExtensionResponseSchema":{"description":"StoreExtensionResponseSchema","title":"StoreExtensionResponseSchema","type":"object","required":["storeExtensionUid","active","storeParameters","tenantExtension","statusMessages"],"properties":{"storeExtensionUid":{"$ref":"#/components/schemas/UID"},"active":{"type":"boolean"},"storeParameters":{"type":"array","items":{"$ref":"#/components/schemas/GeneralParameterResponseSchema"}},"tenantExtension":{"$ref":"#/components/schemas/StoreExtensionTenantExtensionResponseSchema"},"statusMessages":{"type":"array","items":{"type":"string"}}}},"UID":{"title":"UID","type":"string","pattern":"^[A-Za-z0-9-_]+"},"GeneralParameterResponseSchema":{"title":"GeneralParameterResponseSchema","type":"object","required":["key","value","type","allowedValues","validationRegex","name","required"],"properties":{"key":{"type":"string"},"value":{"type":"string"},"type":{"$ref":"#/components/schemas/GeneralParameterTypeENUM"},"allowedValues":{"type":"array","items":{"type":"string"}},"validationRegex":{"type":"string"},"name":{"type":"string"},"required":{"type":"boolean"}}},"GeneralParameterTypeENUM":{"title":"GeneralSettingTypeENUM","type":"string","enum":["STRING","INTEGER","DECIMAL","BOOL","ENUM"],"description":"| Type | Description |\n|--|--|\n|BOOL | Booleans will be the string `true` or `false` |\n|DECIMAL | Descimal numbers can only have two decimals and is represented as an integer multiplied by 100. Example: 1.2 is will be 120 and 5 will be 500 |\n|ENUM| The enum value should be one of the values listed in `allowedValues` |"},"StoreExtensionTenantExtensionResponseSchema":{"description":"StoreExtensionTenantExtensionResponseSchema","type":"object","title":"StoreExtensionTenantExtensionResponseSchema","properties":{"extensionCode":{"$ref":"#/components/schemas/ExtensionCodeENUM"},"active":{"type":"boolean"},"tenantExtensionUid":{"$ref":"#/components/schemas/UID"},"name":{"type":"string"}},"required":["extensionCode","active","tenantExtensionUid","name"]},"ExtensionCodeENUM":{"enum":["FLOWGIFTCARD","ADYEN_POS","PAYEX_POS","VIPPS","EXTERNAL_CUSTOMER_SEARCH","STORE_CREDIT","SMS","STRIPE","NETS","VERIFONE","SERVICE_WORKSHOP","TWO_INVOICE","FOREIGN_CASH","OMNIUM","DILLER","ARTS","CAMPAIGN","B2B","PEOPLE_COUNTER_KUNDETELLING","COMPENSATION","SWISH","DINTERO","KID","EHF","POWER","BRITANNIA"],"title":"ExtensionCodeENUM","type":"string"}}},"paths":{"/tenants/{tenantUid}/stores/{storeUid}/extensions/{storeExtensionUid}":{"get":{"description":"Get details for a store extension.","operationId":"get-stores-extensions-details","responses":{"200":{"$ref":"#/components/responses/StoreExtensionResponse"}},"summary":"Get store extension details","tags":["Extensions"]}}}}
```

## Update store extension details

> Update details for a store extension

```json
{"openapi":"3.0.2","info":{"title":"Flow Retail API version 2","version":"2.0.0"},"tags":[{"name":"Extensions","description":"Extensions"}],"servers":[{"description":"Flow Retail Production","url":"https://api.flowretail.com/v2"},{"description":"Flow Retail Stage","url":"https://api.stage.flowretail.com/v2"}],"security":[{"authToken":[]}],"components":{"securitySchemes":{"authToken":{"description":"Token received from the auth service","scheme":"bearer","type":"http"}},"requestBodies":{"StoreExtensionUpdateRequest":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StoreExtensionUpdateRequestSchema"}}}}},"schemas":{"StoreExtensionUpdateRequestSchema":{"title":"StoreExtensionUpdateRequestSchema","type":"object","properties":{"active":{"type":"boolean","description":"Activate/Deactivate the extension on the store"},"storeParameters":{"type":"array","description":"A list of store parameters. \nThe valid keys can be found in storeParameterKeys on the tenantExtension.\nIf there are no storeParameterKeys you need to supply an empty list.","items":{"$ref":"#/components/schemas/GeneralParameterRequestSchema"}}},"required":["active","storeParameters"]},"GeneralParameterRequestSchema":{"description":"GeneralParameterRequestSchema","title":"GeneralParameterRequestSchema","type":"object","properties":{"key":{"type":"string"},"value":{"type":"string"}},"required":["key","value"]},"StoreExtensionResponseSchema":{"description":"StoreExtensionResponseSchema","title":"StoreExtensionResponseSchema","type":"object","required":["storeExtensionUid","active","storeParameters","tenantExtension","statusMessages"],"properties":{"storeExtensionUid":{"$ref":"#/components/schemas/UID"},"active":{"type":"boolean"},"storeParameters":{"type":"array","items":{"$ref":"#/components/schemas/GeneralParameterResponseSchema"}},"tenantExtension":{"$ref":"#/components/schemas/StoreExtensionTenantExtensionResponseSchema"},"statusMessages":{"type":"array","items":{"type":"string"}}}},"UID":{"title":"UID","type":"string","pattern":"^[A-Za-z0-9-_]+"},"GeneralParameterResponseSchema":{"title":"GeneralParameterResponseSchema","type":"object","required":["key","value","type","allowedValues","validationRegex","name","required"],"properties":{"key":{"type":"string"},"value":{"type":"string"},"type":{"$ref":"#/components/schemas/GeneralParameterTypeENUM"},"allowedValues":{"type":"array","items":{"type":"string"}},"validationRegex":{"type":"string"},"name":{"type":"string"},"required":{"type":"boolean"}}},"GeneralParameterTypeENUM":{"title":"GeneralSettingTypeENUM","type":"string","enum":["STRING","INTEGER","DECIMAL","BOOL","ENUM"],"description":"| Type | Description |\n|--|--|\n|BOOL | Booleans will be the string `true` or `false` |\n|DECIMAL | Descimal numbers can only have two decimals and is represented as an integer multiplied by 100. Example: 1.2 is will be 120 and 5 will be 500 |\n|ENUM| The enum value should be one of the values listed in `allowedValues` |"},"StoreExtensionTenantExtensionResponseSchema":{"description":"StoreExtensionTenantExtensionResponseSchema","type":"object","title":"StoreExtensionTenantExtensionResponseSchema","properties":{"extensionCode":{"$ref":"#/components/schemas/ExtensionCodeENUM"},"active":{"type":"boolean"},"tenantExtensionUid":{"$ref":"#/components/schemas/UID"},"name":{"type":"string"}},"required":["extensionCode","active","tenantExtensionUid","name"]},"ExtensionCodeENUM":{"enum":["FLOWGIFTCARD","ADYEN_POS","PAYEX_POS","VIPPS","EXTERNAL_CUSTOMER_SEARCH","STORE_CREDIT","SMS","STRIPE","NETS","VERIFONE","SERVICE_WORKSHOP","TWO_INVOICE","FOREIGN_CASH","OMNIUM","DILLER","ARTS","CAMPAIGN","B2B","PEOPLE_COUNTER_KUNDETELLING","COMPENSATION","SWISH","DINTERO","KID","EHF","POWER","BRITANNIA"],"title":"ExtensionCodeENUM","type":"string"}},"responses":{"StoreExtensionResponse":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/StoreExtensionResponseSchema"}}},"description":"Example response"}}},"paths":{"/tenants/{tenantUid}/stores/{storeUid}/extensions/{storeExtensionUid}":{"put":{"description":"Update details for a store extension","operationId":"put-stores-extensions-details","requestBody":{"$ref":"#/components/requestBodies/StoreExtensionUpdateRequest"},"responses":{"200":{"$ref":"#/components/responses/StoreExtensionResponse"}},"summary":"Update store extension details","tags":["Extensions"]}}}}
```

## Delete a store extension

> Deletes a store extension.

```json
{"openapi":"3.0.2","info":{"title":"Flow Retail API version 2","version":"2.0.0"},"tags":[{"name":"Extensions","description":"Extensions"}],"servers":[{"description":"Flow Retail Production","url":"https://api.flowretail.com/v2"},{"description":"Flow Retail Stage","url":"https://api.stage.flowretail.com/v2"}],"security":[{"authToken":[]}],"components":{"securitySchemes":{"authToken":{"description":"Token received from the auth service","scheme":"bearer","type":"http"}}},"paths":{"/tenants/{tenantUid}/stores/{storeUid}/extensions/{storeExtensionUid}":{"delete":{"description":"Deletes a store extension.","operationId":"delete-stores-extensions","responses":{"204":{"description":"No Content"}},"summary":"Delete a store extension","tags":["Extensions"]}}}}
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.flowretail.com/docs/developers/api-documentation/extensions.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
