Skip to content

Documentation CustomerService (1.1)

The Customers namespace has Entities and Operations concerned with Customer and Company management.

Download OpenAPI description
Languages
Servers

https://demo.storm.io/api/1.1/

Operations
Operations
Operations
Operations
Operations

Request

Activates an inactive Customer. If the activation is made after X days, where X is the value set for ClientSetting CullCustomerDayCount, the Customer data will be lost.

Query
customerIdinteger(int32)required

The internal Id of the Customer to activate.

activatedByinteger(int32)required

Account internal id of current user. Do not use default value.

curl -i -X POST \
  'https://demo.storm.io/api/1.1/CustomerService.svc/rest/ActivateCustomer?customerId=0&activatedBy=0'

Responses

Success

Body

Create a customer [Obsolete("Use CreateCustomer3")]

Request

See CreateCustomer3 for details. CreateCustomer calls CreateCustomer3 with an empty password and true as doSendMail.

Query
createdBystring

Account internal id of current user. If none is supplied the default will be used.

cultureCodestring

Specifies in which language to display culture specific information. If none is supplied, value is resolved from Application.

Bodyrequired

The Customer to create. If an Account is specified it will be created as well. Customers can also be created with or without Companies. If a supplied Company does not have an Id specified it is considered new and will be created as well.

Idinteger or null(int32)

The internal Storm Id of the Customer. When creating a new Customer leave this blank as Storm will generate the Id.

Keystring(guid)

The system wide unique Key of the Customer.

Codestring

The external code. Usually the id in the erp system. MaxLength: 50.

Emailstring

The Email address of the Customer. MaxLength: 255.

SSNstring

The social security number of the Customer. Used to identify the Customer for some payment methods. MaxLength: 50.

FirstNamestring

The FirstName of the Customer. MaxLength: 50.

LastNamestring

The LastName of the Customer. MaxLength: 50.

Phonestring

The PhoneNumber of the Customer. MaxLength: 50.

CellPhonestring

The CellPhone number of the Customer. MaxLength: 50.

ReferIdinteger or null(int32)

Used to tag a Customer with some external id.

ReferUrlstring

Used to tag a Customer with an incoming URL. MaxLength: 255.

Accountobject(Account)(Account)
CompaniesArray of objects(Company)(Company)

A list of Companies. A Customer can have many Companies. The first will be used as default. In the Checkout process just pass in one Company if any is to be used or the first will be used as default.

DeliveryAddressesArray of objects(Address)(Address)

A list of delivery Addresses for the Customer. When needed the first address in the list will be used. So it is vital in the checkout process to either sort them or just supply one delivery address. Company addresses will override Customer addresses if both exists in the Checkout process.

InvoiceAddressobject(Address)(Address)
FlagsArray of objects(Flag)(Flag)

A list of Flags for the Customer. See Flag for information about flags. Flags can be used in Promotions or otherwise to provide custom handling of specific Customers.

UseInvoiceAddressAsDeliveryAddressboolean

Can be use when updating or inserting addresses on Customer. If set to true the invoice address will be used as a delivery address as well. Then just an invoice address needs to be passed in. The deliveryAddress will be ignored. If set to false both invoice address and delivery address must be specified.

InfoArray of objects(IdValue)(IdValue)

Contains a list of id-value pairs specific to the client for this customer. Use ApplicationService.ListCustomerInfoTypes for id lookup.

PricelistIdsArray of integers(int32)

Contains a list of priceList ids valid for this customer. It will be empty if no priceLists exist. It can be used to check products lists if they are from a customer specific priceList. No need to pass this into List-methods since they are considered any way in the methods. This property should be considered as ReadOnly as priceLists are maintained else where.

CrmIdstring

Used to save the Customers external id from a crm-system MaxLength: 50.

IsActiveboolean or null

Specifies if the Customer is active or not.

Createdstring or null(date-time)

When the customer was created.

Updatedstring or null(date-time)

When the customer was last updated.

