Skip to content

Create a new customer

POST
/openapi/customer
curl --request POST \
--url https://open-api.replyco.com/openapi/customer \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json-patch+json' \
--data '{ "integrationId": "3fa85f64-5717-4562-b3fc-2c963f66afa6", "marketplace": "0 - PlaceholderDoNotUse", "firstName": "Jane", "lastName": "Smith", "email": "jane.smith@example.com", "phone": "+44 7911 123456", "marketCustomerId": "ebay-buyer-jane99", "customerAddress": { "id": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0", "addressLine1": "example", "addressLine2": "example", "addressLine3": "example", "city": "example", "country": "example", "postalCode": "example", "state": "example", "phone": "example" }, "notes": [ { "id": "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0", "note": "example", "username": "example" } ] }'

Creates a new customer record in the system for the authenticated user’s company.

Required fields:

  • integrationId — the marketplace account this customer belongs to
  • marketplace — the channel or marketplace type; use 20 for custom integrations

Matching and de-duplication: Provide marketCustomerId whenever possible — this is the buyer’s unique ID on the marketplace (e.g. eBay username, Shopify customer ID) and is used internally to match and de-duplicate customers when threads arrive from that marketplace.

Address: All address sub-fields are optional. Provide as many as are available.

Notes: Each note entry requires at minimum the note text field. The username field will be auto-populated when left empty.

Sample request:

POST /customer
{
  "integrationId":    "3fa85f64-5717-4562-b3fc-2c963f66afa6",
  "marketplace":      20,
  "firstName":        "Jane",
  "lastName":         "Smith",
  "email":            "jane.smith@example.com",
  "phone":            "+44 7911 123456",
  "marketCustomerId": "ebay-buyer-jane99",
  "customerAddress": {
    "addressLine1": "221B Baker Street",
    "city":         "London",
    "postalCode":   "NW1 6XE",
    "country":      "GB"
  },
  "notes": [
    { "note": "VIP customer — handle with priority." }
  ]
}

Customer data. Only integrationId and marketplace are required.

Input model for creating a new customer. IntegrationId and Marketplace are required — all other fields are optional but should be filled in with as much detail as is available to make the customer identifiable.

object
integrationId
required

ID of the integration (marketplace account) this customer belongs to. Find this on the Integrations page inside your Replyco account.

string format: uuid

Example

3fa85f64-5717-4562-b3fc-2c963f66afa6
marketplace
required
integer format: int32
Allowed values: 0 - PlaceholderDoNotUse 1 - Ebay 2 - Etsy 3 - Mail 4 - BigCommerce 5 - WooCommerce 6 - Magento 7 - Shopify 8 - Linnworks 10 - Gmail 11 - Telegram 12 - Widget 13 - Cdiscount 14 - Facebook 15 - Fruugo 16 - AmazonSP 17 - Instagram 18 - Wish 19 - ChannelAdvisor 20 - CustomIntegration 21 - Outlook 22 - Veeqo 23 - Aircall 24 - Katana 25 - Billbee 26 - Kaufland 27 - WhatsApp 28 - ShopLine 29 - Brightpearl 30 - TikTok 31 - Otto 32 - RestApiEbay
firstName

Customer’s first name.

string
nullable

Example

Jane
lastName

Customer’s last name.

string
nullable

Example

Smith
email

Customer’s email address. Used for search and communication linking inside Replyco.

string
nullable

Example

jane.smith@example.com
phone

Customer’s phone number (any format accepted).

string
nullable

Example

+44 7911 123456
marketCustomerId

The customer’s unique ID as it appears on the marketplace (e.g. eBay buyer username, Shopify customer ID). Used to match and de-duplicate customers when syncing from your platform.

string
nullable

Example

ebay-buyer-jane99
customerAddress
object
id
string format: uuid
addressLine1
string
nullable
addressLine2
string
nullable
addressLine3
string
nullable
city
string
nullable
country
string
nullable
postalCode
string
nullable
state

State or region

string
nullable
phone
string
nullable
notes

Internal notes to attach to the customer record (e.g. VIP flag, special handling instructions). Each note requires at minimum the note text field.

Array<object>
nullable
object
id
string format: uuid
note
required
string
>= 1 characters
username
string
nullable

Customer created successfully — returns the full customer model.

Media typeapplication/json

IntegrationId and ShopType are required.

object
id
string format: uuid
firstName
string
nullable
lastName
string
nullable
marketCustomerId
string
nullable
email
string
nullable
phone
string
nullable
integrationId
required
string format: uuid
marketplace
required
integer format: int32
Allowed values: 0 - PlaceholderDoNotUse 1 - Ebay 2 - Etsy 3 - Mail 4 - BigCommerce 5 - WooCommerce 6 - Magento 7 - Shopify 8 - Linnworks 10 - Gmail 11 - Telegram 12 - Widget 13 - Cdiscount 14 - Facebook 15 - Fruugo 16 - AmazonSP 17 - Instagram 18 - Wish 19 - ChannelAdvisor 20 - CustomIntegration 21 - Outlook 22 - Veeqo 23 - Aircall 24 - Katana 25 - Billbee 26 - Kaufland 27 - WhatsApp 28 - ShopLine 29 - Brightpearl 30 - TikTok 31 - Otto 32 - RestApiEbay
customerAddress
object
id
string format: uuid
addressLine1
string
nullable
addressLine2
string
nullable
addressLine3
string
nullable
city
string
nullable
country
string
nullable
postalCode
string
nullable
state

State or region

string
nullable
phone
string
nullable
notes

Related Notes to Customer

Array<object>
nullable
object
id
string format: uuid
note
required
string
>= 1 characters
username
string
nullable

Example

{
"marketplace": "0 - PlaceholderDoNotUse"
}

Request validation failed (missing required fields or malformed body).

Missing or invalid authentication token.