Customer Service

This is the documentation for version v8.0 of the API. Last update on Sep 14, 2021.

Base URL
https://api.emporix.io/customer

Login

Login as a customer and request an authentication token

Login as a customer and request an authentication token.
Account is locked and login is not possible when a certain number of failed logins has been recorded.
The account is unlocked after a certain amount of time lapsed.

Does not require any specific scope.

Headers
  • authorization Required / string

    Bearer token

Path parameters
  • tenant Required / string

    Name of the tenant.

    Note: Name of the tenant is always written in lowercase.'

Body
  • email Required / string
  • password Required / string
Responses
  • 200 object

    Successful retrieval of new authentication token

    • accessToken Required / string
    • saasToken Required / string
    • expiresIn Required / integer
    • refreshToken Required / string
    • refreshTokenExpiresIn Required / integer
  • 400 object

    Request syntactically incorrect. Any details will be provided within the response payload.

    • status Required / integer

      original HTTP error code, should be consistent with the response HTTP code

      Minimum value is 100, maximum value is 599.

    • type Required / string

      classification of the error type, lower case with underscore eg validation_failure

    • message string

      descriptive error message for debugging

    • moreInfo string(uri)

      link to documentation to investigate further and finding support

    • details array[object]

      list of problems causing this error

      • field string

        a bean notation expression specifying the element in request data causing the error, eg product.variants[3].name, this can be empty if violation was not field specific

      • type Required / string

        classification of the error detail type, lower case with underscore eg missing_value, this value must be always interpreted in context of the general error type.

      • message string

        descriptive error detail message for debugging

      • moreInfo string(uri)

        link to documentation to investigate further and finding support for error detail

  • 401 object

    Incorrect password has been provided.

    • status Required / integer

      original HTTP error code, should be consistent with the response HTTP code

      Minimum value is 100, maximum value is 599.

    • type Required / string

      classification of the error type, lower case with underscore eg validation_failure

    • message string

      descriptive error message for debugging

    • moreInfo string(uri)

      link to documentation to investigate further and finding support

    • details array[object]

      list of problems causing this error

      • field string

        a bean notation expression specifying the element in request data causing the error, eg product.variants[3].name, this can be empty if violation was not field specific

      • type Required / string

        classification of the error detail type, lower case with underscore eg missing_value, this value must be always interpreted in context of the general error type.

      • message string

        descriptive error detail message for debugging

      • moreInfo string(uri)

        link to documentation to investigate further and finding support for error detail

POST /{tenant}/login
$ curl \
 -X POST https://api.emporix.io/customer/{tenant}/login \
 -H "Content-Type: application/json" \
 -H "authorization: string" \
 -d '{"email":"noreply@emporix.com","password":"secret"}'
Request payload example
# Headers
authorization: string

# Payload
{
  "email": "noreply@emporix.com",
  "password": "secret"
}
Response example (200)
{
  "accessToken": "L7Ri1I1RAq3FJuRCy9vDgjB7NM4T",
  "saasToken": "eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJDNjI5OTYwNjM5OCIsImV4cCI6MTYxNjE1MzUwM30.6FKEwDA5QS-UIja2cUsdMNNXvVILLbhPBU1DzudCCtU",
  "expiresIn": 14399,
  "refreshToken": "P4HuyUX4OkH52B8VyXahcai1zIf2XNOi",
  "refreshTokenExpiresIn": 86399
}
Response example (400)
{
  "status": 400,
  "message": "There are validation problems, see details section for more information",
  "type": "validation_violation",
  "details": [
    {
      "field": "tenant",
      "message": "must be between 2 and 16 characters",
      "type": "invalid_header"
    }
  ]
}
Response example (401)
{
  "status": 401,
  "message": "Access denied. Entered credentials are incorrect.",
  "type": "insufficient_credentials"
}

Logout

Invalidate authentication token - user is logged out

Invalidate authentication token - user is logged out.

Does not require any specific scope.

Headers
  • authorization Required / string

    Bearer token

Path parameters
  • tenant Required / string

    Name of the tenant.

    Note: Name of the tenant is always written in lowercase.'

Query parameters
  • accessToken Required / string

    Authentication token to be invalidated.

Responses
  • 204

    Successful invalidation of an authentication token.

  • 400 object

    Request syntactically incorrect. Any details will be provided within the response payload.

    • status Required / integer

      original HTTP error code, should be consistent with the response HTTP code

      Minimum value is 100, maximum value is 599.

    • type Required / string

      classification of the error type, lower case with underscore eg validation_failure

    • message string

      descriptive error message for debugging

    • moreInfo string(uri)

      link to documentation to investigate further and finding support

    • details array[object]

      list of problems causing this error

      • field string

        a bean notation expression specifying the element in request data causing the error, eg product.variants[3].name, this can be empty if violation was not field specific

      • type Required / string

        classification of the error detail type, lower case with underscore eg missing_value, this value must be always interpreted in context of the general error type.

      • message string

        descriptive error detail message for debugging

      • moreInfo string(uri)

        link to documentation to investigate further and finding support for error detail

GET /{tenant}/logout
$ curl \
 -X GET https://api.emporix.io/customer/{tenant}/logout?accessToken=string \
 -H "authorization: string"
Response example (400)
{
  "status": 400,
  "message": "There are validation problems, see details section for more information",
  "type": "validation_violation",
  "details": [
    {
      "field": "tenant",
      "message": "must be between 2 and 16 characters",
      "type": "invalid_header"
    }
  ]
}

Me

Retrieve my customer profile

Retrieve my customer profile.

Requires scope customer.customerprofile_view.

Headers
  • authorization Required / string

    Bearer token

Path parameters
  • tenant Required / string

    Name of the tenant.

    Note: Name of the tenant is always written in lowercase.'

Responses
  • 200 object

    Successful Customer profile retrieval

    • customerNumber Required / string
    • metadata object
      • mixins object
        • Additional properties: string(uri)
      • version number

        Resource version number

      • Additional properties are NOT allowed
    • mixins object

      The collection of mixins stored in the customer profile. Each attribute is a separate mixin.

    • title string
    • firstName string
    • middleName string
    • lastName string
    • contactEmail string
    • contactPhone string
    • company string
    • preferredLanguage string

      Default value is en_US.

    • preferredCurrency string

      Default value is USD.

    • preferredSite Required / string

      Default value is default.

    • accounts array[object]

      A list of OAuth accounts, associated with a customer's profile.

      • providerId string
      • id string
    • addresses array[object]
      • metadata object

        The mixins metadata for this address

        • mixins object
          • Additional properties: string(uri)
        • Additional properties are NOT allowed
      • id Required / string
      • contactName Required / string
      • companyName string
      • street string
      • streetNumber string
      • streetAppendix string
      • extraLine1 string
      • extraLine2 string
      • extraLine3 string
      • extraLine4 string
      • zipCode string
      • city string
      • country string
      • state string
      • contactPhone string
      • tags array[string]

        Values like: Billing / Shipping or any other custom tag

      • isDefault Required / boolean
      • mixins object

        Mixins stored in this Address

    • defaultAddress object
      • metadata object

        The mixins metadata for this address

        • mixins object
          • Additional properties: string(uri)
        • Additional properties are NOT allowed
      • id Required / string
      • contactName Required / string
      • companyName string
      • street string
      • streetNumber string
      • streetAppendix string
      • extraLine1 string
      • extraLine2 string
      • extraLine3 string
      • extraLine4 string
      • zipCode string
      • city string
      • country string
      • state string
      • contactPhone string
      • tags array[string]

        Values like: Billing / Shipping or any other custom tag

      • isDefault Required / boolean
      • mixins object

        Mixins stored in this Address

  • 400 object

    Request syntactically incorrect. Any details will be provided within the response payload.

    • status Required / integer

      original HTTP error code, should be consistent with the response HTTP code

      Minimum value is 100, maximum value is 599.

    • type Required / string

      classification of the error type, lower case with underscore eg validation_failure

    • message string

      descriptive error message for debugging

    • moreInfo string(uri)

      link to documentation to investigate further and finding support

    • details array[object]

      list of problems causing this error

      • field string

        a bean notation expression specifying the element in request data causing the error, eg product.variants[3].name, this can be empty if violation was not field specific

      • type Required / string

        classification of the error detail type, lower case with underscore eg missing_value, this value must be always interpreted in context of the general error type.

      • message string

        descriptive error detail message for debugging

      • moreInfo string(uri)

        link to documentation to investigate further and finding support for error detail

  • 403 object

    Given authorization scopes are not sufficient and do not match required scopes.

    • status Required / integer

      original HTTP error code, should be consistent with the response HTTP code

      Minimum value is 100, maximum value is 599.

    • type Required / string

      classification of the error type, lower case with underscore eg validation_failure

    • message string

      descriptive error message for debugging

    • moreInfo string(uri)

      link to documentation to investigate further and finding support

    • details array[object]

      list of problems causing this error

      • field string

        a bean notation expression specifying the element in request data causing the error, eg product.variants[3].name, this can be empty if violation was not field specific

      • type Required / string

        classification of the error detail type, lower case with underscore eg missing_value, this value must be always interpreted in context of the general error type.

      • message string

        descriptive error detail message for debugging

      • moreInfo string(uri)

        link to documentation to investigate further and finding support for error detail