curl -i -X POST \
  https://demo.storm.io/api/1.1/CustomerService.svc/rest/CreateCustomer \
  -H 'Content-Type: application/json' \
  -d '{
    "Id": 0,
    "Key": "string",
    "Code": "string",
    "Email": "string",
    "SSN": "string",
    "FirstName": "string",
    "LastName": "string",
    "Phone": "string",
    "CellPhone": "string",
    "ReferId": 0,
    "ReferUrl": "string",
    "Account": {
      "Id": 0,
      "Key": "string",
      "LoginName": "string",
      "Name": "string",
      "Roles": [
        0
      ],
      "Authorizations": [
        {
          "Id": 0,
          "Value": "string",
          "Code": "string"
        }
      ],
      "IsActive": true
    },
    "Companies": [
      {
        "Id": 0,
        "Key": "string",
        "Code": "string",
        "Name": "string",
        "OrgNo": "string",
        "Phone": "string",
        "ReferId": 0,
        "ReferUrl": "string",
        "DeliveryAddresses": [
          {
            "Id": 0,
            "CareOf": "string",
            "Line1": "string",
            "Line2": "string",
            "Zip": "string",
            "City": "string",
            "CountryId": 0,
            "Country": "string",
            "Region": "string",
            "IsValidated": true,
            "GlobalLocationNo": "string",
            "ShippingPhoneNumber": "string"
          }
        ],
        "InvoiceAddress": {
          "Id": 0,
          "CareOf": "string",
          "Line1": "string",
          "Line2": "string",
          "Zip": "string",
          "City": "string",
          "CountryId": 0,
          "Country": "string",
          "Region": "string",
          "IsValidated": true,
          "GlobalLocationNo": "string",
          "ShippingPhoneNumber": "string"
        },
        "UseInvoiceAddressAsDeliveryAddress": true,
        "Info": [
          {
            "Id": 0,
            "Value": "string",
            "Code": "string"
          }
        ],
        "PricelistIds": [
          0
        ],
        "ParentId": 0,
        "DeliveryMethodIds": [
          0
        ],
        "PaymentMethodIds": [
          0
        ],
        "Email": "string",
        "Flags": [
          {
            "Id": 0,
            "Name": "string",
            "Group": 0,
            "IsSelected": true
          }
        ],
        "VatNo": "string"
      }
    ],
    "DeliveryAddresses": [
      {
        "Id": 0,
        "CareOf": "string",
        "Line1": "string",
        "Line2": "string",
        "Zip": "string",
        "City": "string",
        "CountryId": 0,
        "Country": "string",
        "Region": "string",
        "IsValidated": true,
        "GlobalLocationNo": "string",
        "ShippingPhoneNumber": "string"
      }
    ],
    "InvoiceAddress": {
      "Id": 0,
      "CareOf": "string",
      "Line1": "string",
      "Line2": "string",
      "Zip": "string",
      "City": "string",
      "CountryId": 0,
      "Country": "string",
      "Region": "string",
      "IsValidated": true,
      "GlobalLocationNo": "string",
      "ShippingPhoneNumber": "string"
    },
    "Flags": [
      {
        "Id": 0,
        "Name": "string",
        "Group": 0,
        "IsSelected": true
      }
    ],
    "UseInvoiceAddressAsDeliveryAddress": true,
    "Info": [
      {
        "Id": 0,
        "Value": "string",
        "Code": "string"
      }
    ],
    "PricelistIds": [
      0
    ],
    "CrmId": "string",
    "IsActive": true,
    "Created": "2019-08-24T14:15:22Z",
    "Updated": "2019-08-24T14:15:22Z"
  }'

Responses

Success

Body
Idinteger or null(int32)

The internal Storm Id of the Customer. When creating a new Customer leave this blank as Storm will generate the Id.

Keystring(guid)

The system wide unique Key of the Customer.

Codestring

The external code. Usually the id in the erp system. MaxLength: 50.

Emailstring

The Email address of the Customer. MaxLength: 255.

SSNstring

The social security number of the Customer. Used to identify the Customer for some payment methods. MaxLength: 50.

FirstNamestring

The FirstName of the Customer. MaxLength: 50.

LastNamestring

The LastName of the Customer. MaxLength: 50.

Phonestring

The PhoneNumber of the Customer. MaxLength: 50.

CellPhonestring

The CellPhone number of the Customer. MaxLength: 50.

ReferIdinteger or null(int32)

Used to tag a Customer with some external id.

ReferUrlstring

Used to tag a Customer with an incoming URL. MaxLength: 255.

Accountobject(Account)(Account)
CompaniesArray of objects(Company)(Company)

A list of Companies. A Customer can have many Companies. The first will be used as default. In the Checkout process just pass in one Company if any is to be used or the first will be used as default.

DeliveryAddressesArray of objects(Address)(Address)

