# CustomerContact

CustomerContact

## List contacts

> List all customer contacts.

```json
{"openapi":"3.0.2","info":{"title":"Flow Retail API version 2","version":"2.0.0"},"tags":[{"name":"CustomerContact","description":"CustomerContact"}],"servers":[{"description":"Flow Retail Production","url":"https://api.flowretail.com/v2"},{"description":"Flow Retail Stage","url":"https://api.stage.flowretail.com/v2"}],"security":[{"accessToken":[]},{"authToken":[]},{"integrationToken":[]}],"components":{"securitySchemes":{"accessToken":{"description":"Access token recevied after user login with a deviceToken","scheme":"bearer","type":"http"},"authToken":{"description":"Token received from the auth service","scheme":"bearer","type":"http"},"integrationToken":{"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"},"CustomerContactsWithCustomersResponseSchema":{"title":"CustomerContactsWithCustomersResponseSchema","type":"object","description":"CustomerContactResponseSchema","required":["firstname","lastname","email","mobile","createdAt","lastModifiedAt","customerContactUid","displayName","customers"],"properties":{"firstname":{"type":"string"},"lastname":{"type":"string"},"email":{"$ref":"#/components/schemas/EmailTYPE"},"mobile":{"type":"string"},"createdAt":{"type":"string","format":"date-time"},"lastModifiedAt":{"type":"string","format":"date-time"},"customerContactUid":{"type":"string"},"displayName":{"type":"string"},"customers":{"type":"array","items":{"$ref":"#/components/schemas/CustomerContactCustomersSchema"}}}},"EmailTYPE":{"title":"Email","type":"string"},"CustomerContactCustomersSchema":{"title":"CustomerContactCustomersSchema","type":"object","required":["customerUid","displayName","role","extensions"],"properties":{"customerUid":{"$ref":"#/components/schemas/UID"},"displayName":{"type":"string"},"role":{"$ref":"#/components/schemas/CustomerContactRoleENUM"},"extensions":{"type":"array","items":{"$ref":"#/components/schemas/CustomerContactExtensionResponseSchema"}}}},"UID":{"title":"UID","type":"string","pattern":"^[A-Za-z0-9-_]+"},"CustomerContactRoleENUM":{"title":"CustomerContactRoleENUM","type":"string","enum":["ADMIN","PURCHASER","ACCOUNTING","NONE"]},"CustomerContactExtensionResponseSchema":{"description":"CustomerContactExtensionResponseSchema","title":"CustomerContactExtensionResponseSchema","type":"object","properties":{"extensionCode":{"$ref":"#/components/schemas/CustomerExtensionCodeENUM"},"organizationUid":{"$ref":"#/components/schemas/UID"}},"required":["extensionCode","organizationUid"]},"CustomerExtensionCodeENUM":{"description":"|ENUM      | Description |\n| ---------------- | ------------ |\n| TWO_INVOICE | The Two Invoice extension.|","enum":["TWO_INVOICE"],"title":"CustomerExtensionCodeENUM","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":{"CustomerContactsListResponse":{"description":"Example response","content":{"application/json":{"schema":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/CustomerContactsWithCustomersResponseSchema"}},"paging":{"$ref":"#/components/schemas/Paging"}}}}}}}},"paths":{"/tenants/{tenantUid}/customer-contacts":{"get":{"description":"List all customer contacts.","operationId":"get-tenants-customer-contacts","parameters":[{"$ref":"#/components/parameters/pageNumberQuery"},{"$ref":"#/components/parameters/pageSizeQuery"},{"$ref":"#/components/parameters/sortByQuery"},{"$ref":"#/components/parameters/sortDirectionQuery"}],"responses":{"200":{"$ref":"#/components/responses/CustomerContactsListResponse"}},"summary":"List contacts","tags":["CustomerContact"]}}}}
```

## Create a new contact

> Create a new customer contact\
> \
> Required permissions: CUSTOMER,SALES\_ORDER,RETURN\_ORDER

```json
{"openapi":"3.0.2","info":{"title":"Flow Retail API version 2","version":"2.0.0"},"tags":[{"name":"CustomerContact","description":"CustomerContact"}],"servers":[{"description":"Flow Retail Production","url":"https://api.flowretail.com/v2"},{"description":"Flow Retail Stage","url":"https://api.stage.flowretail.com/v2"}],"security":[{"accessToken":[]},{"authToken":[]},{"integrationToken":[]}],"components":{"securitySchemes":{"accessToken":{"description":"Access token recevied after user login with a deviceToken","scheme":"bearer","type":"http"},"authToken":{"description":"Token received from the auth service","scheme":"bearer","type":"http"},"integrationToken":{"scheme":"bearer","type":"http"}},"requestBodies":{"CustomerContactsCreateRequest":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomerContactsCreateRequestSchema"}}}}},"schemas":{"CustomerContactsCreateRequestSchema":{"title":"CustomerContactsCreateRequestSchema","type":"object","description":"CustomerContactsCreateRequestSchema","required":["firstname","lastname"],"properties":{"firstname":{"type":"string"},"lastname":{"type":"string"},"email":{"$ref":"#/components/schemas/EmailTYPE"},"mobile":{"type":"string"},"customerContactUid":{"$ref":"#/components/schemas/UID"},"customers":{"type":"array","items":{"$ref":"#/components/schemas/CustomerContactLinkRequestSchema"}}}},"EmailTYPE":{"title":"Email","type":"string"},"UID":{"title":"UID","type":"string","pattern":"^[A-Za-z0-9-_]+"},"CustomerContactLinkRequestSchema":{"type":"object","required":["customerUid"],"properties":{"customerUid":{"$ref":"#/components/schemas/UID"},"role":{"$ref":"#/components/schemas/CustomerContactRoleENUM"}},"title":"CustomerContactLinkRequestSchema"},"CustomerContactRoleENUM":{"title":"CustomerContactRoleENUM","type":"string","enum":["ADMIN","PURCHASER","ACCOUNTING","NONE"]},"CustomerContactsWithCustomersResponseSchema":{"title":"CustomerContactsWithCustomersResponseSchema","type":"object","description":"CustomerContactResponseSchema","required":["firstname","lastname","email","mobile","createdAt","lastModifiedAt","customerContactUid","displayName","customers"],"properties":{"firstname":{"type":"string"},"lastname":{"type":"string"},"email":{"$ref":"#/components/schemas/EmailTYPE"},"mobile":{"type":"string"},"createdAt":{"type":"string","format":"date-time"},"lastModifiedAt":{"type":"string","format":"date-time"},"customerContactUid":{"type":"string"},"displayName":{"type":"string"},"customers":{"type":"array","items":{"$ref":"#/components/schemas/CustomerContactCustomersSchema"}}}},"CustomerContactCustomersSchema":{"title":"CustomerContactCustomersSchema","type":"object","required":["customerUid","displayName","role","extensions"],"properties":{"customerUid":{"$ref":"#/components/schemas/UID"},"displayName":{"type":"string"},"role":{"$ref":"#/components/schemas/CustomerContactRoleENUM"},"extensions":{"type":"array","items":{"$ref":"#/components/schemas/CustomerContactExtensionResponseSchema"}}}},"CustomerContactExtensionResponseSchema":{"description":"CustomerContactExtensionResponseSchema","title":"CustomerContactExtensionResponseSchema","type":"object","properties":{"extensionCode":{"$ref":"#/components/schemas/CustomerExtensionCodeENUM"},"organizationUid":{"$ref":"#/components/schemas/UID"}},"required":["extensionCode","organizationUid"]},"CustomerExtensionCodeENUM":{"description":"|ENUM      | Description |\n| ---------------- | ------------ |\n| TWO_INVOICE | The Two Invoice extension.|","enum":["TWO_INVOICE"],"title":"CustomerExtensionCodeENUM","type":"string"}},"responses":{"CustomerContactsResponse":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomerContactsWithCustomersResponseSchema"}}}}}},"paths":{"/tenants/{tenantUid}/customer-contacts":{"post":{"description":"Create a new customer contact\n\nRequired permissions: CUSTOMER,SALES_ORDER,RETURN_ORDER","operationId":"post-tenants-customer-contacts","requestBody":{"$ref":"#/components/requestBodies/CustomerContactsCreateRequest"},"responses":{"201":{"$ref":"#/components/responses/CustomerContactsResponse"}},"summary":"Create a new contact","tags":["CustomerContact"]}}}}
```