GET /{tenant}/me
$ curl \
 -X GET https://api.emporix.io/customer/{tenant}/me \
 -H "authorization: string"
Response example (200)
{
  "customerNumber": "C123456",
  "metadata": {
    "mixins": {
      "additionalCode": "https://${api.proxy}/emporix/schema/v1/example-schema.json"
    },
    "version": 1
  },
  "mixins": {
    "additionalCode": {
      "code": "DFG-334-98330-X"
    }
  },
  "title": "Dr.",
  "firstName": "Max",
  "middleName": "Simon",
  "lastName": "Muster",
  "contactEmail": "max.muster@emporix.com",
  "contactPhone": "+1 1111 2222 3333",
  "company": "hybris",
  "preferredLanguage": "en_US",
  "preferredCurrency": "USD",
  "addresses": [
    {
      "id": "53426fc4e4b08806bb0d3ecc",
      "contactName": "Business",
      "street": "Musterstrasse",
      "streetNumber": "42",
      "city": "Munich",
      "country": "DE",
      "isDefault": "true",
      "tags": [
        "shipping",
        "home"
      ]
    },
    {
      "id": "53442904e4b08806bb0d4243",
      "contactName": "Business",
      "street": "Grünwalderstrasse",
      "streetNumber": "42",
      "city": "Frankfurt",
      "country": "DE",
      "isDefault": "false",
      "tags": [
        "billing"
      ]
    }
  ],
  "defaultAddress": {
    "id": "53426fc4e4b08806bb0d3ecc",
    "contactName": "Business",
    "street": "Musterstrasse",
    "streetNumber": "42",
    "city": "Munich",
    "country": "DE",
    "isDefault": "true",
    "tags": [
      "shipping",
      "home"
    ]
  }
}
Response example (400)
{
  "status": 400,
  "message": "There are validation problems, see details section for more information",
  "type": "validation_violation",
  "details": [
    {
      "field": "tenant",
      "message": "must be between 2 and 16 characters",
      "type": "invalid_header"
    }
  ]
}
Response example (403)
{
  "status": 403,
  "message": "Given request does not have required scopes. It is not authorized to perform this operation.",
  "type": "insufficient_permissions"
}

Updates my customer profile Requires scope `customer

Updates my customer profile

Requires scope customer.customer_edit_profile.

Deprecated

Headers
  • authorization Required / string

    Bearer token

Path parameters
  • tenant Required / string

    Name of the tenant.

    Note: Name of the tenant is always written in lowercase.'

Body
  • metadata object
    • mixins object
      • Additional properties: string(uri)
    • version number

      Resource version number

    • Additional properties are NOT allowed
  • mixins object

    The collection of mixins stored in the customer profile. Each attribute is a separate mixin.

  • title string
  • firstName string
  • middleName string
  • lastName string
  • contactEmail string
  • contactPhone string
  • company string
  • preferredLanguage string

    Default value is en_US.

  • preferredCurrency string

    Default value is USD.

  • preferredSite string
Responses
  • 200

    Successful Customer profile update

  • 400 object

    Request syntactically incorrect. Any details will be provided within the response payload.

    • status Required / integer

      original HTTP error code, should be consistent with the response HTTP code

      Minimum value is 100, maximum value is 599.

    • type Required / string

      classification of the error type, lower case with underscore eg validation_failure

    • message string

      descriptive error message for debugging

    • moreInfo string(uri)

      link to documentation to investigate further and finding support

    • details array[object]

      list of problems causing this error

      • field string

        a bean notation expression specifying the element in request data causing the error, eg product.variants[3].name, this can be empty if violation was not field specific

      • type Required / string

        classification of the error detail type, lower case with underscore eg missing_value, this value must be always interpreted in context of the general error type.

      • message string

        descriptive error detail message for debugging

      • moreInfo string(uri)

        link to documentation to investigate further and finding support for error detail

  • 403 object

    Access forbidden. The caller is not allowed to access this resource.

    • status Required / integer

      original HTTP error code, should be consistent with the response HTTP code

      Minimum value is 100, maximum value is 599.

    • type Required / string

      classification of the error type, lower case with underscore eg validation_failure

    • message string

      descriptive error message for debugging

    • moreInfo string(uri)

      link to documentation to investigate further and finding support

    • details array[object]

      list of problems causing this error

      • field string

        a bean notation expression specifying the element in request data causing the error, eg product.variants[3].name, this can be empty if violation was not field specific

      • type Required / string

        classification of the error detail type, lower case with underscore eg missing_value, this value must be always interpreted in context of the general error type.

      • message string

        descriptive error detail message for debugging

      • moreInfo string(uri)

        link to documentation to investigate further and finding support for error detail

  • 404 object

    Customer profile does not exist

    • status Required / integer

      original HTTP error code, should be consistent with the response HTTP code

      Minimum value is 100, maximum value is 599.

    • type Required / string

      classification of the error type, lower case with underscore eg validation_failure

    • message string

      descriptive error message for debugging

    • moreInfo string(uri)

      link to documentation to investigate further and finding support

    • details array[object]

      list of problems causing this error

      • field string

        a bean notation expression specifying the element in request data causing the error, eg product.variants[3].name, this can be empty if violation was not field specific

      • type Required / string

        classification of the error detail type, lower case with underscore eg missing_value, this value must be always interpreted in context of the general error type.

      • message string

        descriptive error detail message for debugging

      • moreInfo string(uri)

        link to documentation to investigate further and finding support for error detail

PUT /{tenant}/me
$ curl \
 -X PUT https://api.emporix.io/customer/{tenant}/me \
 -H "Content-Type: application/json" \
 -H "authorization: string" \
 -d '{"metadata":{"mixins":{"additionalCode":"https://${api.proxy}/emporix/schema/v1/example-schema.json"},"version":1},"mixins":{"additionalCode":{"code":"DFG-334-98330-X"}},"firstName":"John","contactEmail":"john.doe@emporix.com","company":"emporix","preferredLanguage":"de_DE","preferredCurrency":"EUR","preferredSite":"DE_site"}'
Request payload example
# Headers
authorization: string

# Payload
{
  "metadata": {
    "mixins": {
      "additionalCode": "https://${api.proxy}/emporix/schema/v1/example-schema.json"
    },
    "version": 1
  },
  "mixins": {
    "additionalCode": {
      "code": "DFG-334-98330-X"
    }
  },
  "firstName": "John",
  "contactEmail": "john.doe@emporix.com",
  "company": "emporix",
  "preferredLanguage": "de_DE",
  "preferredCurrency": "EUR",
  "preferredSite": "DE_site"
}
Response example (400)
{
  "status": 400,
  "message": "There are validation problems, see details section for more information",
  "type": "validation_violation",
  "details": [
    {
      "field": "tenant",
      "message": "must be between 2 and 16 characters",
      "type": "invalid_header"
    }
  ]
}
Response example (403)
{
  "status": 403,
  "message": "Not allowed to access this resource",
  "type": "insufficient_permissions"
}
Response example (404)
{
  "status": 42,
  "type": "string",
  "message": "string",
  "moreInfo": "https://example.com",
  "details": [
    {
      "field": "string",
      "type": "string",
      "message": "string",
      "moreInfo": "https://example.com"
    }
  ]
}

Delete my customer profile and associated accounts Requires scope `customer

Delete my customer profile and associated accounts

Requires scope customer.customer_edit_profile

Headers
  • authorization Required / string

    Bearer token

Path parameters
  • tenant Required / string

    Name of the tenant.

    Note: Name of the tenant is always written in lowercase.'

Query parameters
  • token string

    The token for the confirmation of the deletion.