A list of delivery Addresses for the Customer. When needed the first address in the list will be used. So it is vital in the checkout process to either sort them or just supply one delivery address. Company addresses will override Customer addresses if both exists in the Checkout process.

InvoiceAddressobject(Address)(Address)
FlagsArray of objects(Flag)(Flag)

A list of Flags for the Customer. See Flag for information about flags. Flags can be used in Promotions or otherwise to provide custom handling of specific Customers.

UseInvoiceAddressAsDeliveryAddressboolean

Can be use when updating or inserting addresses on Customer. If set to true the invoice address will be used as a delivery address as well. Then just an invoice address needs to be passed in. The deliveryAddress will be ignored. If set to false both invoice address and delivery address must be specified.

InfoArray of objects(IdValue)(IdValue)

Contains a list of id-value pairs specific to the client for this customer. Use ApplicationService.ListCustomerInfoTypes for id lookup.

PricelistIdsArray of integers(int32)

Contains a list of priceList ids valid for this customer. It will be empty if no priceLists exist. It can be used to check products lists if they are from a customer specific priceList. No need to pass this into List-methods since they are considered any way in the methods. This property should be considered as ReadOnly as priceLists are maintained else where.

CrmIdstring

Used to save the Customers external id from a crm-system MaxLength: 50.

IsActiveboolean or null

Specifies if the Customer is active or not.

Createdstring or null(date-time)

When the customer was created.

Updatedstring or null(date-time)

When the customer was last updated.

Response
{ "Id": 0, "Key": "string", "Code": "string", "Email": "string", "SSN": "string", "FirstName": "string", "LastName": "string", "Phone": "string", "CellPhone": "string", "ReferId": 0, "ReferUrl": "string", "Account": { "Id": 0, "Key": "string", "LoginName": "string", "Name": "string", "Roles": [], "Authorizations": [], "IsActive": true }, "Companies": [ {} ], "DeliveryAddresses": [ {} ], "InvoiceAddress": { "Id": 0, "CareOf": "string", "Line1": "string", "Line2": "string", "Zip": "string", "City": "string", "CountryId": 0, "Country": "string", "Region": "string", "IsValidated": true, "GlobalLocationNo": "string", "ShippingPhoneNumber": "string" }, "Flags": [ {} ], "UseInvoiceAddressAsDeliveryAddress": true, "Info": [ {} ], "PricelistIds": [ 0 ], "CrmId": "string", "IsActive": true, "Created": "2019-08-24T14:15:22Z", "Updated": "2019-08-24T14:15:22Z" }

Create a customer (v2) [Obsolete("Use CreateCustomer3")]

Request

See CreateCustomer3 for details. CreateCustomer2 calls CreateCustomer3 with true as doSendMail.

Query
passwordstring

An application generated password used if an Account is created. If none is supplied it will be generated.

createdBystring

Account internal id of current user. If none is supplied the default will be used.

cultureCodestring

Specifies in which language to display culture specific information. If none is supplied, value is resolved from Application.

Bodyrequired

The Customer to create. If an Account is specified it will be created as well. Customers can also be created with or without Companies. If a supplied Company does not have an Id specified it is considered new and will be created as well.

Idinteger or null(int32)

The internal Storm Id of the Customer. When creating a new Customer leave this blank as Storm will generate the Id.

Keystring(guid)

The system wide unique Key of the Customer.

Codestring

The external code. Usually the id in the erp system. MaxLength: 50.

Emailstring

The Email address of the Customer. MaxLength: 255.

SSNstring

The social security number of the Customer. Used to identify the Customer for some payment methods. MaxLength: 50.

FirstNamestring

The FirstName of the Customer. MaxLength: 50.

LastNamestring

The LastName of the Customer. MaxLength: 50.

Phonestring

The PhoneNumber of the Customer. MaxLength: 50.

CellPhonestring

The CellPhone number of the Customer. MaxLength: 50.

ReferIdinteger or null(int32)

Used to tag a Customer with some external id.

ReferUrlstring

Used to tag a Customer with an incoming URL. MaxLength: 255.

Accountobject(Account)(Account)
CompaniesArray of objects(Company)(Company)

A list of Companies. A Customer can have many Companies. The first will be used as default. In the Checkout process just pass in one Company if any is to be used or the first will be used as default.

DeliveryAddressesArray of objects(Address)(Address)