## Search for customer contacts

> Search for customer contacts

```json
{"openapi":"3.0.2","info":{"title":"Flow Retail API version 2","version":"2.0.0"},"tags":[{"name":"CustomerContact","description":"CustomerContact"}],"servers":[{"description":"Flow Retail Production","url":"https://api.flowretail.com/v2"},{"description":"Flow Retail Stage","url":"https://api.stage.flowretail.com/v2"}],"security":[{"accessToken":[]},{"authToken":[]},{"integrationToken":[]}],"components":{"securitySchemes":{"accessToken":{"description":"Access token recevied after user login with a deviceToken","scheme":"bearer","type":"http"},"authToken":{"description":"Token received from the auth service","scheme":"bearer","type":"http"},"integrationToken":{"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"},"CustomerContactSearchRequestSchema":{"title":"CustomerContactSearchRequestSchema","type":"object","properties":{"query":{"type":"string"},"email":{"$ref":"#/components/schemas/EmailTYPE"},"mobile":{"type":"string"}}},"EmailTYPE":{"title":"Email","type":"string"},"CustomerContactsWithCustomersResponseSchema":{"title":"CustomerContactsWithCustomersResponseSchema","type":"object","description":"CustomerContactResponseSchema","required":["firstname","lastname","email","mobile","createdAt","lastModifiedAt","customerContactUid","displayName","customers"],"properties":{"firstname":{"type":"string"},"lastname":{"type":"string"},"email":{"$ref":"#/components/schemas/EmailTYPE"},"mobile":{"type":"string"},"createdAt":{"type":"string","format":"date-time"},"lastModifiedAt":{"type":"string","format":"date-time"},"customerContactUid":{"type":"string"},"displayName":{"type":"string"},"customers":{"type":"array","items":{"$ref":"#/components/schemas/CustomerContactCustomersSchema"}}}},"CustomerContactCustomersSchema":{"title":"CustomerContactCustomersSchema","type":"object","required":["customerUid","displayName","role","extensions"],"properties":{"customerUid":{"$ref":"#/components/schemas/UID"},"displayName":{"type":"string"},"role":{"$ref":"#/components/schemas/CustomerContactRoleENUM"},"extensions":{"type":"array","items":{"$ref":"#/components/schemas/CustomerContactExtensionResponseSchema"}}}},"UID":{"title":"UID","type":"string","pattern":"^[A-Za-z0-9-_]+"},"CustomerContactRoleENUM":{"title":"CustomerContactRoleENUM","type":"string","enum":["ADMIN","PURCHASER","ACCOUNTING","NONE"]},"CustomerContactExtensionResponseSchema":{"description":"CustomerContactExtensionResponseSchema","title":"CustomerContactExtensionResponseSchema","type":"object","properties":{"extensionCode":{"$ref":"#/components/schemas/CustomerExtensionCodeENUM"},"organizationUid":{"$ref":"#/components/schemas/UID"}},"required":["extensionCode","organizationUid"]},"CustomerExtensionCodeENUM":{"description":"|ENUM      | Description |\n| ---------------- | ------------ |\n| TWO_INVOICE | The Two Invoice extension.|","enum":["TWO_INVOICE"],"title":"CustomerExtensionCodeENUM","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"}},"requestBodies":{"CustomerContactSearchRequest":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomerContactSearchRequestSchema"}}}}},"responses":{"CustomerContactsListResponse":{"description":"Example response","content":{"application/json":{"schema":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/CustomerContactsWithCustomersResponseSchema"}},"paging":{"$ref":"#/components/schemas/Paging"}}}}}}}},"paths":{"/tenants/{tenantUid}/customer-contacts/search":{"post":{"description":"Search for customer contacts","operationId":"post-tenants-contacts-search","parameters":[{"$ref":"#/components/parameters/pageNumberQuery"},{"$ref":"#/components/parameters/pageSizeQuery"},{"$ref":"#/components/parameters/sortByQuery"},{"$ref":"#/components/parameters/sortDirectionQuery"}],"requestBody":{"$ref":"#/components/requestBodies/CustomerContactSearchRequest"},"responses":{"200":{"$ref":"#/components/responses/CustomerContactsListResponse"}},"summary":"Search for customer contacts","tags":["CustomerContact"]}}}}
```