Responses
  • 202

    Customer profile deletion confirmation was successfully accepted

  • 204

    Customer profile deletion request was successful

  • 400 object

    Request syntactically incorrect. Any details will be provided within the response payload.

    • status Required / integer

      original HTTP error code, should be consistent with the response HTTP code

      Minimum value is 100, maximum value is 599.

    • type Required / string

      classification of the error type, lower case with underscore eg validation_failure

    • message string

      descriptive error message for debugging

    • moreInfo string(uri)

      link to documentation to investigate further and finding support

    • details array[object]

      list of problems causing this error

      • field string

        a bean notation expression specifying the element in request data causing the error, eg product.variants[3].name, this can be empty if violation was not field specific

      • type Required / string

        classification of the error detail type, lower case with underscore eg missing_value, this value must be always interpreted in context of the general error type.

      • message string

        descriptive error detail message for debugging

      • moreInfo string(uri)

        link to documentation to investigate further and finding support for error detail

  • 403 object

    Access forbidden. The caller is not allowed to access this resource.

    • status Required / integer

      original HTTP error code, should be consistent with the response HTTP code

      Minimum value is 100, maximum value is 599.

    • type Required / string

      classification of the error type, lower case with underscore eg validation_failure

    • message string

      descriptive error message for debugging

    • moreInfo string(uri)

      link to documentation to investigate further and finding support

    • details array[object]

      list of problems causing this error

      • field string

        a bean notation expression specifying the element in request data causing the error, eg product.variants[3].name, this can be empty if violation was not field specific

      • type Required / string

        classification of the error detail type, lower case with underscore eg missing_value, this value must be always interpreted in context of the general error type.

      • message string

        descriptive error detail message for debugging

      • moreInfo string(uri)

        link to documentation to investigate further and finding support for error detail

  • 404 object

    Customer profile does not exist

    • status Required / integer

      original HTTP error code, should be consistent with the response HTTP code

      Minimum value is 100, maximum value is 599.

    • type Required / string

      classification of the error type, lower case with underscore eg validation_failure

    • message string

      descriptive error message for debugging

    • moreInfo string(uri)

      link to documentation to investigate further and finding support

    • details array[object]

      list of problems causing this error

      • field string

        a bean notation expression specifying the element in request data causing the error, eg product.variants[3].name, this can be empty if violation was not field specific

      • type Required / string

        classification of the error detail type, lower case with underscore eg missing_value, this value must be always interpreted in context of the general error type.

      • message string

        descriptive error detail message for debugging

      • moreInfo string(uri)

        link to documentation to investigate further and finding support for error detail

DELETE /{tenant}/me
$ curl \
 -X DELETE https://api.emporix.io/customer/{tenant}/me \
 -H "authorization: string"
Response example (400)
{
  "status": 400,
  "message": "There are validation problems, see details section for more information",
  "type": "validation_violation",
  "details": [
    {
      "field": "tenant",
      "message": "must be between 2 and 16 characters",
      "type": "invalid_header"
    }
  ]
}
Response example (403)
{
  "status": 403,
  "message": "Not allowed to access this resource",
  "type": "insufficient_permissions"
}
Response example (404)
{
  "status": 42,
  "type": "string",
  "message": "string",
  "moreInfo": "https://example.com",
  "details": [
    {
      "field": "string",
      "type": "string",
      "message": "string",
      "moreInfo": "https://example.com"
    }
  ]
}