A list of delivery Addresses for the Customer. When needed the first address in the list will be used. So it is vital in the checkout process to either sort them or just supply one delivery address. Company addresses will override Customer addresses if both exists in the Checkout process.

InvoiceAddressobject(Address)(Address)
FlagsArray of objects(Flag)(Flag)

A list of Flags for the Customer. See Flag for information about flags. Flags can be used in Promotions or otherwise to provide custom handling of specific Customers.

UseInvoiceAddressAsDeliveryAddressboolean

Can be use when updating or inserting addresses on Customer. If set to true the invoice address will be used as a delivery address as well. Then just an invoice address needs to be passed in. The deliveryAddress will be ignored. If set to false both invoice address and delivery address must be specified.

InfoArray of objects(IdValue)(IdValue)

Contains a list of id-value pairs specific to the client for this customer. Use ApplicationService.ListCustomerInfoTypes for id lookup.

PricelistIdsArray of integers(int32)

Contains a list of priceList ids valid for this customer. It will be empty if no priceLists exist. It can be used to check products lists if they are from a customer specific priceList. No need to pass this into List-methods since they are considered any way in the methods. This property should be considered as ReadOnly as priceLists are maintained else where.

CrmIdstring

Used to save the Customers external id from a crm-system MaxLength: 50.

IsActiveboolean or null

Specifies if the Customer is active or not.

Createdstring or null(date-time)

When the customer was created.

Updatedstring or null(date-time)

When the customer was last updated.

curl -i -X POST \
  https://demo.storm.io/api/1.1/CustomerService.svc/rest/CreateCustomer2 \
  -H 'Content-Type: application/json' \
  -d '{
    "Id": 0,
    "Key": "string",
    "Code": "string",
    "Email": "string",
    "SSN": "string",
    "FirstName": "string",
    "LastName": "string",
    "Phone": "string",
    "CellPhone": "string",
    "ReferId": 0,
    "ReferUrl": "string",
    "Account": {
      "Id": 0,
      "Key": "string",
      "LoginName": "string",
      "Name": "string",
      "Roles": [
        0
      ],
      "Authorizations": [
        {
          "Id": 0,
          "Value": "string",
          "Code": "string"
        }
      ],
      "IsActive": true
    },
    "Companies": [
      {
        "Id": 0,
        "Key": "string",
        "Code": "string",
        "Name": "string",
        "OrgNo": "string",
        "Phone": "string",
        "ReferId": 0,
        "ReferUrl": "string",
        "DeliveryAddresses": [
          {
            "Id": 0,
            "CareOf": "string",
            "Line1": "string",
            "Line2": "string",
            "Zip": "string",
            "City": "string",
            "CountryId": 0,
            "Country": "string",
            "Region": "string",
            "IsValidated": true,
            "GlobalLocationNo": "string",
            "ShippingPhoneNumber": "string"
          }
        ],
        "InvoiceAddress": {
          "Id": 0,
          "CareOf": "string",
          "Line1": "string",
          "Line2": "string",
          "Zip": "string",
          "City": "string",
          "CountryId": 0,
          "Country": "string",
          "Region": "string",
          "IsValidated": true,
          "GlobalLocationNo": "string",
          "ShippingPhoneNumber": "string"
        },
        "UseInvoiceAddressAsDeliveryAddress": true,
        "Info": [
          {
            "Id": 0,
            "Value": "string",
            "Code": "string"
          }
        ],
        "PricelistIds": [
          0
        ],
        "ParentId": 0,
        "DeliveryMethodIds": [
          0
        ],
        "PaymentMethodIds": [
          0
        ],
        "Email": "string",
        "Flags": [
          {
            "Id": 0,
            "Name": "string",
            "Group": 0,
            "IsSelected": true
          }
        ],
        "VatNo": "string"
      }
    ],
    "DeliveryAddresses": [
      {
        "Id": 0,
        "CareOf": "string",
        "Line1": "string",
        "Line2": "string",
        "Zip": "string",
        "City": "string",
        "CountryId": 0,
        "Country": "string",
        "Region": "string",
        "IsValidated": true,
        "GlobalLocationNo": "string",
        "ShippingPhoneNumber": "string"
      }
    ],
    "InvoiceAddress": {
      "Id": 0,
      "CareOf": "string",
      "Line1": "string",
      "Line2": "string",
      "Zip": "string",
      "City": "string",
      "CountryId": 0,
      "Country": "string",
      "Region": "string",
      "IsValidated": true,
      "GlobalLocationNo": "string",
      "ShippingPhoneNumber": "string"
    },
    "Flags": [
      {
        "Id": 0,
        "Name": "string",
        "Group": 0,
        "IsSelected": true
      }
    ],
    "UseInvoiceAddressAsDeliveryAddress": true,
    "Info": [
      {
        "Id": 0,
        "Value": "string",
        "Code": "string"
      }
    ],
    "PricelistIds": [
      0
    ],
    "CrmId": "string",
    "IsActive": true,
    "Created": "2019-08-24T14:15:22Z",
    "Updated": "2019-08-24T14:15:22Z"
  }'