## Get customer contact information

> Get details about a customer contact.

```json
{"openapi":"3.0.2","info":{"title":"Flow Retail API version 2","version":"2.0.0"},"tags":[{"name":"CustomerContact","description":"CustomerContact"}],"servers":[{"description":"Flow Retail Production","url":"https://api.flowretail.com/v2"},{"description":"Flow Retail Stage","url":"https://api.stage.flowretail.com/v2"}],"security":[{"accessToken":[]},{"authToken":[]},{"integrationToken":[]}],"components":{"securitySchemes":{"accessToken":{"description":"Access token recevied after user login with a deviceToken","scheme":"bearer","type":"http"},"authToken":{"description":"Token received from the auth service","scheme":"bearer","type":"http"},"integrationToken":{"scheme":"bearer","type":"http"}},"responses":{"CustomerContactsResponse":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomerContactsWithCustomersResponseSchema"}}}}},"schemas":{"CustomerContactsWithCustomersResponseSchema":{"title":"CustomerContactsWithCustomersResponseSchema","type":"object","description":"CustomerContactResponseSchema","required":["firstname","lastname","email","mobile","createdAt","lastModifiedAt","customerContactUid","displayName","customers"],"properties":{"firstname":{"type":"string"},"lastname":{"type":"string"},"email":{"$ref":"#/components/schemas/EmailTYPE"},"mobile":{"type":"string"},"createdAt":{"type":"string","format":"date-time"},"lastModifiedAt":{"type":"string","format":"date-time"},"customerContactUid":{"type":"string"},"displayName":{"type":"string"},"customers":{"type":"array","items":{"$ref":"#/components/schemas/CustomerContactCustomersSchema"}}}},"EmailTYPE":{"title":"Email","type":"string"},"CustomerContactCustomersSchema":{"title":"CustomerContactCustomersSchema","type":"object","required":["customerUid","displayName","role","extensions"],"properties":{"customerUid":{"$ref":"#/components/schemas/UID"},"displayName":{"type":"string"},"role":{"$ref":"#/components/schemas/CustomerContactRoleENUM"},"extensions":{"type":"array","items":{"$ref":"#/components/schemas/CustomerContactExtensionResponseSchema"}}}},"UID":{"title":"UID","type":"string","pattern":"^[A-Za-z0-9-_]+"},"CustomerContactRoleENUM":{"title":"CustomerContactRoleENUM","type":"string","enum":["ADMIN","PURCHASER","ACCOUNTING","NONE"]},"CustomerContactExtensionResponseSchema":{"description":"CustomerContactExtensionResponseSchema","title":"CustomerContactExtensionResponseSchema","type":"object","properties":{"extensionCode":{"$ref":"#/components/schemas/CustomerExtensionCodeENUM"},"organizationUid":{"$ref":"#/components/schemas/UID"}},"required":["extensionCode","organizationUid"]},"CustomerExtensionCodeENUM":{"description":"|ENUM      | Description |\n| ---------------- | ------------ |\n| TWO_INVOICE | The Two Invoice extension.|","enum":["TWO_INVOICE"],"title":"CustomerExtensionCodeENUM","type":"string"}}},"paths":{"/tenants/{tenantUid}/customer-contacts/{customerContactUid}":{"get":{"summary":"Get customer contact information","tags":["CustomerContact"],"responses":{"200":{"$ref":"#/components/responses/CustomerContactsResponse"}},"operationId":"get-tenants-contact-details","description":"Get details about a customer contact."}}}}
```

## Update customer contact information

> Required permissions: CUSTOMER,SALES\_ORDER,RETURN\_ORDER

```json
{"openapi":"3.0.2","info":{"title":"Flow Retail API version 2","version":"2.0.0"},"tags":[{"name":"CustomerContact","description":"CustomerContact"}],"servers":[{"description":"Flow Retail Production","url":"https://api.flowretail.com/v2"},{"description":"Flow Retail Stage","url":"https://api.stage.flowretail.com/v2"}],"security":[{"accessToken":[]},{"authToken":[]},{"integrationToken":[]}],"components":{"securitySchemes":{"accessToken":{"description":"Access token recevied after user login with a deviceToken","scheme":"bearer","type":"http"},"authToken":{"description":"Token received from the auth service","scheme":"bearer","type":"http"},"integrationToken":{"scheme":"bearer","type":"http"}},"responses":{"CustomerContactsResponse":{"description":"","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomerContactsWithCustomersResponseSchema"}}}}},"schemas":{"CustomerContactsWithCustomersResponseSchema":{"title":"CustomerContactsWithCustomersResponseSchema","type":"object","description":"CustomerContactResponseSchema","required":["firstname","lastname","email","mobile","createdAt","lastModifiedAt","customerContactUid","displayName","customers"],"properties":{"firstname":{"type":"string"},"lastname":{"type":"string"},"email":{"$ref":"#/components/schemas/EmailTYPE"},"mobile":{"type":"string"},"createdAt":{"type":"string","format":"date-time"},"lastModifiedAt":{"type":"string","format":"date-time"},"customerContactUid":{"type":"string"},"displayName":{"type":"string"},"customers":{"type":"array","items":{"$ref":"#/components/schemas/CustomerContactCustomersSchema"}}}},"EmailTYPE":{"title":"Email","type":"string"},"CustomerContactCustomersSchema":{"title":"CustomerContactCustomersSchema","type":"object","required":["customerUid","displayName","role","extensions"],"properties":{"customerUid":{"$ref":"#/components/schemas/UID"},"displayName":{"type":"string"},"role":{"$ref":"#/components/schemas/CustomerContactRoleENUM"},"extensions":{"type":"array","items":{"$ref":"#/components/schemas/CustomerContactExtensionResponseSchema"}}}},"UID":{"title":"UID","type":"string","pattern":"^[A-Za-z0-9-_]+"},"CustomerContactRoleENUM":{"title":"CustomerContactRoleENUM","type":"string","enum":["ADMIN","PURCHASER","ACCOUNTING","NONE"]},"CustomerContactExtensionResponseSchema":{"description":"CustomerContactExtensionResponseSchema","title":"CustomerContactExtensionResponseSchema","type":"object","properties":{"extensionCode":{"$ref":"#/components/schemas/CustomerExtensionCodeENUM"},"organizationUid":{"$ref":"#/components/schemas/UID"}},"required":["extensionCode","organizationUid"]},"CustomerExtensionCodeENUM":{"description":"|ENUM      | Description |\n| ---------------- | ------------ |\n| TWO_INVOICE | The Two Invoice extension.|","enum":["TWO_INVOICE"],"title":"CustomerExtensionCodeENUM","type":"string"},"CustomerContactUpdateRequestSchema":{"title":"CustomerContactUpdateSchema","type":"object","properties":{"firstname":{"type":"string"},"lastname":{"type":"string"},"email":{"$ref":"#/components/schemas/EmailTYPE"},"mobile":{"type":"string"}},"description":"CustomerContactUpdateSchema"}},"requestBodies":{"CustomerContactUpdateRequest":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomerContactUpdateRequestSchema"}}}}}},"paths":{"/tenants/{tenantUid}/customer-contacts/{customerContactUid}":{"put":{"summary":"Update customer contact information","tags":["CustomerContact"],"responses":{"200":{"$ref":"#/components/responses/CustomerContactsResponse"}},"operationId":"put-tenants-customer-contact-details","description":"Required permissions: CUSTOMER,SALES_ORDER,RETURN_ORDER","requestBody":{"$ref":"#/components/requestBodies/CustomerContactUpdateRequest"}}}}}
```