Updates my customer profile Requires scope `customer

Updates my customer profile

Requires scope customer.customerprofile_edit.

Headers
  • authorization Required / string

    Bearer token

Path parameters
  • tenant Required / string

    Name of the tenant.

    Note: Name of the tenant is always written in lowercase.'

Body
  • metadata object
    • mixins object
      • Additional properties: string(uri)
    • version number

      Resource version number

    • Additional properties are NOT allowed
  • mixins object

    The collection of mixins stored in the customer profile. Each attribute is a separate mixin.

  • title string
  • firstName string
  • middleName string
  • lastName string
  • contactEmail string
  • contactPhone string
  • company string
  • preferredLanguage string

    Default value is en_US.

  • preferredCurrency string

    Default value is USD.

  • preferredSite string
Responses
  • 200

    Successful Customer profile update

  • 400 object

    Request syntactically incorrect. Any details will be provided within the response payload.

    • status Required / integer

      original HTTP error code, should be consistent with the response HTTP code

      Minimum value is 100, maximum value is 599.

    • type Required / string

      classification of the error type, lower case with underscore eg validation_failure

    • message string

      descriptive error message for debugging

    • moreInfo string(uri)

      link to documentation to investigate further and finding support

    • details array[object]

      list of problems causing this error

      • field string

        a bean notation expression specifying the element in request data causing the error, eg product.variants[3].name, this can be empty if violation was not field specific

      • type Required / string

        classification of the error detail type, lower case with underscore eg missing_value, this value must be always interpreted in context of the general error type.

      • message string

        descriptive error detail message for debugging

      • moreInfo string(uri)

        link to documentation to investigate further and finding support for error detail

  • 403 object

    Access forbidden. The caller is not allowed to access this resource.

    • status Required / integer

      original HTTP error code, should be consistent with the response HTTP code

      Minimum value is 100, maximum value is 599.

    • type Required / string

      classification of the error type, lower case with underscore eg validation_failure

    • message string

      descriptive error message for debugging

    • moreInfo string(uri)

      link to documentation to investigate further and finding support

    • details array[object]

      list of problems causing this error

      • field string

        a bean notation expression specifying the element in request data causing the error, eg product.variants[3].name, this can be empty if violation was not field specific

      • type Required / string

        classification of the error detail type, lower case with underscore eg missing_value, this value must be always interpreted in context of the general error type.

      • message string

        descriptive error detail message for debugging

      • moreInfo string(uri)

        link to documentation to investigate further and finding support for error detail

  • 404 object

    Customer profile does not exist

    • status Required / integer

      original HTTP error code, should be consistent with the response HTTP code

      Minimum value is 100, maximum value is 599.

    • type Required / string

      classification of the error type, lower case with underscore eg validation_failure

    • message string

      descriptive error message for debugging

    • moreInfo string(uri)

      link to documentation to investigate further and finding support

    • details array[object]

      list of problems causing this error

      • field string

        a bean notation expression specifying the element in request data causing the error, eg product.variants[3].name, this can be empty if violation was not field specific

      • type Required / string

        classification of the error detail type, lower case with underscore eg missing_value, this value must be always interpreted in context of the general error type.

      • message string

        descriptive error detail message for debugging

      • moreInfo string(uri)

        link to documentation to investigate further and finding support for error detail

PATCH /{tenant}/me
$ curl \
 -X PATCH https://api.emporix.io/customer/{tenant}/me \
 -H "Content-Type: application/json" \
 -H "authorization: string" \
 -d '{"metadata":{"mixins":{"additionalCode":"https://${api.proxy}/emporix/schema/v1/example-schema.json"},"version":1},"mixins":{"additionalCode":{"code":"DFG-334-98330-X"}},"firstName":"John","contactEmail":"john.doe@emporix.com","company":"emporix","preferredLanguage":"de_DE","preferredCurrency":"EUR","preferredSite":"DE_site"}'
Request payload example
# Headers
authorization: string

# Payload
{
  "metadata": {
    "mixins": {
      "additionalCode": "https://${api.proxy}/emporix/schema/v1/example-schema.json"
    },
    "version": 1
  },
  "mixins": {
    "additionalCode": {
      "code": "DFG-334-98330-X"
    }
  },
  "firstName": "John",
  "contactEmail": "john.doe@emporix.com",
  "company": "emporix",
  "preferredLanguage": "de_DE",
  "preferredCurrency": "EUR",
  "preferredSite": "DE_site"
}
Response example (400)
{
  "status": 400,
  "message": "There are validation problems, see details section for more information",
  "type": "validation_violation",
  "details": [
    {
      "field": "tenant",
      "message": "must be between 2 and 16 characters",
      "type": "invalid_header"
    }
  ]
}
Response example (403)
{
  "status": 403,
  "message": "Not allowed to access this resource",
  "type": "insufficient_permissions"
}
Response example (404)
{
  "status": 42,
  "type": "string",
  "message": "string",
  "moreInfo": "https://example.com",
  "details": [
    {
      "field": "string",
      "type": "string",
      "message": "string",
      "moreInfo": "https://example.com"
    }
  ]
}

Retrieves the list of addresses of the current customer

Retrieves the list of addresses of the current customer.

Requires scope customer.customerprofile_view.

Headers
  • authorization Required / string

    Bearer token

Path parameters
  • tenant Required / string

    Name of the tenant.

    Note: Name of the tenant is always written in lowercase.'

Responses
  • 200 array[object]

    Resource successfully retrieved.

    • metadata object

      The mixins metadata for this address

      • mixins object
        • Additional properties: string(uri)
      • Additional properties are NOT allowed
    • id Required / string
    • contactName Required / string
    • companyName string
    • street string
    • streetNumber string
    • streetAppendix string
    • extraLine1 string
    • extraLine2 string
    • extraLine3 string
    • extraLine4 string
    • zipCode string
    • city string
    • country string
    • state string
    • contactPhone string
    • tags array[string]

      Values like: Billing / Shipping or any other custom tag

    • isDefault Required / boolean
    • mixins object

      Mixins stored in this Address

  • 400 object

    Request syntactically incorrect. Any details will be provided within the response payload.

    • status Required / integer

      original HTTP error code, should be consistent with the response HTTP code

      Minimum value is 100, maximum value is 599.

    • type Required / string

      classification of the error type, lower case with underscore eg validation_failure

    • message string

      descriptive error message for debugging

    • moreInfo string(uri)

      link to documentation to investigate further and finding support

    • details array[object]

      list of problems causing this error

      • field string

        a bean notation expression specifying the element in request data causing the error, eg product.variants[3].name, this can be empty if violation was not field specific

      • type Required / string

        classification of the error detail type, lower case with underscore eg missing_value, this value must be always interpreted in context of the general error type.

      • message string

        descriptive error detail message for debugging

      • moreInfo string(uri)

        link to documentation to investigate further and finding support for error detail

  • 403 object

    Access forbidden. The caller is not allowed to access this resource.

    • status Required / integer

      original HTTP error code, should be consistent with the response HTTP code

      Minimum value is 100, maximum value is 599.

    • type Required / string

      classification of the error type, lower case with underscore eg validation_failure

    • message string

      descriptive error message for debugging

    • moreInfo string(uri)

      link to documentation to investigate further and finding support

    • details array[object]

      list of problems causing this error

      • field string

        a bean notation expression specifying the element in request data causing the error, eg product.variants[3].name, this can be empty if violation was not field specific

      • type Required / string

        classification of the error detail type, lower case with underscore eg missing_value, this value must be always interpreted in context of the general error type.

      • message string

        descriptive error detail message for debugging

      • moreInfo string(uri)

        link to documentation to investigate further and finding support for error detail

  • 500 object

    Some server side error occurred.

    • status Required / integer

      original HTTP error code, should be consistent with the response HTTP code

      Minimum value is 100, maximum value is 599.

    • type Required / string

      classification of the error type, lower case with underscore eg validation_failure

    • message string

      descriptive error message for debugging

    • moreInfo string(uri)

      link to documentation to investigate further and finding support

    • details array[object]

      list of problems causing this error

      • field string

        a bean notation expression specifying the element in request data causing the error, eg product.variants[3].name, this can be empty if violation was not field specific

      • type Required / string

        classification of the error detail type, lower case with underscore eg missing_value, this value must be always interpreted in context of the general error type.

      • message string

        descriptive error detail message for debugging

      • moreInfo string(uri)

        link to documentation to investigate further and finding support for error detail

GET /{tenant}/me/addresses
$ curl \
 -X GET https://api.emporix.io/customer/{tenant}/me/addresses \
 -H "authorization: string"
Response example (200)
[
  {
    "id": "53426fc4e4b08806bb0d3ecc",
    "contactName": "Joe Smith",
    "companyName": "Cargo Services Airfreight",
    "street": "Cheng Xiang Zhen Guan Tang Lu",
    "streetNumber": "1031",
    "extraLine1": "No. 2058",
    "extraLine2": "Suzhou City",
    "zipCode": "201202",
    "city": "Taicang City",
    "state": "Jiangsu Province",
    "country": "CN",
    "contactPhone": "+86 182 9349 4663",
    "isDefault": "true",
    "tags": [
      "shipping",
      "billing"
    ]
  },
  {
    "id": "53442904e4b08806bb0d4243",
    "contactName": "Business",
    "street": "Grünwalderstrasse",
    "streetNumber": "42",
    "city": "Frankfurt",
    "country": "DE",
    "isDefault": "false",
    "tags": [
      "home"
    ],
    "metadata": {
      "mixins": {
        "secondaryContactPhone": "https://${api.proxy}/emporix/schema/v1/contact-number.json"
      }
    },
    "mixins": {
      "secondaryContactPhone": {
        "number": "+86 334 0033 9934"
      }
    }
  }
]
Response example (400)
{
  "status": 400,
  "message": "There are validation problems, see details section for more information",
  "type": "validation_violation",
  "details": [
    {
      "field": "tenant",
      "message": "must be between 2 and 16 characters",
      "type": "invalid_header"
    }
  ]
}
Response example (403)
{
  "status": 403,
  "message": "Not allowed to access this resource",
  "type": "insufficient_permissions"
}
Response example (500)
{
  "status": 500,
  "message": "Something went wrong while processing the request. Please contact the administrator.",
  "type": "internal_service_error"
}

Creates an address for the current customer

Creates an address for the current customer.

Requires scope customer.customer_edit_profile.

Headers
  • authorization Required / string

    Bearer token

Path parameters
  • tenant Required / string

    Name of the tenant.

    Note: Name of the tenant is always written in lowercase.'

Body
  • metadata object

    The mixins metadata for this address

    • mixins object
      • Additional properties: string(uri)
    • Additional properties are NOT allowed
  • contactName Required / string
  • companyName string
  • street string
  • streetNumber string
  • streetAppendix string
  • extraLine1 string
  • extraLine2 string
  • extraLine3 string
  • extraLine4 string
  • zipCode string
  • city string
  • country string
  • state string
  • contactPhone string
  • tags array[string]

    Values like: Billing / Shipping or any other custom tag

  • mixins object

    Mixins stored in this Address

Responses
  • 201 object

    The collection resource has been successfully created.

    • Location string

      The Location of the new resource which was created by the request.
      The value consists of a single absolute URI.

    • id Required / string

      The identifier of the created resource

    • link Required / string(uri)

      The link to the created resource

  • 400 object

    Request syntactically incorrect. Any details will be provided within the response payload.

    • status Required / integer

      original HTTP error code, should be consistent with the response HTTP code

      Minimum value is 100, maximum value is 599.

    • type Required / string

      classification of the error type, lower case with underscore eg validation_failure

    • message string

      descriptive error message for debugging

    • moreInfo string(uri)

      link to documentation to investigate further and finding support

    • details array[object]

      list of problems causing this error

      • field string

        a bean notation expression specifying the element in request data causing the error, eg product.variants[3].name, this can be empty if violation was not field specific

      • type Required / string

        classification of the error detail type, lower case with underscore eg missing_value, this value must be always interpreted in context of the general error type.

      • message string

        descriptive error detail message for debugging

      • moreInfo string(uri)

        link to documentation to investigate further and finding support for error detail

  • 403 object

    Access forbidden. The caller is not allowed to access this resource.

    • status Required / integer

      original HTTP error code, should be consistent with the response HTTP code

      Minimum value is 100, maximum value is 599.

    • type Required / string

      classification of the error type, lower case with underscore eg validation_failure

    • message string

      descriptive error message for debugging

    • moreInfo string(uri)

      link to documentation to investigate further and finding support

    • details array[object]

      list of problems causing this error

      • field string

        a bean notation expression specifying the element in request data causing the error, eg product.variants[3].name, this can be empty if violation was not field specific

      • type Required / string

        classification of the error detail type, lower case with underscore eg missing_value, this value must be always interpreted in context of the general error type.

      • message string

        descriptive error detail message for debugging

      • moreInfo string(uri)

        link to documentation to investigate further and finding support for error detail

  • 409 object

    Creation failed because there was a conflict with another resource. Any details will be provided within the response payload.

    • status Required / integer

      original HTTP error code, should be consistent with the response HTTP code

      Minimum value is 100, maximum value is 599.

    • type Required / string

      classification of the error type, lower case with underscore eg validation_failure

    • message string

      descriptive error message for debugging

    • moreInfo string(uri)

      link to documentation to investigate further and finding support

    • details array[object]

      list of problems causing this error

      • field string

        a bean notation expression specifying the element in request data causing the error, eg product.variants[3].name, this can be empty if violation was not field specific

      • type Required / string

        classification of the error detail type, lower case with underscore eg missing_value, this value must be always interpreted in context of the general error type.

      • message string

        descriptive error detail message for debugging

      • moreInfo string(uri)

        link to documentation to investigate further and finding support for error detail

  • 500 object

    Some server side error occurred.

    • status Required / integer

      original HTTP error code, should be consistent with the response HTTP code

      Minimum value is 100, maximum value is 599.

    • type Required / string

      classification of the error type, lower case with underscore eg validation_failure

    • message string

      descriptive error message for debugging

    • moreInfo string(uri)

      link to documentation to investigate further and finding support

    • details array[object]

      list of problems causing this error

      • field string

        a bean notation expression specifying the element in request data causing the error, eg product.variants[3].name, this can be empty if violation was not field specific

      • type Required / string

        classification of the error detail type, lower case with underscore eg missing_value, this value must be always interpreted in context of the general error type.

      • message string

        descriptive error detail message for debugging

      • moreInfo string(uri)

        link to documentation to investigate further and finding support for error detail

POST /{tenant}/me/addresses
$ curl \
 -X POST https://api.emporix.io/customer/{tenant}/me/addresses \
 -H "Content-Type: application/json" \
 -H "authorization: string" \
 -d '{"contactName":"Joe Smith","companyName":"Cargo Services Airfreight","street":"Cheng Xiang Zhen Guan Tang Lu","streetNumber":"1031","extraLine1":"No. 2058","extraLine2":"Suzhou City","zipCode":"201202","city":"Taicang City","state":"Jiangsu Province","country":"CN","contactPhone":"+86 182 9349 4663","isDefault":"false","tags":["shipping","billing"],"metadata":{"mixins":{"secondaryContactPhone":"https://${api.proxy}/emporix/schema/v1/contact-number.json"}},"mixins":{"secondaryContactPhone":{"...}'
Request payload example
# Headers
authorization: string

# Payload
{
  "contactName": "Joe Smith",
  "companyName": "Cargo Services Airfreight",
  "street": "Cheng Xiang Zhen Guan Tang Lu",
  "streetNumber": "1031",
  "extraLine1": "No. 2058",
  "extraLine2": "Suzhou City",
  "zipCode": "201202",
  "city": "Taicang City",
  "state": "Jiangsu Province",
  "country": "CN",
  "contactPhone": "+86 182 9349 4663",
  "isDefault": "false",
  "tags": [
    "shipping",
    "billing"
  ],
  "metadata": {
    "mixins": {
      "secondaryContactPhone": "https://${api.proxy}/emporix/schema/v1/contact-number.json"
    }
  },
  "mixins": {
    "secondaryContactPhone": {
      "number": "+86 334 0033 9934"
    }
  }
}
Response example (201)
# Headers
Location: string

# Payload
{
  "id": "76eac35ec4",
  "link": "https://${api.proxy}/emporix/customer/v1/dummytenant/me/addresses/76eac35ec4"
}
Response example (400)
{
  "status": 400,
  "message": "There are validation problems, see details section for more information",
  "type": "validation_violation",
  "details": [
    {
      "field": "tenant",
      "message": "must be between 2 and 16 characters",
      "type": "invalid_header"
    }
  ]
}
Response example (403)
{
  "status": 403,
  "message": "Not allowed to access this resource",
  "type": "insufficient_permissions"
}
Response example (409)
{
  "status": 409,
  "message": "The requested resource could not be created due to server-side validation.",
  "type": "conflict_resource"
}
Response example (500)
{
  "status": 500,
  "message": "Something went wrong while processing the request. Please contact the administrator.",
  "type": "internal_service_error"
}

Request for changing login email token using current email id and password

Request for changing login email token using current email id and password.

Requires scope customer.customerprofile_edit

Headers
  • authorization Required / string

    Bearer token

Path parameters
  • tenant Required / string

    Name of the tenant.

    Note: Name of the tenant is always written in lowercase.'

Body
  • email Required / string

    Current account login email address.

  • password Required / string

    Current account password.

  • newEmail Required / string

    New account login email address.

  • syncContactEmail boolean

    Makes the contact email of the customer same as the new login email. Default value is false.

Responses
  • 204

    Request is valid and successful

  • 400 object

    Request syntactically incorrect. Any details will be provided within the response payload.

    • status Required / integer

      original HTTP error code, should be consistent with the response HTTP code

      Minimum value is 100, maximum value is 599.

    • type Required / string

      classification of the error type, lower case with underscore eg validation_failure

    • message string

      descriptive error message for debugging

    • moreInfo string(uri)

      link to documentation to investigate further and finding support

    • details array[object]

      list of problems causing this error

      • field string

        a bean notation expression specifying the element in request data causing the error, eg product.variants[3].name, this can be empty if violation was not field specific

      • type Required / string

        classification of the error detail type, lower case with underscore eg missing_value, this value must be always interpreted in context of the general error type.

      • message string

        descriptive error detail message for debugging

      • moreInfo string(uri)

        link to documentation to investigate further and finding support for error detail

  • 401 object

    Incorrect password has been provided.

    • status Required / integer

      original HTTP error code, should be consistent with the response HTTP code

      Minimum value is 100, maximum value is 599.

    • type Required / string

      classification of the error type, lower case with underscore eg validation_failure

    • message string

      descriptive error message for debugging

    • moreInfo string(uri)

      link to documentation to investigate further and finding support

    • details array[object]

      list of problems causing this error

      • field string

        a bean notation expression specifying the element in request data causing the error, eg product.variants[3].name, this can be empty if violation was not field specific

      • type Required / string

        classification of the error detail type, lower case with underscore eg missing_value, this value must be always interpreted in context of the general error type.

      • message string

        descriptive error detail message for debugging

      • moreInfo string(uri)

        link to documentation to investigate further and finding support for error detail

  • 403 object

    Access forbidden. The caller is not allowed to access this resource.

    • status Required / integer

      original HTTP error code, should be consistent with the response HTTP code

      Minimum value is 100, maximum value is 599.

    • type Required / string

      classification of the error type, lower case with underscore eg validation_failure

    • message string

      descriptive error message for debugging

    • moreInfo string(uri)

      link to documentation to investigate further and finding support

    • details array[object]

      list of problems causing this error

      • field string

        a bean notation expression specifying the element in request data causing the error, eg product.variants[3].name, this can be empty if violation was not field specific

      • type Required / string

        classification of the error detail type, lower case with underscore eg missing_value, this value must be always interpreted in context of the general error type.

      • message string

        descriptive error detail message for debugging

      • moreInfo string(uri)

        link to documentation to investigate further and finding support for error detail

  • 409 object

    Denotes that another account with the specified new-email already exists.

    • status Required / integer

      original HTTP error code, should be consistent with the response HTTP code

      Minimum value is 100, maximum value is 599.

    • type Required / string

      classification of the error type, lower case with underscore eg validation_failure

    • message string

      descriptive error message for debugging

    • moreInfo string(uri)

      link to documentation to investigate further and finding support

    • details array[object]

      list of problems causing this error

      • field string

        a bean notation expression specifying the element in request data causing the error, eg product.variants[3].name, this can be empty if violation was not field specific

      • type Required / string

        classification of the error detail type, lower case with underscore eg missing_value, this value must be always interpreted in context of the general error type.

      • message string

        descriptive error detail message for debugging

      • moreInfo string(uri)

        link to documentation to investigate further and finding support for error detail

POST /{tenant}/me/accounts/internal/email/change
$ curl \
 -X POST https://api.emporix.io/customer/{tenant}/me/accounts/internal/email/change \
 -H "Content-Type: application/json" \
 -H "authorization: string" \
 -d '{"email":"noreply@emporix.com","password":"s3cr3t","newEmail":"pleasereply@emporix.com","syncContactEmail":true}'
Request payload example
# Headers
authorization: string

# Payload
{
  "email": "noreply@emporix.com",
  "password": "s3cr3t",
  "newEmail": "pleasereply@emporix.com",
  "syncContactEmail": true
}
Response example (400)
{
  "status": 400,
  "message": "There are validation problems, see details section for more information",
  "type": "validation_violation",
  "details": [
    {
      "field": "tenant",
      "message": "size must be between 2 and 16",
      "type": "invalid_header"
    }
  ]
}
Response example (401)
{
  "status": 42,
  "type": "string",
  "message": "string",
  "moreInfo": "https://example.com",
  "details": [
    {
      "field": "string",
      "type": "string",
      "message": "string",
      "moreInfo": "https://example.com"
    }
  ]
}
Response example (403)
{
  "status": 403,
  "message": "Not allowed to access this resource",
  "type": "insufficient_permissions"
}
Response example (409)
{
  "status": 42,
  "type": "string",
  "message": "string",
  "moreInfo": "https://example.com",
  "details": [
    {
      "field": "string",
      "type": "string",
      "message": "string",
      "moreInfo": "https://example.com"
    }
  ]
}

Update login email address using token

Update login email address using token.

Does not require any specific scope.

Headers
  • authorization Required / string

    Bearer token

Path parameters
  • tenant Required / string

    Name of the tenant.

    Note: Name of the tenant is always written in lowercase.'

Body
  • token Required / string
Responses
  • 204

    Email updated successfully

  • 400 object

    Request syntactically incorrect. Any details will be provided within the response payload.

    • status Required / integer

      original HTTP error code, should be consistent with the response HTTP code

      Minimum value is 100, maximum value is 599.

    • type Required / string

      classification of the error type, lower case with underscore eg validation_failure

    • message string

      descriptive error message for debugging

    • moreInfo string(uri)

      link to documentation to investigate further and finding support

    • details array[object]

      list of problems causing this error

      • field string

        a bean notation expression specifying the element in request data causing the error, eg product.variants[3].name, this can be empty if violation was not field specific

      • type Required / string

        classification of the error detail type, lower case with underscore eg missing_value, this value must be always interpreted in context of the general error type.

      • message string

        descriptive error detail message for debugging

      • moreInfo string(uri)

        link to documentation to investigate further and finding support for error detail

  • 409 object

    Denotes that another account with the specified new-email already exists.

    • status Required / integer

      original HTTP error code, should be consistent with the response HTTP code

      Minimum value is 100, maximum value is 599.

    • type Required / string

      classification of the error type, lower case with underscore eg validation_failure

    • message string

      descriptive error message for debugging

    • moreInfo string(uri)

      link to documentation to investigate further and finding support

    • details array[object]

      list of problems causing this error

      • field string

        a bean notation expression specifying the element in request data causing the error, eg product.variants[3].name, this can be empty if violation was not field specific

      • type Required / string

        classification of the error detail type, lower case with underscore eg missing_value, this value must be always interpreted in context of the general error type.

      • message string

        descriptive error detail message for debugging

      • moreInfo string(uri)

        link to documentation to investigate further and finding support for error detail

POST /{tenant}/me/accounts/internal/email/change/confirm
$ curl \
 -X POST https://api.emporix.io/customer/{tenant}/me/accounts/internal/email/change/confirm \
 -H "Content-Type: application/json" \
 -H "authorization: string" \
 -d '{"token":"aCd35CzsAhKt6mKcfCVef54YvfdsfbewFaCd35CzsAhKt6mKcfCVef54YvfdsfbA"}'
Request payload example
# Headers
authorization: string

# Payload
{
  "token": "aCd35CzsAhKt6mKcfCVef54YvfdsfbewFaCd35CzsAhKt6mKcfCVef54YvfdsfbA"
}
Response example (400)
{
  "status": 400,
  "message": "There are validation problems, see details section for more information",
  "type": "validation_violation",
  "details": [
    {
      "field": "tenant",
      "message": "size must be between 2 and 16",
      "type": "invalid_header"
    }
  ]
}
Response example (409)
{
  "status": 42,
  "type": "string",
  "message": "string",
  "moreInfo": "https://example.com",
  "details": [
    {
      "field": "string",
      "type": "string",
      "message": "string",
      "moreInfo": "https://example.com"
    }
  ]
}

Password

Request for password reset token using email id

Request for password reset token using email id.

Does not require any specific scope.

Headers
  • authorization Required / string

    Bearer token

Path parameters
  • tenant Required / string

    Name of the tenant.

    Note: Name of the tenant is always written in lowercase.'

Body
  • email Required / string
Responses
  • 204

    Request is valid and successful

  • 400 object

    Request syntactically incorrect. Any details will be provided within the response payload.

    • status Required / integer

      original HTTP error code, should be consistent with the response HTTP code

      Minimum value is 100, maximum value is 599.

    • type Required / string

      classification of the error type, lower case with underscore eg validation_failure

    • message string

      descriptive error message for debugging

    • moreInfo string(uri)

      link to documentation to investigate further and finding support

    • details array[object]

      list of problems causing this error

      • field string

        a bean notation expression specifying the element in request data causing the error, eg product.variants[3].name, this can be empty if violation was not field specific

      • type Required / string

        classification of the error detail type, lower case with underscore eg missing_value, this value must be always interpreted in context of the general error type.

      • message string

        descriptive error detail message for debugging

      • moreInfo string(uri)

        link to documentation to investigate further and finding support for error detail

  • 404 object

    Account with provided email address does not exist.

    • status Required / integer

      original HTTP error code, should be consistent with the response HTTP code

      Minimum value is 100, maximum value is 599.

    • type Required / string

      classification of the error type, lower case with underscore eg validation_failure

    • message string

      descriptive error message for debugging

    • moreInfo string(uri)

      link to documentation to investigate further and finding support

    • details array[object]

      list of problems causing this error

      • field string

        a bean notation expression specifying the element in request data causing the error, eg product.variants[3].name, this can be empty if violation was not field specific

      • type Required / string

        classification of the error detail type, lower case with underscore eg missing_value, this value must be always interpreted in context of the general error type.

      • message string

        descriptive error detail message for debugging

      • moreInfo string(uri)

        link to documentation to investigate further and finding support for error detail

POST /{tenant}/password/reset
$ curl \
 -X POST https://api.emporix.io/customer/{tenant}/password/reset \
 -H "Content-Type: application/json" \
 -H "authorization: string" \
 -d '{"email":"john.doe@emporix.com"}'
Request payload example
# Headers
authorization: string

# Payload
{
  "email": "john.doe@emporix.com"
}
Response example (400)
{
  "status": 400,
  "message": "There are validation problems, see details section for more information",
  "type": "validation_violation",
  "details": [
    {
      "field": "tenant",
      "message": "must be between 2 and 16 characters",
      "type": "invalid_header"
    }
  ]
}
Response example (404)
{
  "status": 42,
  "type": "string",
  "message": "string",
  "moreInfo": "https://example.com",
  "details": [
    {
      "field": "string",
      "type": "string",
      "message": "string",
      "moreInfo": "https://example.com"
    }
  ]
}

Update password using token Does not require any specific scope

Update password using token

Does not require any specific scope.

Headers
  • authorization Required / string

    Bearer token

Path parameters
  • tenant Required / string

    Name of the tenant.

    Note: Name of the tenant is always written in lowercase.'

Body
  • token Required / string

    Password reset token, that was sent via email

  • password Required / string

    New password to be set

Responses
  • 204

    Password updated successfully

  • 400 object

    Request syntactically incorrect. Any details will be provided within the response payload.

    • status Required / integer

      original HTTP error code, should be consistent with the response HTTP code

      Minimum value is 100, maximum value is 599.

    • type Required / string

      classification of the error type, lower case with underscore eg validation_failure

    • message string

      descriptive error message for debugging

    • moreInfo string(uri)

      link to documentation to investigate further and finding support

    • details array[object]

      list of problems causing this error

      • field string

        a bean notation expression specifying the element in request data causing the error, eg product.variants[3].name, this can be empty if violation was not field specific

      • type Required / string

        classification of the error detail type, lower case with underscore eg missing_value, this value must be always interpreted in context of the general error type.

      • message string

        descriptive error detail message for debugging

      • moreInfo string(uri)

        link to documentation to investigate further and finding support for error detail

POST /{tenant}/password/reset/update
$ curl \
 -X POST https://api.emporix.io/customer/{tenant}/password/reset/update \
 -H "Content-Type: application/json" \
 -H "authorization: string" \
 -d '{"token":"NTKPlV2QzXXyle1f5QA63gsnJCyWN843Ucc4TiMywWsgAQZkSdaz4wmotJ5LUq3X","password":"New password to be set"}'
Request payload example
# Headers
authorization: string

# Payload
{
  "token": "NTKPlV2QzXXyle1f5QA63gsnJCyWN843Ucc4TiMywWsgAQZkSdaz4wmotJ5LUq3X",
  "password": "New password to be set"
}
Response example (400)
{
  "status": 400,
  "message": "There are validation problems, see details section for more information",
  "type": "validation_violation",
  "details": [
    {
      "field": "tenant",
      "message": "must be between 2 and 16 characters",
      "type": "invalid_header"
    }
  ]
}

Change password using old password to authorize password update

Change password using old password to authorize password update.

Requires scope customer.customer_edit_profile.

Headers
  • authorization Required / string

    Bearer token

Path parameters
  • tenant Required / string

    Name of the tenant.

    Note: Name of the tenant is always written in lowercase.'

Body
  • email string

    Customer's email

  • currentPassword Required / string

    Current valid password

  • newPassword Required / string

    New password to be set

Responses
  • 204 object

    Password successfully updated

    • status Required / integer

      original HTTP error code, should be consistent with the response HTTP code

      Minimum value is 100, maximum value is 599.

    • type Required / string

      classification of the error type, lower case with underscore eg validation_failure

    • message string

      descriptive error message for debugging

    • moreInfo string(uri)

      link to documentation to investigate further and finding support

    • details array[object]

      list of problems causing this error

      • field string

        a bean notation expression specifying the element in request data causing the error, eg product.variants[3].name, this can be empty if violation was not field specific

      • type Required / string

        classification of the error detail type, lower case with underscore eg missing_value, this value must be always interpreted in context of the general error type.

      • message string

        descriptive error detail message for debugging

      • moreInfo string(uri)

        link to documentation to investigate further and finding support for error detail

  • 400 object

    Request syntactically incorrect. Any details will be provided within the response payload.

    • status Required / integer

      original HTTP error code, should be consistent with the response HTTP code

      Minimum value is 100, maximum value is 599.

    • type Required / string

      classification of the error type, lower case with underscore eg validation_failure

    • message string

      descriptive error message for debugging

    • moreInfo string(uri)

      link to documentation to investigate further and finding support

    • details array[object]

      list of problems causing this error

      • field string

        a bean notation expression specifying the element in request data causing the error, eg product.variants[3].name, this can be empty if violation was not field specific

      • type Required / string

        classification of the error detail type, lower case with underscore eg missing_value, this value must be always interpreted in context of the general error type.

      • message string

        descriptive error detail message for debugging

      • moreInfo string(uri)

        link to documentation to investigate further and finding support for error detail

  • 401 object

    Incorrect password has been provided.

    • status Required / integer

      original HTTP error code, should be consistent with the response HTTP code

      Minimum value is 100, maximum value is 599.

    • type Required / string

      classification of the error type, lower case with underscore eg validation_failure

    • message string

      descriptive error message for debugging

    • moreInfo string(uri)

      link to documentation to investigate further and finding support

    • details array[object]

      list of problems causing this error

      • field string

        a bean notation expression specifying the element in request data causing the error, eg product.variants[3].name, this can be empty if violation was not field specific

      • type Required / string

        classification of the error detail type, lower case with underscore eg missing_value, this value must be always interpreted in context of the general error type.

      • message string

        descriptive error detail message for debugging

      • moreInfo string(uri)

        link to documentation to investigate further and finding support for error detail

  • 403 object

    Given authorization scopes are not sufficient and do not match required scopes.

    • status Required / integer

      original HTTP error code, should be consistent with the response HTTP code

      Minimum value is 100, maximum value is 599.

    • type Required / string

      classification of the error type, lower case with underscore eg validation_failure

    • message string

      descriptive error message for debugging

    • moreInfo string(uri)

      link to documentation to investigate further and finding support

    • details array[object]

      list of problems causing this error

      • field string

        a bean notation expression specifying the element in request data causing the error, eg product.variants[3].name, this can be empty if violation was not field specific

      • type Required / string

        classification of the error detail type, lower case with underscore eg missing_value, this value must be always interpreted in context of the general error type.

      • message string

        descriptive error detail message for debugging

      • moreInfo string(uri)

        link to documentation to investigate further and finding support for error detail

POST /{tenant}/password/change
$ curl \
 -X POST https://api.emporix.io/customer/{tenant}/password/change \
 -H "Content-Type: application/json" \
 -H "authorization: string" \
 -d '{"email":"john.doe@emporix.com","currentPassword":"Current password","newPassword":"New password to be set"}'
Request payload example
# Headers
authorization: string

# Payload
{
  "email": "john.doe@emporix.com",
  "currentPassword": "Current password",
  "newPassword": "New password to be set"
}
Response example (204)
{
  "status": 42,
  "type": "string",
  "message": "string",
  "moreInfo": "https://example.com",
  "details": [
    {
      "field": "string",
      "type": "string",
      "message": "string",
      "moreInfo": "https://example.com"
    }
  ]
}
Response example (400)
{
  "status": 400,
  "message": "There are validation problems, see details section for more information",
  "type": "validation_violation",
  "details": [
    {
      "field": "tenant",
      "message": "must be between 2 and 16 characters",
      "type": "invalid_header"
    }
  ]
}
Response example (401)
{
  "status": 42,
  "type": "string",
  "message": "string",
  "moreInfo": "https://example.com",
  "details": [
    {
      "field": "string",
      "type": "string",
      "message": "string",
      "moreInfo": "https://example.com"
    }
  ]
}
Response example (403)
{
  "status": 403,
  "message": "Given request does not have required scopes. It is not authorized to perform this operation.",
  "type": "insufficient_permissions"
}

Refreshauthtoken

Obtain a new access token based on the annonymous token and refresh token

Obtain a new access token based on the annonymous token and refresh token.

Responses
  • 200 object

    Successful retrieval of new authentication token

    • accessToken Required / string
    • expiresIn Required / integer
    • refreshToken Required / string
    • refreshTokenExpiresIn Required / integer
  • 400 object

    Query parameter not provided

    • status Required / integer

      original HTTP error code, should be consistent with the response HTTP code

      Minimum value is 100, maximum value is 599.

    • type Required / string

      classification of the error type, lower case with underscore eg validation_failure

    • message string

      descriptive error message for debugging

    • moreInfo string(uri)

      link to documentation to investigate further and finding support

    • details array[object]

      list of problems causing this error

      • field string

        a bean notation expression specifying the element in request data causing the error, eg product.variants[3].name, this can be empty if violation was not field specific

      • type Required / string

        classification of the error detail type, lower case with underscore eg missing_value, this value must be always interpreted in context of the general error type.

      • message string

        descriptive error detail message for debugging

      • moreInfo string(uri)

        link to documentation to investigate further and finding support for error detail

  • 401 object

    Incorrect token has been provided.

    • fault object
      • faultstring string
      • detail object
        • errorcode string
      • Additional properties are NOT allowed
GET /{tenant}/refreshauthtoken
$ curl \
 -X GET https://api.emporix.io/customer/{tenant}/refreshauthtoken
Response example (200)
{
  "accessToken": "L7Ri1I1RAq3FJuRCy9vDgjB7NM4T",
  "expiresIn": 1799,
  "refreshToken": "P4HuyUX4OkH52B8VyXahcai1zIf2XNOi",
  "refreshTokenExpiresIn": 86342
}
Response example (400)
{
  "status": 400,
  "message": "refreshLoginToken.refreshToken: query parameter required.",
  "type": "validation_violation"
}
Response example (401)
{
  "faultstring": "Invalid Access Token",
  "errorcode": "keymanagement.service.invalid_access_token"
}

Root

Retrieves details of the given address of the current customer

Retrieves details of the given address of the current customer.

Requires scope customer.customerprofile_view.

Headers
  • authorization Required / string

    Bearer token

Path parameters
  • tenant Required / string

    Name of the tenant.

    Note: Name of the tenant is always written in lowercase.'

Responses
  • 200 object

    address successfully retrieved.

    • metadata object

      The mixins metadata for this address

      • mixins object
        • Additional properties: string(uri)
      • Additional properties are NOT allowed
    • id Required / string
    • contactName Required / string
    • companyName string
    • street string
    • streetNumber string
    • streetAppendix string
    • extraLine1 string
    • extraLine2 string
    • extraLine3 string
    • extraLine4 string
    • zipCode string
    • city string
    • country string
    • state string
    • contactPhone string
    • tags array[string]

      Values like: Billing / Shipping or any other custom tag

    • isDefault Required / boolean
    • mixins object

      Mixins stored in this Address

  • 400 object

    Request syntactically incorrect. Any details will be provided within the response payload.

    • status Required / integer

      original HTTP error code, should be consistent with the response HTTP code

      Minimum value is 100, maximum value is 599.

    • type Required / string

      classification of the error type, lower case with underscore eg validation_failure

    • message string

      descriptive error message for debugging

    • moreInfo string(uri)

      link to documentation to investigate further and finding support

    • details array[object]

      list of problems causing this error

      • field string

        a bean notation expression specifying the element in request data causing the error, eg product.variants[3].name, this can be empty if violation was not field specific

      • type Required / string

        classification of the error detail type, lower case with underscore eg missing_value, this value must be always interpreted in context of the general error type.

      • message string

        descriptive error detail message for debugging

      • moreInfo string(uri)

        link to documentation to investigate further and finding support for error detail

  • 403 object

    Access forbidden. The caller is not allowed to access this resource.

    • status Required / integer

      original HTTP error code, should be consistent with the response HTTP code

      Minimum value is 100, maximum value is 599.

    • type Required / string

      classification of the error type, lower case with underscore eg validation_failure

    • message string

      descriptive error message for debugging

    • moreInfo string(uri)

      link to documentation to investigate further and finding support

    • details array[object]

      list of problems causing this error

      • field string

        a bean notation expression specifying the element in request data causing the error, eg product.variants[3].name, this can be empty if violation was not field specific

      • type Required / string

        classification of the error detail type, lower case with underscore eg missing_value, this value must be always interpreted in context of the general error type.

      • message string

        descriptive error detail message for debugging

      • moreInfo string(uri)

        link to documentation to investigate further and finding support for error detail

  • 404 object

    The requested resource does not exist.

    • status Required / integer

      original HTTP error code, should be consistent with the response HTTP code

      Minimum value is 100, maximum value is 599.

    • type Required / string

      classification of the error type, lower case with underscore eg validation_failure

    • message string

      descriptive error message for debugging

    • moreInfo string(uri)

      link to documentation to investigate further and finding support

    • details array[object]

      list of problems causing this error

      • field string

        a bean notation expression specifying the element in request data causing the error, eg product.variants[3].name, this can be empty if violation was not field specific

      • type Required / string

        classification of the error detail type, lower case with underscore eg missing_value, this value must be always interpreted in context of the general error type.

      • message string

        descriptive error detail message for debugging

      • moreInfo string(uri)

        link to documentation to investigate further and finding support for error detail

  • 500 object

    Some server side error occurred.

    • status Required / integer

      original HTTP error code, should be consistent with the response HTTP code

      Minimum value is 100, maximum value is 599.

    • type Required / string

      classification of the error type, lower case with underscore eg validation_failure

    • message string

      descriptive error message for debugging

    • moreInfo string(uri)

      link to documentation to investigate further and finding support

    • details array[object]

      list of problems causing this error

      • field string

        a bean notation expression specifying the element in request data causing the error, eg product.variants[3].name, this can be empty if violation was not field specific

      • type Required / string

        classification of the error detail type, lower case with underscore eg missing_value, this value must be always interpreted in context of the general error type.

      • message string

        descriptive error detail message for debugging

      • moreInfo string(uri)

        link to documentation to investigate further and finding support for error detail

GET /{tenant}/me/addresses/{addressId}
$ curl \
 -X GET https://api.emporix.io/customer/{tenant}/me/addresses/{addressId} \
 -H "authorization: string"
Response example (200)
{
  "id": "53426fc4e4b08806bb0d3ecc",
  "contactName": "Joe Smith",
  "companyName": "Cargo Services Airfreight",
  "street": "Cheng Xiang Zhen Guan Tang Lu",
  "streetNumber": "1031",
  "extraLine1": "No. 2058",
  "extraLine2": "Suzhou City",
  "zipCode": "201202",
  "city": "Taicang City",
  "state": "Jiangsu Province",
  "country": "CN",
  "contactPhone": "+86 182 9349 4663",
  "isDefault": "false",
  "tags": [
    "shipping",
    "billing"
  ],
  "metadata": {
    "mixins": {
      "secondaryContactPhone": "https://${api.proxy}/hybris/schema/v1/kiwistest/contact-number.json"
    }
  },
  "mixins": {
    "secondaryContactPhone": {
      "number": "+86 334 0033 9934"
    }
  }
}
Response example (400)
{
  "status": 400,
  "message": "There are validation problems, see details section for more information",
  "type": "validation_violation",
  "details": [
    {
      "field": "tenant",
      "message": "must be between 2 and 16 characters",
      "type": "invalid_header"
    }
  ]
}
Response example (403)
{
  "status": 403,
  "message": "Not allowed to access this resource",
  "type": "insufficient_permissions"
}
Response example (404)
{
  "status": 404,
  "message": "The requested URI does not map to a single element resource.",
  "type": "element_resource_non_existing"
}
Response example (500)
{
  "status": 500,
  "message": "Something went wrong while processing the request. Please contact the administrator.",
  "type": "internal_service_error"
}

Updates the given address of the current customer

Updates the given address of the current customer.

Requires scope customer.customerprofile_edit.

Deprecated

Headers
  • authorization Required / string

    Bearer token

Path parameters
  • tenant Required / string

    Name of the tenant.

    Note: Name of the tenant is always written in lowercase.'

Body
  • metadata object

    The mixins metadata for this address

    • mixins object
      • Additional properties: string(uri)
    • Additional properties are NOT allowed
  • contactName Required / string
  • companyName string
  • street string
  • streetNumber string
  • streetAppendix string
  • extraLine1 string
  • extraLine2 string
  • extraLine3 string
  • extraLine4 string
  • zipCode string
  • city string
  • country string
  • state string
  • contactPhone string
  • isDefault Required / boolean
  • tags array[string]

    Values like: Billing / Shipping or any other custom tag

  • mixins object

    Mixins stored in this Address

Responses
  • 400 object

    Request syntactically incorrect. Any details will be provided within the response payload.

    • status Required / integer

      original HTTP error code, should be consistent with the response HTTP code

      Minimum value is 100, maximum value is 599.

    • type Required / string

      classification of the error type, lower case with underscore eg validation_failure

    • message string

      descriptive error message for debugging

    • moreInfo string(uri)

      link to documentation to investigate further and finding support

    • details array[object]

      list of problems causing this error

      • field string

        a bean notation expression specifying the element in request data causing the error, eg product.variants[3].name, this can be empty if violation was not field specific

      • type Required / string

        classification of the error detail type, lower case with underscore eg missing_value, this value must be always interpreted in context of the general error type.

      • message string

        descriptive error detail message for debugging

      • moreInfo string(uri)

        link to documentation to investigate further and finding support for error detail

  • 403 object

    Access forbidden. The caller is not allowed to access this resource.

    • status Required / integer

      original HTTP error code, should be consistent with the response HTTP code

      Minimum value is 100, maximum value is 599.

    • type Required / string

      classification of the error type, lower case with underscore eg validation_failure

    • message string

      descriptive error message for debugging

    • moreInfo string(uri)

      link to documentation to investigate further and finding support

    • details array[object]

      list of problems causing this error

      • field string

        a bean notation expression specifying the element in request data causing the error, eg product.variants[3].name, this can be empty if violation was not field specific

      • type Required / string

        classification of the error detail type, lower case with underscore eg missing_value, this value must be always interpreted in context of the general error type.

      • message string

        descriptive error detail message for debugging

      • moreInfo string(uri)

        link to documentation to investigate further and finding support for error detail

  • 404 object

    The requested resource does not exist.

    • status Required / integer

      original HTTP error code, should be consistent with the response HTTP code

      Minimum value is 100, maximum value is 599.

    • type Required / string

      classification of the error type, lower case with underscore eg validation_failure

    • message string

      descriptive error message for debugging

    • moreInfo string(uri)

      link to documentation to investigate further and finding support

    • details array[object]

      list of problems causing this error

      • field string

        a bean notation expression specifying the element in request data causing the error, eg product.variants[3].name, this can be empty if violation was not field specific

      • type Required / string

        classification of the error detail type, lower case with underscore eg missing_value, this value must be always interpreted in context of the general error type.

      • message string

        descriptive error detail message for debugging

      • moreInfo string(uri)

        link to documentation to investigate further and finding support for error detail

  • 409 object

    Creation failed because there was a conflict with another resource. Any details will be provided within the response payload.

    • status Required / integer

      original HTTP error code, should be consistent with the response HTTP code

      Minimum value is 100, maximum value is 599.

    • type Required / string

      classification of the error type, lower case with underscore eg validation_failure

    • message string

      descriptive error message for debugging

    • moreInfo string(uri)

      link to documentation to investigate further and finding support

    • details array[object]

      list of problems causing this error

      • field string

        a bean notation expression specifying the element in request data causing the error, eg product.variants[3].name, this can be empty if violation was not field specific

      • type Required / string

        classification of the error detail type, lower case with underscore eg missing_value, this value must be always interpreted in context of the general error type.

      • message string

        descriptive error detail message for debugging

      • moreInfo string(uri)

        link to documentation to investigate further and finding support for error detail

  • 500 object

    Some server side error occurred.

    • status Required / integer

      original HTTP error code, should be consistent with the response HTTP code

      Minimum value is 100, maximum value is 599.

    • type