Responses

Success

Body
Idinteger or null(int32)

The internal Storm Id of the Customer. When creating a new Customer leave this blank as Storm will generate the Id.

Keystring(guid)

The system wide unique Key of the Customer.

Codestring

The external code. Usually the id in the erp system. MaxLength: 50.

Emailstring

The Email address of the Customer. MaxLength: 255.

SSNstring

The social security number of the Customer. Used to identify the Customer for some payment methods. MaxLength: 50.

FirstNamestring

The FirstName of the Customer. MaxLength: 50.

LastNamestring

The LastName of the Customer. MaxLength: 50.

Phonestring

The PhoneNumber of the Customer. MaxLength: 50.

CellPhonestring

The CellPhone number of the Customer. MaxLength: 50.

ReferIdinteger or null(int32)

Used to tag a Customer with some external id.

ReferUrlstring

Used to tag a Customer with an incoming URL. MaxLength: 255.

Accountobject(Account)(Account)
CompaniesArray of objects(Company)(Company)

A list of Companies. A Customer can have many Companies. The first will be used as default. In the Checkout process just pass in one Company if any is to be used or the first will be used as default.

DeliveryAddressesArray of objects(Address)(Address)

A list of delivery Addresses for the Customer. When needed the first address in the list will be used. So it is vital in the checkout process to either sort them or just supply one delivery address. Company addresses will override Customer addresses if both exists in the Checkout process.

InvoiceAddressobject(Address)(Address)
FlagsArray of objects(Flag)(Flag)

A list of Flags for the Customer. See Flag for information about flags. Flags can be used in Promotions or otherwise to provide custom handling of specific Customers.

UseInvoiceAddressAsDeliveryAddressboolean

Can be use when updating or inserting addresses on Customer. If set to true the invoice address will be used as a delivery address as well. Then just an invoice address needs to be passed in. The deliveryAddress will be ignored. If set to false both invoice address and delivery address must be specified.

InfoArray of objects(IdValue)(IdValue)

Contains a list of id-value pairs specific to the client for this customer. Use ApplicationService.ListCustomerInfoTypes for id lookup.

PricelistIdsArray of integers(int32)

Contains a list of priceList ids valid for this customer. It will be empty if no priceLists exist. It can be used to check products lists if they are from a customer specific priceList. No need to pass this into List-methods since they are considered any way in the methods. This property should be considered as ReadOnly as priceLists are maintained else where.

CrmIdstring

Used to save the Customers external id from a crm-system MaxLength: 50.

IsActiveboolean or null

Specifies if the Customer is active or not.

Createdstring or null(date-time)

When the customer was created.

Updatedstring or null(date-time)

When the customer was last updated.

Response
{ "Id": 0, "Key": "string", "Code": "string", "Email": "string", "SSN": "string", "FirstName": "string", "LastName": "string", "Phone": "string", "CellPhone": "string", "ReferId": 0, "ReferUrl": "string", "Account": { "Id": 0, "Key": "string", "LoginName": "string", "Name": "string", "Roles": [], "Authorizations": [], "IsActive": true }, "Companies": [ {} ], "DeliveryAddresses": [ {} ], "InvoiceAddress": { "Id": 0, "CareOf": "string", "Line1": "string", "Line2": "string", "Zip": "string", "City": "string", "CountryId": 0, "Country": "string", "Region": "string", "IsValidated": true, "GlobalLocationNo": "string", "ShippingPhoneNumber": "string" }, "Flags": [ {} ], "UseInvoiceAddressAsDeliveryAddress": true, "Info": [ {} ], "PricelistIds": [ 0 ], "CrmId": "string", "IsActive": true, "Created": "2019-08-24T14:15:22Z", "Updated": "2019-08-24T14:15:22Z" }
Operations
Operations
Operations