## Remove a customer contact

> Required permissions: CUSTOMER

```json
{"openapi":"3.0.2","info":{"title":"Flow Retail API version 2","version":"2.0.0"},"tags":[{"name":"CustomerContact","description":"CustomerContact"}],"servers":[{"description":"Flow Retail Production","url":"https://api.flowretail.com/v2"},{"description":"Flow Retail Stage","url":"https://api.stage.flowretail.com/v2"}],"security":[{"accessToken":[]},{"authToken":[]},{"integrationToken":[]}],"components":{"securitySchemes":{"accessToken":{"description":"Access token recevied after user login with a deviceToken","scheme":"bearer","type":"http"},"authToken":{"description":"Token received from the auth service","scheme":"bearer","type":"http"},"integrationToken":{"scheme":"bearer","type":"http"}}},"paths":{"/tenants/{tenantUid}/customer-contacts/{customerContactUid}":{"delete":{"summary":"Remove a customer contact","tags":["CustomerContact"],"responses":{"204":{"description":"OK"}},"operationId":"delete-tenants-customer-contacts","description":"Required permissions: CUSTOMER"}}}}
```

## List all customers for a contact

> List all customers a contact is connected to

```json
{"openapi":"3.0.2","info":{"title":"Flow Retail API version 2","version":"2.0.0"},"tags":[{"name":"CustomerContact","description":"CustomerContact"}],"servers":[{"description":"Flow Retail Production","url":"https://api.flowretail.com/v2"},{"description":"Flow Retail Stage","url":"https://api.stage.flowretail.com/v2"}],"security":[{"accessToken":[]},{"authToken":[]},{"integrationToken":[]}],"components":{"securitySchemes":{"accessToken":{"description":"Access token recevied after user login with a deviceToken","scheme":"bearer","type":"http"},"authToken":{"description":"Token received from the auth service","scheme":"bearer","type":"http"},"integrationToken":{"scheme":"bearer","type":"http"}},"responses":{"CustomerContactsCustomerListResponse":{"description":"Example response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomerContactsListSchema"}}}}},"schemas":{"CustomerContactsListSchema":{"title":"CustomerContactsListSchema","type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/CustomerContactCustomersSchema"}}}},"CustomerContactCustomersSchema":{"title":"CustomerContactCustomersSchema","type":"object","required":["customerUid","displayName","role","extensions"],"properties":{"customerUid":{"$ref":"#/components/schemas/UID"},"displayName":{"type":"string"},"role":{"$ref":"#/components/schemas/CustomerContactRoleENUM"},"extensions":{"type":"array","items":{"$ref":"#/components/schemas/CustomerContactExtensionResponseSchema"}}}},"UID":{"title":"UID","type":"string","pattern":"^[A-Za-z0-9-_]+"},"CustomerContactRoleENUM":{"title":"CustomerContactRoleENUM","type":"string","enum":["ADMIN","PURCHASER","ACCOUNTING","NONE"]},"CustomerContactExtensionResponseSchema":{"description":"CustomerContactExtensionResponseSchema","title":"CustomerContactExtensionResponseSchema","type":"object","properties":{"extensionCode":{"$ref":"#/components/schemas/CustomerExtensionCodeENUM"},"organizationUid":{"$ref":"#/components/schemas/UID"}},"required":["extensionCode","organizationUid"]},"CustomerExtensionCodeENUM":{"description":"|ENUM      | Description |\n| ---------------- | ------------ |\n| TWO_INVOICE | The Two Invoice extension.|","enum":["TWO_INVOICE"],"title":"CustomerExtensionCodeENUM","type":"string"}}},"paths":{"/tenants/{tenantUid}/customer-contacts/{customerContactUid}/customers":{"get":{"summary":"List all customers for a contact","tags":["CustomerContact"],"responses":{"200":{"$ref":"#/components/responses/CustomerContactsCustomerListResponse"}},"operationId":"get-tenants-customer-contacts-customers","description":"List all customers a contact is connected to"}}}}
```

## Add a customer-contact to a customer

> Required permissions: CUSTOMER,SALES\_ORDER,RETURN\_ORDER

```json
{"openapi":"3.0.2","info":{"title":"Flow Retail API version 2","version":"2.0.0"},"tags":[{"name":"CustomerContact","description":"CustomerContact"}],"servers":[{"description":"Flow Retail Production","url":"https://api.flowretail.com/v2"},{"description":"Flow Retail Stage","url":"https://api.stage.flowretail.com/v2"}],"security":[{"accessToken":[]},{"authToken":[]},{"integrationToken":[]}],"components":{"securitySchemes":{"accessToken":{"description":"Access token recevied after user login with a deviceToken","scheme":"bearer","type":"http"},"authToken":{"description":"Token received from the auth service","scheme":"bearer","type":"http"},"integrationToken":{"scheme":"bearer","type":"http"}},"responses":{"CustomerContactsCustomerListResponse":{"description":"Example response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomerContactsListSchema"}}}}},"schemas":{"CustomerContactsListSchema":{"title":"CustomerContactsListSchema","type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/CustomerContactCustomersSchema"}}}},"CustomerContactCustomersSchema":{"title":"CustomerContactCustomersSchema","type":"object","required":["customerUid","displayName","role","extensions"],"properties":{"customerUid":{"$ref":"#/components/schemas/UID"},"displayName":{"type":"string"},"role":{"$ref":"#/components/schemas/CustomerContactRoleENUM"},"extensions":{"type":"array","items":{"$ref":"#/components/schemas/CustomerContactExtensionResponseSchema"}}}},"UID":{"title":"UID","type":"string","pattern":"^[A-Za-z0-9-_]+"},"CustomerContactRoleENUM":{"title":"CustomerContactRoleENUM","type":"string","enum":["ADMIN","PURCHASER","ACCOUNTING","NONE"]},"CustomerContactExtensionResponseSchema":{"description":"CustomerContactExtensionResponseSchema","title":"CustomerContactExtensionResponseSchema","type":"object","properties":{"extensionCode":{"$ref":"#/components/schemas/CustomerExtensionCodeENUM"},"organizationUid":{"$ref":"#/components/schemas/UID"}},"required":["extensionCode","organizationUid"]},"CustomerExtensionCodeENUM":{"description":"|ENUM      | Description |\n| ---------------- | ------------ |\n| TWO_INVOICE | The Two Invoice extension.|","enum":["TWO_INVOICE"],"title":"CustomerExtensionCodeENUM","type":"string"},"CustomerContactAddCustomerRequestSchema":{"title":"CustomerContactAddCustomerRequestSchema","type":"object","properties":{"customers":{"type":"array","items":{"$ref":"#/components/schemas/CustomerContactLinkRequestSchema"}}}},"CustomerContactLinkRequestSchema":{"type":"object","required":["customerUid"],"properties":{"customerUid":{"$ref":"#/components/schemas/UID"},"role":{"$ref":"#/components/schemas/CustomerContactRoleENUM"}},"title":"CustomerContactLinkRequestSchema"}},"requestBodies":{"CustomerContactAddCustomersRequest":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomerContactAddCustomerRequestSchema"}}}}}},"paths":{"/tenants/{tenantUid}/customer-contacts/{customerContactUid}/customers":{"post":{"summary":"Add a customer-contact to a customer","tags":["CustomerContact"],"responses":{"200":{"$ref":"#/components/responses/CustomerContactsCustomerListResponse"}},"operationId":"post-tenants-customer-contacts-customers","requestBody":{"$ref":"#/components/requestBodies/CustomerContactAddCustomersRequest"},"description":"Required permissions: CUSTOMER,SALES_ORDER,RETURN_ORDER"}}}}
```

## Remove a customer for a contact

> Remove a customer from a contact\
> \
> Required permissions: CUSTOMER

```json
{"openapi":"3.0.2","info":{"title":"Flow Retail API version 2","version":"2.0.0"},"tags":[{"name":"CustomerContact","description":"CustomerContact"}],"servers":[{"description":"Flow Retail Production","url":"https://api.flowretail.com/v2"},{"description":"Flow Retail Stage","url":"https://api.stage.flowretail.com/v2"}],"security":[{"accessToken":[]},{"authToken":[]},{"integrationToken":[]}],"components":{"securitySchemes":{"accessToken":{"description":"Access token recevied after user login with a deviceToken","scheme":"bearer","type":"http"},"authToken":{"description":"Token received from the auth service","scheme":"bearer","type":"http"},"integrationToken":{"scheme":"bearer","type":"http"}}},"paths":{"/tenants/{tenantUid}/customer-contacts/{customerContactUid}/customers/{customerUid}":{"delete":{"summary":"Remove a customer for a contact","tags":["CustomerContact"],"responses":{"204":{"description":"Customer removed"}},"operationId":"delete-tenants-customer-contacts-customers","description":"Remove a customer from a contact\n\nRequired permissions: CUSTOMER"}}}}
```

## List contacts for a customer

> List contacts for a customer

```json
{"openapi":"3.0.2","info":{"title":"Flow Retail API version 2","version":"2.0.0"},"tags":[{"name":"CustomerContact","description":"CustomerContact"}],"servers":[{"description":"Flow Retail Production","url":"https://api.flowretail.com/v2"},{"description":"Flow Retail Stage","url":"https://api.stage.flowretail.com/v2"}],"security":[{"accessToken":[]},{"authToken":[]},{"integrationToken":[]}],"components":{"securitySchemes":{"accessToken":{"description":"Access token recevied after user login with a deviceToken","scheme":"bearer","type":"http"},"authToken":{"description":"Token received from the auth service","scheme":"bearer","type":"http"},"integrationToken":{"scheme":"bearer","type":"http"}},"responses":{"CustomerContactListResponse":{"description":"Example response","content":{"application/json":{"schema":{"type":"object","properties":{"items":{"type":"array","items":{"$ref":"#/components/schemas/CustomerContactResponseSchema"}},"paging":{"$ref":"#/components/schemas/Paging"}},"required":["items","paging"]}}}}},"schemas":{"CustomerContactResponseSchema":{"title":"CustomerContactResponseSchema","type":"object","description":"CustomerContactResponseSchema","required":["firstname","lastname","email","mobile","createdAt","lastModifiedAt","customerContactUid","extensions","displayName","role"],"properties":{"firstname":{"type":"string"},"lastname":{"type":"string"},"email":{"$ref":"#/components/schemas/EmailTYPE"},"mobile":{"type":"string"},"createdAt":{"type":"string","format":"date-time"},"lastModifiedAt":{"type":"string","format":"date-time"},"customerContactUid":{"type":"string"},"extensions":{"type":"array","items":{"$ref":"#/components/schemas/CustomerContactExtensionResponseSchema"}},"displayName":{"type":"string"},"role":{"$ref":"#/components/schemas/CustomerContactRoleENUM"}}},"EmailTYPE":{"title":"Email","type":"string"},"CustomerContactExtensionResponseSchema":{"description":"CustomerContactExtensionResponseSchema","title":"CustomerContactExtensionResponseSchema","type":"object","properties":{"extensionCode":{"$ref":"#/components/schemas/CustomerExtensionCodeENUM"},"organizationUid":{"$ref":"#/components/schemas/UID"}},"required":["extensionCode","organizationUid"]},"CustomerExtensionCodeENUM":{"description":"|ENUM      | Description |\n| ---------------- | ------------ |\n| TWO_INVOICE | The Two Invoice extension.|","enum":["TWO_INVOICE"],"title":"CustomerExtensionCodeENUM","type":"string"},"UID":{"title":"UID","type":"string","pattern":"^[A-Za-z0-9-_]+"},"CustomerContactRoleENUM":{"title":"CustomerContactRoleENUM","type":"string","enum":["ADMIN","PURCHASER","ACCOUNTING","NONE"]},"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"},"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"}},"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"}}},"paths":{"/tenants/{tenantUid}/customers/{customerUid}/contacts":{"get":{"description":"List contacts for a customer","operationId":"get-tenant-customer-contacts","responses":{"200":{"$ref":"#/components/responses/CustomerContactListResponse"}},"summary":"List contacts for a customer","parameters":[{"$ref":"#/components/parameters/pageNumberQuery"},{"$ref":"#/components/parameters/pageSizeQuery"},{"$ref":"#/components/parameters/sortByQuery"},{"$ref":"#/components/parameters/sortDirectionQuery"}],"tags":["CustomerContact"]}}}}
```

## Create a new contact and add it to a customer

> Create a new contact and add it to a customer\
> \
> Required permissions: CUSTOMER,SALES\_ORDER,RETURN\_ORDER

```json
{"openapi":"3.0.2","info":{"title":"Flow Retail API version 2","version":"2.0.0"},"tags":[{"name":"CustomerContact","description":"CustomerContact"}],"servers":[{"description":"Flow Retail Production","url":"https://api.flowretail.com/v2"},{"description":"Flow Retail Stage","url":"https://api.stage.flowretail.com/v2"}],"security":[{"accessToken":[]},{"authToken":[]},{"integrationToken":[]}],"components":{"securitySchemes":{"accessToken":{"description":"Access token recevied after user login with a deviceToken","scheme":"bearer","type":"http"},"authToken":{"description":"Token received from the auth service","scheme":"bearer","type":"http"},"integrationToken":{"scheme":"bearer","type":"http"}},"requestBodies":{"CustomerContactCreateRequest":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomerContactCreateRequestSchema"}}}}},"schemas":{"CustomerContactCreateRequestSchema":{"title":"CustomerContactCreateSchema","type":"object","description":"CustomerContactCreateSchema","required":["firstname","lastname"],"properties":{"firstname":{"type":"string"},"lastname":{"type":"string"},"email":{"$ref":"#/components/schemas/EmailTYPE"},"mobile":{"type":"string"},"customerContactUid":{"$ref":"#/components/schemas/UID"},"role":{"$ref":"#/components/schemas/CustomerContactRoleENUM"}}},"EmailTYPE":{"title":"Email","type":"string"},"UID":{"title":"UID","type":"string","pattern":"^[A-Za-z0-9-_]+"},"CustomerContactRoleENUM":{"title":"CustomerContactRoleENUM","type":"string","enum":["ADMIN","PURCHASER","ACCOUNTING","NONE"]},"CustomerContactResponseSchema":{"title":"CustomerContactResponseSchema","type":"object","description":"CustomerContactResponseSchema","required":["firstname","lastname","email","mobile","createdAt","lastModifiedAt","customerContactUid","extensions","displayName","role"],"properties":{"firstname":{"type":"string"},"lastname":{"type":"string"},"email":{"$ref":"#/components/schemas/EmailTYPE"},"mobile":{"type":"string"},"createdAt":{"type":"string","format":"date-time"},"lastModifiedAt":{"type":"string","format":"date-time"},"customerContactUid":{"type":"string"},"extensions":{"type":"array","items":{"$ref":"#/components/schemas/CustomerContactExtensionResponseSchema"}},"displayName":{"type":"string"},"role":{"$ref":"#/components/schemas/CustomerContactRoleENUM"}}},"CustomerContactExtensionResponseSchema":{"description":"CustomerContactExtensionResponseSchema","title":"CustomerContactExtensionResponseSchema","type":"object","properties":{"extensionCode":{"$ref":"#/components/schemas/CustomerExtensionCodeENUM"},"organizationUid":{"$ref":"#/components/schemas/UID"}},"required":["extensionCode","organizationUid"]},"CustomerExtensionCodeENUM":{"description":"|ENUM      | Description |\n| ---------------- | ------------ |\n| TWO_INVOICE | The Two Invoice extension.|","enum":["TWO_INVOICE"],"title":"CustomerExtensionCodeENUM","type":"string"}},"responses":{"CustomerContactResponse":{"description":"Example response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomerContactResponseSchema"}}}}}},"paths":{"/tenants/{tenantUid}/customers/{customerUid}/contacts":{"post":{"description":"Create a new contact and add it to a customer\n\nRequired permissions: CUSTOMER,SALES_ORDER,RETURN_ORDER","operationId":"post-tenant-customer-contacts","requestBody":{"$ref":"#/components/requestBodies/CustomerContactCreateRequest"},"responses":{"200":{"$ref":"#/components/responses/CustomerContactResponse"}},"summary":"Create a new contact and add it to a customer","tags":["CustomerContact"]}}}}
```

## Get contact details for a customer

> Get contact details for a customer

```json
{"openapi":"3.0.2","info":{"title":"Flow Retail API version 2","version":"2.0.0"},"tags":[{"name":"CustomerContact","description":"CustomerContact"}],"servers":[{"description":"Flow Retail Production","url":"https://api.flowretail.com/v2"},{"description":"Flow Retail Stage","url":"https://api.stage.flowretail.com/v2"}],"security":[{"accessToken":[]},{"authToken":[]},{"integrationToken":[]}],"components":{"securitySchemes":{"accessToken":{"description":"Access token recevied after user login with a deviceToken","scheme":"bearer","type":"http"},"authToken":{"description":"Token received from the auth service","scheme":"bearer","type":"http"},"integrationToken":{"scheme":"bearer","type":"http"}},"responses":{"CustomerContactResponse":{"description":"Example response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomerContactResponseSchema"}}}}},"schemas":{"CustomerContactResponseSchema":{"title":"CustomerContactResponseSchema","type":"object","description":"CustomerContactResponseSchema","required":["firstname","lastname","email","mobile","createdAt","lastModifiedAt","customerContactUid","extensions","displayName","role"],"properties":{"firstname":{"type":"string"},"lastname":{"type":"string"},"email":{"$ref":"#/components/schemas/EmailTYPE"},"mobile":{"type":"string"},"createdAt":{"type":"string","format":"date-time"},"lastModifiedAt":{"type":"string","format":"date-time"},"customerContactUid":{"type":"string"},"extensions":{"type":"array","items":{"$ref":"#/components/schemas/CustomerContactExtensionResponseSchema"}},"displayName":{"type":"string"},"role":{"$ref":"#/components/schemas/CustomerContactRoleENUM"}}},"EmailTYPE":{"title":"Email","type":"string"},"CustomerContactExtensionResponseSchema":{"description":"CustomerContactExtensionResponseSchema","title":"CustomerContactExtensionResponseSchema","type":"object","properties":{"extensionCode":{"$ref":"#/components/schemas/CustomerExtensionCodeENUM"},"organizationUid":{"$ref":"#/components/schemas/UID"}},"required":["extensionCode","organizationUid"]},"CustomerExtensionCodeENUM":{"description":"|ENUM      | Description |\n| ---------------- | ------------ |\n| TWO_INVOICE | The Two Invoice extension.|","enum":["TWO_INVOICE"],"title":"CustomerExtensionCodeENUM","type":"string"},"UID":{"title":"UID","type":"string","pattern":"^[A-Za-z0-9-_]+"},"CustomerContactRoleENUM":{"title":"CustomerContactRoleENUM","type":"string","enum":["ADMIN","PURCHASER","ACCOUNTING","NONE"]}}},"paths":{"/tenants/{tenantUid}/customers/{customerUid}/contacts/{customerContactUid}":{"get":{"description":"Get contact details for a customer","operationId":"get-tenant-customer-contact-details","responses":{"200":{"$ref":"#/components/responses/CustomerContactResponse"}},"summary":"Get contact details for a customer","tags":["CustomerContact"]}}}}
```

## Update contact details for a customer

> Update contact details for a customer. Partial updates are allowed.

```json
{"openapi":"3.0.2","info":{"title":"Flow Retail API version 2","version":"2.0.0"},"tags":[{"name":"CustomerContact","description":"CustomerContact"}],"servers":[{"description":"Flow Retail Production","url":"https://api.flowretail.com/v2"},{"description":"Flow Retail Stage","url":"https://api.stage.flowretail.com/v2"}],"security":[{"accessToken":[]},{"authToken":[]},{"integrationToken":[]}],"components":{"securitySchemes":{"accessToken":{"description":"Access token recevied after user login with a deviceToken","scheme":"bearer","type":"http"},"authToken":{"description":"Token received from the auth service","scheme":"bearer","type":"http"},"integrationToken":{"scheme":"bearer","type":"http"}},"requestBodies":{"CustomerContactUpdateRequest":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomerContactUpdateRequestSchema"}}}}},"schemas":{"CustomerContactUpdateRequestSchema":{"title":"CustomerContactUpdateSchema","type":"object","properties":{"firstname":{"type":"string"},"lastname":{"type":"string"},"email":{"$ref":"#/components/schemas/EmailTYPE"},"mobile":{"type":"string"}},"description":"CustomerContactUpdateSchema"},"EmailTYPE":{"title":"Email","type":"string"},"CustomerContactResponseSchema":{"title":"CustomerContactResponseSchema","type":"object","description":"CustomerContactResponseSchema","required":["firstname","lastname","email","mobile","createdAt","lastModifiedAt","customerContactUid","extensions","displayName","role"],"properties":{"firstname":{"type":"string"},"lastname":{"type":"string"},"email":{"$ref":"#/components/schemas/EmailTYPE"},"mobile":{"type":"string"},"createdAt":{"type":"string","format":"date-time"},"lastModifiedAt":{"type":"string","format":"date-time"},"customerContactUid":{"type":"string"},"extensions":{"type":"array","items":{"$ref":"#/components/schemas/CustomerContactExtensionResponseSchema"}},"displayName":{"type":"string"},"role":{"$ref":"#/components/schemas/CustomerContactRoleENUM"}}},"CustomerContactExtensionResponseSchema":{"description":"CustomerContactExtensionResponseSchema","title":"CustomerContactExtensionResponseSchema","type":"object","properties":{"extensionCode":{"$ref":"#/components/schemas/CustomerExtensionCodeENUM"},"organizationUid":{"$ref":"#/components/schemas/UID"}},"required":["extensionCode","organizationUid"]},"CustomerExtensionCodeENUM":{"description":"|ENUM      | Description |\n| ---------------- | ------------ |\n| TWO_INVOICE | The Two Invoice extension.|","enum":["TWO_INVOICE"],"title":"CustomerExtensionCodeENUM","type":"string"},"UID":{"title":"UID","type":"string","pattern":"^[A-Za-z0-9-_]+"},"CustomerContactRoleENUM":{"title":"CustomerContactRoleENUM","type":"string","enum":["ADMIN","PURCHASER","ACCOUNTING","NONE"]}},"responses":{"CustomerContactResponse":{"description":"Example response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomerContactResponseSchema"}}}}}},"paths":{"/tenants/{tenantUid}/customers/{customerUid}/contacts/{customerContactUid}":{"put":{"description":"Update contact details for a customer. Partial updates are allowed.","operationId":"put-tenant-customer-contact-details","requestBody":{"$ref":"#/components/requestBodies/CustomerContactUpdateRequest"},"responses":{"200":{"$ref":"#/components/responses/CustomerContactResponse"}},"summary":"Update contact details for a customer","tags":["CustomerContact"]}}}}
```

## Delete a contact for a customer

> Delete a contact for a customer.

```json
{"openapi":"3.0.2","info":{"title":"Flow Retail API version 2","version":"2.0.0"},"tags":[{"name":"CustomerContact","description":"CustomerContact"}],"servers":[{"description":"Flow Retail Production","url":"https://api.flowretail.com/v2"},{"description":"Flow Retail Stage","url":"https://api.stage.flowretail.com/v2"}],"security":[{"accessToken":[]},{"authToken":[]},{"integrationToken":[]}],"components":{"securitySchemes":{"accessToken":{"description":"Access token recevied after user login with a deviceToken","scheme":"bearer","type":"http"},"authToken":{"description":"Token received from the auth service","scheme":"bearer","type":"http"},"integrationToken":{"scheme":"bearer","type":"http"}}},"paths":{"/tenants/{tenantUid}/customers/{customerUid}/contacts/{customerContactUid}":{"delete":{"description":"Delete a contact for a customer.","operationId":"delete-tenant-customer-contact-details","responses":{"204":{"description":"No Content"}},"summary":"Delete a contact for a customer","tags":["CustomerContact"]}}}}
```

## Add extension to a customer contact

> Add extension to a customer contact\
> \
> Required permissions: CUSTOMER

```json
{"openapi":"3.0.2","info":{"title":"Flow Retail API version 2","version":"2.0.0"},"tags":[{"name":"CustomerContact","description":"CustomerContact"}],"servers":[{"description":"Flow Retail Production","url":"https://api.flowretail.com/v2"},{"description":"Flow Retail Stage","url":"https://api.stage.flowretail.com/v2"}],"security":[{"accessToken":[]},{"authToken":[]},{"integrationToken":[]}],"components":{"securitySchemes":{"accessToken":{"description":"Access token recevied after user login with a deviceToken","scheme":"bearer","type":"http"},"authToken":{"description":"Token received from the auth service","scheme":"bearer","type":"http"},"integrationToken":{"scheme":"bearer","type":"http"}},"responses":{"CustomerContactResponse":{"description":"Example response","content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomerContactResponseSchema"}}}}},"schemas":{"CustomerContactResponseSchema":{"title":"CustomerContactResponseSchema","type":"object","description":"CustomerContactResponseSchema","required":["firstname","lastname","email","mobile","createdAt","lastModifiedAt","customerContactUid","extensions","displayName","role"],"properties":{"firstname":{"type":"string"},"lastname":{"type":"string"},"email":{"$ref":"#/components/schemas/EmailTYPE"},"mobile":{"type":"string"},"createdAt":{"type":"string","format":"date-time"},"lastModifiedAt":{"type":"string","format":"date-time"},"customerContactUid":{"type":"string"},"extensions":{"type":"array","items":{"$ref":"#/components/schemas/CustomerContactExtensionResponseSchema"}},"displayName":{"type":"string"},"role":{"$ref":"#/components/schemas/CustomerContactRoleENUM"}}},"EmailTYPE":{"title":"Email","type":"string"},"CustomerContactExtensionResponseSchema":{"description":"CustomerContactExtensionResponseSchema","title":"CustomerContactExtensionResponseSchema","type":"object","properties":{"extensionCode":{"$ref":"#/components/schemas/CustomerExtensionCodeENUM"},"organizationUid":{"$ref":"#/components/schemas/UID"}},"required":["extensionCode","organizationUid"]},"CustomerExtensionCodeENUM":{"description":"|ENUM      | Description |\n| ---------------- | ------------ |\n| TWO_INVOICE | The Two Invoice extension.|","enum":["TWO_INVOICE"],"title":"CustomerExtensionCodeENUM","type":"string"},"UID":{"title":"UID","type":"string","pattern":"^[A-Za-z0-9-_]+"},"CustomerContactRoleENUM":{"title":"CustomerContactRoleENUM","type":"string","enum":["ADMIN","PURCHASER","ACCOUNTING","NONE"]},"CustomerContactExtensionRequestSchema":{"title":"CustomerContactExtensionRequestSchema","type":"object","properties":{"storeUid":{"$ref":"#/components/schemas/UID"}},"required":["storeUid"]}},"requestBodies":{"CustomerContactExtensionRequest":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomerContactExtensionRequestSchema"}}},"description":"CustomerContactExtensionRequest"}}},"paths":{"/tenants/{tenantUid}/customers/{customerUid}/contacts/{customerContactUid}/extensions/{customerExtensionCode}":{"post":{"summary":"Add extension to a customer contact","operationId":"post-tenant-customer-contact-extensions","responses":{"200":{"$ref":"#/components/responses/CustomerContactResponse"}},"description":"Add extension to a customer contact\n\nRequired permissions: CUSTOMER","requestBody":{"$ref":"#/components/requestBodies/CustomerContactExtensionRequest"},"tags":["CustomerContact"]}}}}
```

## Delete extension from a customer contact

> Delete extension from a customer contact

```json
{"openapi":"3.0.2","info":{"title":"Flow Retail API version 2","version":"2.0.0"},"tags":[{"name":"CustomerContact","description":"CustomerContact"}],"servers":[{"description":"Flow Retail Production","url":"https://api.flowretail.com/v2"},{"description":"Flow Retail Stage","url":"https://api.stage.flowretail.com/v2"}],"security":[{"accessToken":[]},{"authToken":[]},{"integrationToken":[]}],"components":{"securitySchemes":{"accessToken":{"description":"Access token recevied after user login with a deviceToken","scheme":"bearer","type":"http"},"authToken":{"description":"Token received from the auth service","scheme":"bearer","type":"http"},"integrationToken":{"scheme":"bearer","type":"http"}},"requestBodies":{"CustomerContactExtensionRequest":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/CustomerContactExtensionRequestSchema"}}},"description":"CustomerContactExtensionRequest"}},"schemas":{"CustomerContactExtensionRequestSchema":{"title":"CustomerContactExtensionRequestSchema","type":"object","properties":{"storeUid":{"$ref":"#/components/schemas/UID"}},"required":["storeUid"]},"UID":{"title":"UID","type":"string","pattern":"^[A-Za-z0-9-_]+"}}},"paths":{"/tenants/{tenantUid}/customers/{customerUid}/contacts/{customerContactUid}/extensions/{customerExtensionCode}":{"delete":{"summary":"Delete extension from a customer contact","operationId":"delete-tenant-customer-contact-extensions","responses":{"204":{"description":"No Content"}},"description":"Delete extension from a customer contact","tags":["CustomerContact"],"requestBody":{"$ref":"#/components/requestBodies/CustomerContactExtensionRequest"}}}}}
```
