netsuite 0.7.1 → 0.7.2
Sign up to get free protection for your applications and to get access to all the features.
- data/Gemfile +4 -0
- data/lib/netsuite.rb +6 -2
- data/lib/netsuite/configuration.rb +2 -8
- data/lib/netsuite/records/base_ref_list.rb +3 -19
- data/lib/netsuite/records/billing_schedule_milestone_list.rb +4 -23
- data/lib/netsuite/records/billing_schedule_recurrence_list.rb +4 -23
- data/lib/netsuite/records/bin_number_list.rb +5 -23
- data/lib/netsuite/records/cash_refund_item_list.rb +3 -23
- data/lib/netsuite/records/cash_sale_item_list.rb +3 -15
- data/lib/netsuite/records/customer_payment_apply_list.rb +3 -22
- data/lib/netsuite/records/customer_refund_apply_list.rb +3 -20
- data/lib/netsuite/records/deposit_payment_list.rb +3 -4
- data/lib/netsuite/records/gift_certificate_item.rb +84 -0
- data/lib/netsuite/records/inventory_transfer_inventory_list.rb +2 -23
- data/lib/netsuite/records/item_fulfillment_package_list.rb +3 -19
- data/lib/netsuite/records/journal_entry_line_list.rb +3 -23
- data/lib/netsuite/records/member_list.rb +3 -22
- data/lib/netsuite/records/other_charge_sale_item.rb +73 -0
- data/lib/netsuite/records/record_ref_list.rb +2 -20
- data/lib/netsuite/records/units_type_uom_list.rb +2 -23
- data/lib/netsuite/records/vendor.rb +4 -1
- data/lib/netsuite/records/vendor_bill_item_list.rb +3 -23
- data/lib/netsuite/records/vendor_payment_apply_list.rb +3 -23
- data/lib/netsuite/records/work_order_item_list.rb +3 -23
- data/lib/netsuite/rest/utilities/request.rb +53 -0
- data/lib/netsuite/rest/utilities/roles.rb +45 -0
- data/lib/netsuite/utilities.rb +20 -0
- data/lib/netsuite/version.rb +1 -1
- data/spec/netsuite/actions/search_spec.rb +1 -1
- data/spec/netsuite/configuration_spec.rb +3 -3
- data/spec/netsuite/records/basic_record_spec.rb +2 -0
- data/spec/netsuite/records/custom_record_spec.rb +1 -1
- data/spec/netsuite/records/invoice_item_spec.rb +1 -1
- data/spec/netsuite/records/journal_entry_spec.rb +1 -1
- data/spec/netsuite/records/vendor_bill_expense_spec.rb +1 -1
- data/spec/netsuite/records/vendor_bill_item_spec.rb +2 -2
- data/spec/netsuite/utilities/request_spec.rb +29 -0
- data/spec/netsuite/utilities/roles_spec.rb +98 -0
- data/{wsdl/2011_2.wsdl → spec/support/2015.wsdl} +190 -56
- data/spec/support/configuration.rb +1 -0
- metadata +12 -4
- data/wsdl/2012_1.wsdl +0 -2283
@@ -0,0 +1,45 @@
|
|
1
|
+
module NetSuite
|
2
|
+
module Rest
|
3
|
+
module Utilities
|
4
|
+
class Roles
|
5
|
+
|
6
|
+
class << self
|
7
|
+
|
8
|
+
def get(email, password)
|
9
|
+
code, body = Request.get(
|
10
|
+
email: email,
|
11
|
+
password: password,
|
12
|
+
uri: '/roles'
|
13
|
+
)
|
14
|
+
code == "200" ? format_response(body) : body
|
15
|
+
end
|
16
|
+
|
17
|
+
private
|
18
|
+
|
19
|
+
def format_response(parsed)
|
20
|
+
# [
|
21
|
+
# {
|
22
|
+
# "account"=>{
|
23
|
+
# "internalId"=>"TSTDRV15",
|
24
|
+
# "name"=>"Honeycomb Mfg SDN (Leading)"},
|
25
|
+
# "role"=>{
|
26
|
+
# "internalId"=>3,
|
27
|
+
# "name"=>"Administrator"},
|
28
|
+
# "dataCenterURLs"=>{
|
29
|
+
# "webservicesDomain"=>"https://webservices.na1.netsuite.com",
|
30
|
+
# "restDomain"=>"https://rest.na1.netsuite.com",
|
31
|
+
# "systemDomain"=>"https://system.na1.netsuite.com"}
|
32
|
+
# },
|
33
|
+
# ....
|
34
|
+
{
|
35
|
+
accounts: parsed.map {|hash| hash["account"]["internalId"] }.uniq,
|
36
|
+
roles: parsed.map {|hash| hash["role"]["internalId"] }.uniq,
|
37
|
+
wsdls: parsed.map {|hash| hash["dataCenterURLs"]["webservicesDomain"] }.uniq,
|
38
|
+
}
|
39
|
+
end
|
40
|
+
|
41
|
+
end
|
42
|
+
end
|
43
|
+
end
|
44
|
+
end
|
45
|
+
end
|
data/lib/netsuite/utilities.rb
CHANGED
@@ -57,6 +57,26 @@ module NetSuite
|
|
57
57
|
return errors.size > 0
|
58
58
|
end
|
59
59
|
|
60
|
+
|
61
|
+
def get_item(ns_item_internal_id)
|
62
|
+
# TODO add additional item types!
|
63
|
+
ns_item = NetSuite::Utilities.get_record(NetSuite::Records::InventoryItem, ns_item_internal_id)
|
64
|
+
ns_item ||= NetSuite::Utilities.get_record(NetSuite::Records::AssemblyItem, ns_item_internal_id)
|
65
|
+
ns_item ||= NetSuite::Utilities.get_record(NetSuite::Records::NonInventorySaleItem, ns_item_internal_id)
|
66
|
+
ns_item ||= NetSuite::Utilities.get_record(NetSuite::Records::NonInventoryResaleItem, ns_item_internal_id)
|
67
|
+
ns_item ||= NetSuite::Utilities.get_record(NetSuite::Records::DiscountItem, ns_item_internal_id)
|
68
|
+
ns_item ||= NetSuite::Utilities.get_record(NetSuite::Records::OtherChargeSaleItem, ns_item_internal_id)
|
69
|
+
ns_item ||= NetSuite::Utilities.get_record(NetSuite::Records::ServiceSaleItem, ns_item_internal_id)
|
70
|
+
ns_item ||= NetSuite::Utilities.get_record(NetSuite::Records::GiftCertificateItem, ns_item_internal_id)
|
71
|
+
ns_item ||= NetSuite::Utilities.get_record(NetSuite::Records::KitItem, ns_item_internal_id)
|
72
|
+
|
73
|
+
if ns_item.nil?
|
74
|
+
fail NetSuite::RecordNotFound, "item with ID #{ns_item_internal_id} not found"
|
75
|
+
end
|
76
|
+
|
77
|
+
ns_item
|
78
|
+
end
|
79
|
+
|
60
80
|
def get_record(record_klass, id, opts = {})
|
61
81
|
opts[:external_id] ||= false
|
62
82
|
|
data/lib/netsuite/version.rb
CHANGED
@@ -100,7 +100,7 @@ describe NetSuite::Actions::Search do
|
|
100
100
|
|
101
101
|
:attributes! => {
|
102
102
|
"platformCore:customField" => {
|
103
|
-
"
|
103
|
+
"scriptId" => ["custentity_customerandcontacttypelist", "custentity_relatedthing"],
|
104
104
|
"operator" => ["anyOf", "anyOf"],
|
105
105
|
"xsi:type" => ["platformCore:SearchMultiSelectCustomField", "platformCore:SearchMultiSelectCustomField"]
|
106
106
|
}
|
@@ -52,7 +52,7 @@ describe NetSuite::Configuration do
|
|
52
52
|
|
53
53
|
context 'when the wsdl has not been set' do
|
54
54
|
it 'returns a path to the WSDL to use for the API' do
|
55
|
-
expect(config.wsdl).to
|
55
|
+
expect(config.wsdl).to eq("https://webservices.netsuite.com/wsdl/v2015_1_0/netsuite.wsdl")
|
56
56
|
end
|
57
57
|
end
|
58
58
|
|
@@ -214,8 +214,8 @@ describe NetSuite::Configuration do
|
|
214
214
|
|
215
215
|
describe '#api_version' do
|
216
216
|
context 'when no api_version is defined' do
|
217
|
-
it 'defaults to
|
218
|
-
expect(config.api_version).to eq('
|
217
|
+
it 'defaults to 2015_1' do
|
218
|
+
expect(config.api_version).to eq('2015_1')
|
219
219
|
end
|
220
220
|
end
|
221
221
|
end
|
@@ -42,7 +42,7 @@ describe NetSuite::Records::VendorBillItem do
|
|
42
42
|
attributes = {
|
43
43
|
:custom_field => {
|
44
44
|
:value => 10,
|
45
|
-
:
|
45
|
+
:script_id => 'custfield_value'
|
46
46
|
}
|
47
47
|
}
|
48
48
|
item.custom_field_list = attributes
|
@@ -63,7 +63,7 @@ describe NetSuite::Records::VendorBillItem do
|
|
63
63
|
attributes = {
|
64
64
|
:custom_field => {
|
65
65
|
:value => 10,
|
66
|
-
:
|
66
|
+
:script_id => 'custfield_value'
|
67
67
|
}
|
68
68
|
}
|
69
69
|
item.options = attributes
|
@@ -0,0 +1,29 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe NetSuite::Rest::Utilities::Request do
|
4
|
+
subject { described_class }
|
5
|
+
|
6
|
+
describe '#get' do
|
7
|
+
it { is_expected.to respond_to :get }
|
8
|
+
let(:default_args) do
|
9
|
+
{ email: 'jim@godaddy.com', password: 'secret', uri: '/sandwich'}
|
10
|
+
end
|
11
|
+
|
12
|
+
[:email, :password, :uri].each do |key|
|
13
|
+
it "throws an error if no #{key} key is given" do
|
14
|
+
expect{
|
15
|
+
subject.get(default_args.delete_if{|x| x == key})
|
16
|
+
}.to raise_error(KeyError)
|
17
|
+
end
|
18
|
+
end
|
19
|
+
|
20
|
+
it 'returns an array with the response code and parsed body' do
|
21
|
+
allow(subject).to receive(:make_request).and_return(
|
22
|
+
double(:response, code: "200", body: [{great: :body}].to_json)
|
23
|
+
)
|
24
|
+
expect( subject.get(default_args) ).to eq ["200", [{"great" => "body"}]]
|
25
|
+
end
|
26
|
+
end
|
27
|
+
|
28
|
+
|
29
|
+
end
|
@@ -0,0 +1,98 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe NetSuite::Rest::Utilities::Roles do
|
4
|
+
subject { described_class }
|
5
|
+
|
6
|
+
describe '#get' do
|
7
|
+
it { is_expected.to respond_to :get }
|
8
|
+
|
9
|
+
it 'invokes the request module' do
|
10
|
+
expect( NetSuite::Rest::Utilities::Request ).to receive(:get)
|
11
|
+
subject.get('jimbob@netzero.com', 'pickles')
|
12
|
+
end
|
13
|
+
|
14
|
+
it 'formats the API response if successful' do
|
15
|
+
allow( NetSuite::Rest::Utilities::Request ).to receive(:get).and_return(
|
16
|
+
["200", {parsed: :response}]
|
17
|
+
)
|
18
|
+
expect( subject ).to receive(:format_response).with({parsed: :response}).and_return nil
|
19
|
+
subject.get('jimbob@netzero.com', 'pickles')
|
20
|
+
end
|
21
|
+
|
22
|
+
it 'returns the full error message if unsuccessful' do
|
23
|
+
allow( NetSuite::Rest::Utilities::Request ).to receive(:get).and_return(
|
24
|
+
["500", {oh: :no!}]
|
25
|
+
)
|
26
|
+
expect( subject ).to_not receive(:format_reponse)
|
27
|
+
expect( subject.get('jimbob@netzero.com', 'pickles') ).to eq({oh: :no!})
|
28
|
+
end
|
29
|
+
end
|
30
|
+
|
31
|
+
describe '#format_response' do
|
32
|
+
let(:parsed) do
|
33
|
+
[
|
34
|
+
{
|
35
|
+
"account"=>{
|
36
|
+
"internalId"=>"TSTDRV15",
|
37
|
+
"name"=>"Honeycomb Mfg SDN (Leading)"},
|
38
|
+
"role"=>{
|
39
|
+
"internalId"=>3,
|
40
|
+
"name"=>"Administrator"},
|
41
|
+
"dataCenterURLs"=>{
|
42
|
+
"webservicesDomain"=>"https://webservices.na1.netsuite.com",
|
43
|
+
"restDomain"=>"https://rest.na1.netsuite.com",
|
44
|
+
"systemDomain"=>"https://system.na1.netsuite.com"}
|
45
|
+
},
|
46
|
+
{
|
47
|
+
"account"=>{
|
48
|
+
"internalId"=>"TSTDRV15",
|
49
|
+
"name"=>"Honeycomb Mfg SDN (Leading)"},
|
50
|
+
"role"=>{
|
51
|
+
"internalId"=>1,
|
52
|
+
"name"=>"Accountant"},
|
53
|
+
"dataCenterURLs"=>{
|
54
|
+
"webservicesDomain"=>"https://webservices.na1.netsuite.com",
|
55
|
+
"restDomain"=>"https://rest.na1.netsuite.com",
|
56
|
+
"systemDomain"=>"https://system.na1.netsuite.com"}
|
57
|
+
},
|
58
|
+
{
|
59
|
+
"account"=>{
|
60
|
+
"internalId"=>"TSTDRV14",
|
61
|
+
"name"=>"Honeycomb Mfg SDN (Leading)"},
|
62
|
+
"role"=>{
|
63
|
+
"internalId"=>1,
|
64
|
+
"name"=>"Accountant"},
|
65
|
+
"dataCenterURLs"=>{
|
66
|
+
"webservicesDomain"=>"https://webservices.na1.netsuite.com",
|
67
|
+
"restDomain"=>"https://rest.na1.netsuite.com",
|
68
|
+
"systemDomain"=>"https://system.na1.netsuite.com"}
|
69
|
+
},
|
70
|
+
]
|
71
|
+
end
|
72
|
+
|
73
|
+
it 'pulls out the account_ids' do
|
74
|
+
expect(
|
75
|
+
subject.send(:format_response, parsed).fetch(:accounts)
|
76
|
+
).to eq ["TSTDRV15","TSTDRV14"]
|
77
|
+
end
|
78
|
+
|
79
|
+
it 'pulls out the role_ids' do
|
80
|
+
expect(
|
81
|
+
subject.send(:format_response, parsed).fetch(:roles)
|
82
|
+
).to eq [3, 1]
|
83
|
+
end
|
84
|
+
|
85
|
+
it 'pulls out the wsdls' do
|
86
|
+
expect(
|
87
|
+
subject.send(:format_response, parsed).fetch(:wsdls)
|
88
|
+
).to eq ["https://webservices.na1.netsuite.com"]
|
89
|
+
end
|
90
|
+
|
91
|
+
it 'handles an empty response body' do
|
92
|
+
expect{
|
93
|
+
subject.send(:format_response, [])
|
94
|
+
}.to_not raise_error
|
95
|
+
end
|
96
|
+
|
97
|
+
end
|
98
|
+
end
|
@@ -1,42 +1,46 @@
|
|
1
1
|
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
-
<definitions xmlns:tns="urn:
|
2
|
+
<definitions xmlns:tns="urn:platform_2015_1.webservices.netsuite.com" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:platformMsgs="urn:messages_2015_1.platform.webservices.netsuite.com" xmlns:platformFaults="urn:faults_2015_1.platform.webservices.netsuite.com" targetNamespace="urn:platform_2015_1.webservices.netsuite.com">
|
3
3
|
<types>
|
4
4
|
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified">
|
5
|
-
<xsd:import namespace="urn:
|
6
|
-
<xsd:import namespace="urn:
|
7
|
-
<xsd:import namespace="urn:
|
8
|
-
<xsd:import namespace="urn:
|
9
|
-
<xsd:import namespace="urn:
|
10
|
-
<xsd:import namespace="urn:types.
|
11
|
-
<xsd:import namespace="urn:
|
12
|
-
<xsd:import namespace="urn:types.
|
13
|
-
<xsd:import namespace="urn:
|
14
|
-
<xsd:import namespace="urn:types.
|
15
|
-
<xsd:import namespace="urn:
|
16
|
-
<xsd:import namespace="urn:types.
|
17
|
-
<xsd:import namespace="urn:
|
18
|
-
<xsd:import namespace="urn:types.
|
19
|
-
<xsd:import namespace="urn:
|
20
|
-
<xsd:import namespace="urn:types.
|
21
|
-
<xsd:import namespace="urn:
|
22
|
-
<xsd:import namespace="urn:
|
23
|
-
<xsd:import namespace="urn:
|
24
|
-
<xsd:import namespace="urn:
|
25
|
-
<xsd:import namespace="urn:
|
26
|
-
<xsd:import namespace="urn:types.
|
27
|
-
<xsd:import namespace="urn:
|
28
|
-
<xsd:import namespace="urn:
|
29
|
-
<xsd:import namespace="urn:types.
|
30
|
-
<xsd:import namespace="urn:
|
31
|
-
<xsd:import namespace="urn:types.
|
32
|
-
<xsd:import namespace="urn:
|
33
|
-
<xsd:import namespace="urn:types.
|
34
|
-
<xsd:import namespace="urn:
|
35
|
-
<xsd:import namespace="urn:types.
|
36
|
-
<xsd:import namespace="urn:
|
37
|
-
<xsd:import namespace="urn:
|
38
|
-
<xsd:import namespace="urn:types.
|
39
|
-
|
5
|
+
<xsd:import namespace="urn:core_2015_1.platform.webservices.netsuite.com" schemaLocation="https://webservices.netsuite.com/xsd/platform/v2015_1_0/core.xsd"/>
|
6
|
+
<xsd:import namespace="urn:faults_2015_1.platform.webservices.netsuite.com" schemaLocation="https://webservices.netsuite.com/xsd/platform/v2015_1_0/faults.xsd"/>
|
7
|
+
<xsd:import namespace="urn:messages_2015_1.platform.webservices.netsuite.com" schemaLocation="https://webservices.netsuite.com/xsd/platform/v2015_1_0/messages.xsd"/>
|
8
|
+
<xsd:import namespace="urn:common_2015_1.platform.webservices.netsuite.com" schemaLocation="https://webservices.netsuite.com/xsd/platform/v2015_1_0/common.xsd"/>
|
9
|
+
<xsd:import namespace="urn:scheduling_2015_1.activities.webservices.netsuite.com" schemaLocation="https://webservices.netsuite.com/xsd/activities/v2015_1_0/scheduling.xsd"/>
|
10
|
+
<xsd:import namespace="urn:types.scheduling_2015_1.activities.webservices.netsuite.com" schemaLocation="https://webservices.netsuite.com/xsd/activities/v2015_1_0/schedulingTypes.xsd"/>
|
11
|
+
<xsd:import namespace="urn:communication_2015_1.general.webservices.netsuite.com" schemaLocation="https://webservices.netsuite.com/xsd/general/v2015_1_0/communication.xsd"/>
|
12
|
+
<xsd:import namespace="urn:types.communication_2015_1.general.webservices.netsuite.com" schemaLocation="https://webservices.netsuite.com/xsd/general/v2015_1_0/communicationTypes.xsd"/>
|
13
|
+
<xsd:import namespace="urn:relationships_2015_1.lists.webservices.netsuite.com" schemaLocation="https://webservices.netsuite.com/xsd/lists/v2015_1_0/relationships.xsd"/>
|
14
|
+
<xsd:import namespace="urn:types.relationships_2015_1.lists.webservices.netsuite.com" schemaLocation="https://webservices.netsuite.com/xsd/lists/v2015_1_0/relationshipTypes.xsd"/>
|
15
|
+
<xsd:import namespace="urn:support_2015_1.lists.webservices.netsuite.com" schemaLocation="https://webservices.netsuite.com/xsd/lists/v2015_1_0/support.xsd"/>
|
16
|
+
<xsd:import namespace="urn:types.support_2015_1.lists.webservices.netsuite.com" schemaLocation="https://webservices.netsuite.com/xsd/lists/v2015_1_0/supportTypes.xsd"/>
|
17
|
+
<xsd:import namespace="urn:accounting_2015_1.lists.webservices.netsuite.com" schemaLocation="https://webservices.netsuite.com/xsd/lists/v2015_1_0/accounting.xsd"/>
|
18
|
+
<xsd:import namespace="urn:types.accounting_2015_1.lists.webservices.netsuite.com" schemaLocation="https://webservices.netsuite.com/xsd/lists/v2015_1_0/accountingTypes.xsd"/>
|
19
|
+
<xsd:import namespace="urn:sales_2015_1.transactions.webservices.netsuite.com" schemaLocation="https://webservices.netsuite.com/xsd/transactions/v2015_1_0/sales.xsd"/>
|
20
|
+
<xsd:import namespace="urn:types.sales_2015_1.transactions.webservices.netsuite.com" schemaLocation="https://webservices.netsuite.com/xsd/transactions/v2015_1_0/saleTypes.xsd"/>
|
21
|
+
<xsd:import namespace="urn:purchases_2015_1.transactions.webservices.netsuite.com" schemaLocation="https://webservices.netsuite.com/xsd/transactions/v2015_1_0/purchases.xsd"/>
|
22
|
+
<xsd:import namespace="urn:customers_2015_1.transactions.webservices.netsuite.com" schemaLocation="https://webservices.netsuite.com/xsd/transactions/v2015_1_0/customers.xsd"/>
|
23
|
+
<xsd:import namespace="urn:financial_2015_1.transactions.webservices.netsuite.com" schemaLocation="https://webservices.netsuite.com/xsd/transactions/v2015_1_0/financial.xsd"/>
|
24
|
+
<xsd:import namespace="urn:bank_2015_1.transactions.webservices.netsuite.com" schemaLocation="https://webservices.netsuite.com/xsd/transactions/v2015_1_0/bank.xsd"/>
|
25
|
+
<xsd:import namespace="urn:inventory_2015_1.transactions.webservices.netsuite.com" schemaLocation="https://webservices.netsuite.com/xsd/transactions/v2015_1_0/inventory.xsd"/>
|
26
|
+
<xsd:import namespace="urn:types.inventory_2015_1.transactions.webservices.netsuite.com" schemaLocation="https://webservices.netsuite.com/xsd/transactions/v2015_1_0/inventoryTypes.xsd"/>
|
27
|
+
<xsd:import namespace="urn:general_2015_1.transactions.webservices.netsuite.com" schemaLocation="https://webservices.netsuite.com/xsd/transactions/v2015_1_0/general.xsd"/>
|
28
|
+
<xsd:import namespace="urn:customization_2015_1.setup.webservices.netsuite.com" schemaLocation="https://webservices.netsuite.com/xsd/setup/v2015_1_0/customization.xsd"/>
|
29
|
+
<xsd:import namespace="urn:types.customization_2015_1.setup.webservices.netsuite.com" schemaLocation="https://webservices.netsuite.com/xsd/setup/v2015_1_0/customizationTypes.xsd"/>
|
30
|
+
<xsd:import namespace="urn:employees_2015_1.lists.webservices.netsuite.com" schemaLocation="https://webservices.netsuite.com/xsd/lists/v2015_1_0/employees.xsd"/>
|
31
|
+
<xsd:import namespace="urn:types.employees_2015_1.lists.webservices.netsuite.com" schemaLocation="https://webservices.netsuite.com/xsd/lists/v2015_1_0/employeeTypes.xsd"/>
|
32
|
+
<xsd:import namespace="urn:filecabinet_2015_1.documents.webservices.netsuite.com" schemaLocation="https://webservices.netsuite.com/xsd/documents/v2015_1_0/fileCabinet.xsd"/>
|
33
|
+
<xsd:import namespace="urn:types.filecabinet_2015_1.documents.webservices.netsuite.com" schemaLocation="https://webservices.netsuite.com/xsd/documents/v2015_1_0/fileCabinetTypes.xsd"/>
|
34
|
+
<xsd:import namespace="urn:website_2015_1.lists.webservices.netsuite.com" schemaLocation="https://webservices.netsuite.com/xsd/lists/v2015_1_0/website.xsd"/>
|
35
|
+
<xsd:import namespace="urn:types.website_2015_1.lists.webservices.netsuite.com" schemaLocation="https://webservices.netsuite.com/xsd/lists/v2015_1_0/websiteTypes.xsd"/>
|
36
|
+
<xsd:import namespace="urn:employees_2015_1.transactions.webservices.netsuite.com" schemaLocation="https://webservices.netsuite.com/xsd/transactions/v2015_1_0/employees.xsd"/>
|
37
|
+
<xsd:import namespace="urn:marketing_2015_1.lists.webservices.netsuite.com" schemaLocation="https://webservices.netsuite.com/xsd/lists/v2015_1_0/marketing.xsd"/>
|
38
|
+
<xsd:import namespace="urn:types.marketing_2015_1.lists.webservices.netsuite.com" schemaLocation="https://webservices.netsuite.com/xsd/lists/v2015_1_0/marketingTypes.xsd"/>
|
39
|
+
<xsd:import namespace="urn:demandplanning_2015_1.transactions.webservices.netsuite.com" schemaLocation="https://webservices.netsuite.com/xsd/transactions/v2015_1_0/demandPlanning.xsd"/>
|
40
|
+
<xsd:import namespace="urn:types.demandplanning_2015_1.transactions.webservices.netsuite.com" schemaLocation="https://webservices.netsuite.com/xsd/transactions/v2015_1_0/demandPlanningTypes.xsd"/>
|
41
|
+
<xsd:import namespace="urn:supplychain_2015_1.lists.webservices.netsuite.com" schemaLocation="https://webservices.netsuite.com/xsd/lists/v2015_1_0/supplyChain.xsd"/>
|
42
|
+
<xsd:import namespace="urn:types.supplychain_2015_1.lists.webservices.netsuite.com" schemaLocation="https://webservices.netsuite.com/xsd/lists/v2015_1_0/supplyChainTypes.xsd"/>
|
43
|
+
</xsd:schema>
|
40
44
|
</types>
|
41
45
|
<message name="headers">
|
42
46
|
<part name="applicationInfo" element="platformMsgs:applicationInfo"/>
|
@@ -64,11 +68,17 @@
|
|
64
68
|
<message name="mapSsoResponse">
|
65
69
|
<part name="parameters" element="platformMsgs:mapSsoResponse"/>
|
66
70
|
</message>
|
67
|
-
<message name="
|
68
|
-
<part name="parameters" element="platformMsgs:
|
71
|
+
<message name="changePasswordRequest">
|
72
|
+
<part name="parameters" element="platformMsgs:changePassword"/>
|
69
73
|
</message>
|
70
|
-
<message name="
|
71
|
-
<part name="parameters" element="platformMsgs:
|
74
|
+
<message name="changePasswordResponse">
|
75
|
+
<part name="parameters" element="platformMsgs:changePasswordResponse"/>
|
76
|
+
</message>
|
77
|
+
<message name="changeEmailRequest">
|
78
|
+
<part name="parameters" element="platformMsgs:changeEmail"/>
|
79
|
+
</message>
|
80
|
+
<message name="changeEmailResponse">
|
81
|
+
<part name="parameters" element="platformMsgs:changeEmailResponse"/>
|
72
82
|
</message>
|
73
83
|
<message name="logoutRequest">
|
74
84
|
<part name="parameters" element="platformMsgs:logout"/>
|
@@ -214,6 +224,18 @@
|
|
214
224
|
<message name="getConsolidatedExchangeRateResponse">
|
215
225
|
<part name="parameters" element="platformMsgs:getConsolidatedExchangeRateResponse"/>
|
216
226
|
</message>
|
227
|
+
<message name="getCurrencyRateRequest">
|
228
|
+
<part name="parameters" element="platformMsgs:getCurrencyRate"/>
|
229
|
+
</message>
|
230
|
+
<message name="getCurrencyRateResponse">
|
231
|
+
<part name="parameters" element="platformMsgs:getCurrencyRateResponse"/>
|
232
|
+
</message>
|
233
|
+
<message name="getDataCenterUrlsRequest">
|
234
|
+
<part name="parameters" element="platformMsgs:getDataCenterUrls"/>
|
235
|
+
</message>
|
236
|
+
<message name="getDataCenterUrlsResponse">
|
237
|
+
<part name="parameters" element="platformMsgs:getDataCenterUrlsResponse"/>
|
238
|
+
</message>
|
217
239
|
<message name="getPostingTransactionSummaryRequest">
|
218
240
|
<part name="parameters" element="platformMsgs:getPostingTransactionSummary"/>
|
219
241
|
</message>
|
@@ -374,9 +396,19 @@
|
|
374
396
|
<fault name="ExceededRequestLimitFault" message="tns:ExceededRequestLimitFault"/>
|
375
397
|
<fault name="UnexpectedErrorFault" message="tns:UnexpectedErrorFault"/>
|
376
398
|
</operation>
|
377
|
-
<operation name="
|
378
|
-
<input name="
|
379
|
-
<output name="
|
399
|
+
<operation name="changePassword">
|
400
|
+
<input name="changePasswordRequest" message="tns:changePasswordRequest"/>
|
401
|
+
<output name="changePasswordResponse" message="tns:changePasswordResponse"/>
|
402
|
+
<fault name="InsufficientPermissionFault" message="tns:InsufficientPermissionFault"/>
|
403
|
+
<fault name="InvalidAccountFault" message="tns:InvalidAccountFault"/>
|
404
|
+
<fault name="InvalidCredentialsFault" message="tns:InvalidCredentialsFault"/>
|
405
|
+
<fault name="InvalidVersionFault" message="tns:InvalidVersionFault"/>
|
406
|
+
<fault name="ExceededRequestLimitFault" message="tns:ExceededRequestLimitFault"/>
|
407
|
+
<fault name="UnexpectedErrorFault" message="tns:UnexpectedErrorFault"/>
|
408
|
+
</operation>
|
409
|
+
<operation name="changeEmail">
|
410
|
+
<input name="changeEmailRequest" message="tns:changeEmailRequest"/>
|
411
|
+
<output name="changeEmailResponse" message="tns:changeEmailResponse"/>
|
380
412
|
<fault name="InsufficientPermissionFault" message="tns:InsufficientPermissionFault"/>
|
381
413
|
<fault name="InvalidAccountFault" message="tns:InvalidAccountFault"/>
|
382
414
|
<fault name="InvalidCredentialsFault" message="tns:InvalidCredentialsFault"/>
|
@@ -642,6 +674,23 @@
|
|
642
674
|
<fault name="ExceededRequestSizeFault" message="tns:ExceededRequestSizeFault"/>
|
643
675
|
<fault name="UnexpectedErrorFault" message="tns:UnexpectedErrorFault"/>
|
644
676
|
</operation>
|
677
|
+
<operation name="getCurrencyRate">
|
678
|
+
<input name="getCurrencyRateRequest" message="tns:getCurrencyRateRequest"/>
|
679
|
+
<output name="getCurrencyRateResponse" message="tns:getCurrencyRateResponse"/>
|
680
|
+
<fault name="InvalidSessionFault" message="tns:InvalidSessionFault"/>
|
681
|
+
<fault name="InvalidCredentialsFault" message="tns:InvalidCredentialsFault"/>
|
682
|
+
<fault name="ExceededRequestLimitFault" message="tns:ExceededRequestLimitFault"/>
|
683
|
+
<fault name="ExceededUsageLimitFault" message="tns:ExceededUsageLimitFault"/>
|
684
|
+
<fault name="ExceededRecordCountFault" message="tns:ExceededRecordCountFault"/>
|
685
|
+
<fault name="ExceededRequestSizeFault" message="tns:ExceededRequestSizeFault"/>
|
686
|
+
<fault name="UnexpectedErrorFault" message="tns:UnexpectedErrorFault"/>
|
687
|
+
</operation>
|
688
|
+
<operation name="getDataCenterUrls">
|
689
|
+
<input name="getDataCenterUrlsRequest" message="tns:getDataCenterUrlsRequest"/>
|
690
|
+
<output name="getDataCenterUrlsResponse" message="tns:getDataCenterUrlsResponse"/>
|
691
|
+
<fault name="ExceededRequestSizeFault" message="tns:ExceededRequestSizeFault"/>
|
692
|
+
<fault name="UnexpectedErrorFault" message="tns:UnexpectedErrorFault"/>
|
693
|
+
</operation>
|
645
694
|
<operation name="getPostingTransactionSummary">
|
646
695
|
<input name="getPostingTransactionSummaryRequest" message="tns:getPostingTransactionSummaryRequest"/>
|
647
696
|
<output name="getPostingTransactionSummaryResponse" message="tns:getPostingTransactionSummaryResponse"/>
|
@@ -899,15 +948,15 @@
|
|
899
948
|
<soap:fault name="UnexpectedErrorFault" use="literal"/>
|
900
949
|
</fault>
|
901
950
|
</operation>
|
902
|
-
<operation name="
|
903
|
-
<soap:operation soapAction="
|
904
|
-
<input name="
|
951
|
+
<operation name="changePassword">
|
952
|
+
<soap:operation soapAction="changePassword"/>
|
953
|
+
<input name="changePasswordRequest">
|
905
954
|
<soap:header message="tns:headers" part="passport" use="literal"/>
|
906
955
|
<soap:header message="tns:headers" part="applicationInfo" use="literal"/>
|
907
956
|
<soap:header message="tns:headers" part="partnerInfo" use="literal"/>
|
908
957
|
<soap:body use="literal"/>
|
909
958
|
</input>
|
910
|
-
<output name="
|
959
|
+
<output name="changePasswordResponse">
|
911
960
|
<soap:body use="literal"/>
|
912
961
|
</output>
|
913
962
|
<fault name="InsufficientPermissionFault">
|
@@ -929,6 +978,36 @@
|
|
929
978
|
<soap:fault name="UnexpectedErrorFault" use="literal"/>
|
930
979
|
</fault>
|
931
980
|
</operation>
|
981
|
+
<operation name="changeEmail">
|
982
|
+
<soap:operation soapAction="changeEmail"/>
|
983
|
+
<input name="changeEmailRequest">
|
984
|
+
<soap:header message="tns:headers" part="passport" use="literal"/>
|
985
|
+
<soap:header message="tns:headers" part="applicationInfo" use="literal"/>
|
986
|
+
<soap:header message="tns:headers" part="partnerInfo" use="literal"/>
|
987
|
+
<soap:body use="literal"/>
|
988
|
+
</input>
|
989
|
+
<output name="changeEmailResponse">
|
990
|
+
<soap:body use="literal"/>
|
991
|
+
</output>
|
992
|
+
<fault name="InsufficientPermissionFault">
|
993
|
+
<soap:fault name="InsufficientPermissionFault" use="literal"/>
|
994
|
+
</fault>
|
995
|
+
<fault name="InvalidAccountFault">
|
996
|
+
<soap:fault name="InvalidAccountFault" use="literal"/>
|
997
|
+
</fault>
|
998
|
+
<fault name="InvalidCredentialsFault">
|
999
|
+
<soap:fault name="InvalidCredentialsFault" use="literal"/>
|
1000
|
+
</fault>
|
1001
|
+
<fault name="InvalidVersionFault">
|
1002
|
+
<soap:fault name="InvalidVersionFault" use="literal"/>
|
1003
|
+
</fault>
|
1004
|
+
<fault name="ExceededRequestLimitFault">
|
1005
|
+
<soap:fault name="ExceededRequestLimitFault" use="literal"/>
|
1006
|
+
</fault>
|
1007
|
+
<fault name="UnexpectedErrorFault">
|
1008
|
+
<soap:fault name="UnexpectedErrorFault" use="literal"/>
|
1009
|
+
</fault>
|
1010
|
+
</operation>
|
932
1011
|
<operation name="logout">
|
933
1012
|
<soap:operation soapAction="logout"/>
|
934
1013
|
<input name="logoutRequest">
|
@@ -1740,6 +1819,61 @@
|
|
1740
1819
|
<soap:fault name="UnexpectedErrorFault" use="literal"/>
|
1741
1820
|
</fault>
|
1742
1821
|
</operation>
|
1822
|
+
<operation name="getCurrencyRate">
|
1823
|
+
<soap:operation soapAction="getCurrencyRate"/>
|
1824
|
+
<input name="getCurrencyRateRequest">
|
1825
|
+
<soap:header message="tns:headers" part="passport" use="literal"/>
|
1826
|
+
<soap:header message="tns:headers" part="applicationInfo" use="literal"/>
|
1827
|
+
<soap:header message="tns:headers" part="partnerInfo" use="literal"/>
|
1828
|
+
<soap:header message="tns:headers" part="preferences" use="literal"/>
|
1829
|
+
<soap:body use="literal"/>
|
1830
|
+
</input>
|
1831
|
+
<output name="getCurrencyRateResponse">
|
1832
|
+
<soap:header message="tns:headers" part="documentInfo" use="literal"/>
|
1833
|
+
<soap:body use="literal"/>
|
1834
|
+
</output>
|
1835
|
+
<fault name="InvalidSessionFault">
|
1836
|
+
<soap:fault name="InvalidSessionFault" use="literal"/>
|
1837
|
+
</fault>
|
1838
|
+
<fault name="InvalidCredentialsFault">
|
1839
|
+
<soap:fault name="InvalidCredentialsFault" use="literal"/>
|
1840
|
+
</fault>
|
1841
|
+
<fault name="ExceededRequestLimitFault">
|
1842
|
+
<soap:fault name="ExceededRequestLimitFault" use="literal"/>
|
1843
|
+
</fault>
|
1844
|
+
<fault name="ExceededUsageLimitFault">
|
1845
|
+
<soap:fault name="ExceededUsageLimitFault" use="literal"/>
|
1846
|
+
</fault>
|
1847
|
+
<fault name="ExceededRecordCountFault">
|
1848
|
+
<soap:fault name="ExceededRecordCountFault" use="literal"/>
|
1849
|
+
</fault>
|
1850
|
+
<fault name="ExceededRequestSizeFault">
|
1851
|
+
<soap:fault name="ExceededRequestSizeFault" use="literal"/>
|
1852
|
+
</fault>
|
1853
|
+
<fault name="UnexpectedErrorFault">
|
1854
|
+
<soap:fault name="UnexpectedErrorFault" use="literal"/>
|
1855
|
+
</fault>
|
1856
|
+
</operation>
|
1857
|
+
<operation name="getDataCenterUrls">
|
1858
|
+
<soap:operation soapAction="getDataCenterUrls"/>
|
1859
|
+
<input name="getDataCenterUrlsRequest">
|
1860
|
+
<soap:header message="tns:headers" part="passport" use="literal"/>
|
1861
|
+
<soap:header message="tns:headers" part="applicationInfo" use="literal"/>
|
1862
|
+
<soap:header message="tns:headers" part="partnerInfo" use="literal"/>
|
1863
|
+
<soap:header message="tns:headers" part="preferences" use="literal"/>
|
1864
|
+
<soap:body use="literal"/>
|
1865
|
+
</input>
|
1866
|
+
<output name="getDataCenterUrlsResponse">
|
1867
|
+
<soap:header message="tns:headers" part="documentInfo" use="literal"/>
|
1868
|
+
<soap:body use="literal"/>
|
1869
|
+
</output>
|
1870
|
+
<fault name="ExceededRequestSizeFault">
|
1871
|
+
<soap:fault name="ExceededRequestSizeFault" use="literal"/>
|
1872
|
+
</fault>
|
1873
|
+
<fault name="UnexpectedErrorFault">
|
1874
|
+
<soap:fault name="UnexpectedErrorFault" use="literal"/>
|
1875
|
+
</fault>
|
1876
|
+
</operation>
|
1743
1877
|
<operation name="getPostingTransactionSummary">
|
1744
1878
|
<soap:operation soapAction="getPostingTransactionSummary"/>
|
1745
1879
|
<input name="getPostingTransactionSummaryRequest">
|
@@ -1969,7 +2103,7 @@
|
|
1969
2103
|
<soap:fault name="ExceededRequestSizeFault" use="literal"/>
|
1970
2104
|
</fault>
|
1971
2105
|
<fault name="ExceededRequestLimitFault">
|
1972
|
-
<soap:fault name="
|
2106
|
+
<soap:fault name="ExceededRequestLimitFault" use="literal"/>
|
1973
2107
|
</fault>
|
1974
2108
|
<fault name="UnexpectedErrorFault">
|
1975
2109
|
<soap:fault name="UnexpectedErrorFault" use="literal"/>
|
@@ -2001,7 +2135,7 @@
|
|
2001
2135
|
<soap:fault name="ExceededRequestSizeFault" use="literal"/>
|
2002
2136
|
</fault>
|
2003
2137
|
<fault name="ExceededRequestLimitFault">
|
2004
|
-
<soap:fault name="
|
2138
|
+
<soap:fault name="ExceededRequestLimitFault" use="literal"/>
|
2005
2139
|
</fault>
|
2006
2140
|
<fault name="UnexpectedErrorFault">
|
2007
2141
|
<soap:fault name="UnexpectedErrorFault" use="literal"/>
|
@@ -2033,7 +2167,7 @@
|
|
2033
2167
|
<soap:fault name="ExceededRequestSizeFault" use="literal"/>
|
2034
2168
|
</fault>
|
2035
2169
|
<fault name="ExceededRequestLimitFault">
|
2036
|
-
<soap:fault name="
|
2170
|
+
<soap:fault name="ExceededRequestLimitFault" use="literal"/>
|
2037
2171
|
</fault>
|
2038
2172
|
<fault name="UnexpectedErrorFault">
|
2039
2173
|
<soap:fault name="UnexpectedErrorFault" use="literal"/>
|
@@ -2065,7 +2199,7 @@
|
|
2065
2199
|
<soap:fault name="ExceededRequestSizeFault" use="literal"/>
|
2066
2200
|
</fault>
|
2067
2201
|
<fault name="ExceededRequestLimitFault">
|
2068
|
-
<soap:fault name="
|
2202
|
+
<soap:fault name="ExceededRequestLimitFault" use="literal"/>
|
2069
2203
|
</fault>
|
2070
2204
|
<fault name="UnexpectedErrorFault">
|
2071
2205
|
<soap:fault name="UnexpectedErrorFault" use="literal"/>
|
@@ -2097,7 +2231,7 @@
|
|
2097
2231
|
<soap:fault name="ExceededRequestSizeFault" use="literal"/>
|
2098
2232
|
</fault>
|
2099
2233
|
<fault name="ExceededRequestLimitFault">
|
2100
|
-
<soap:fault name="
|
2234
|
+
<soap:fault name="ExceededRequestLimitFault" use="literal"/>
|
2101
2235
|
</fault>
|
2102
2236
|
<fault name="UnexpectedErrorFault">
|
2103
2237
|
<soap:fault name="UnexpectedErrorFault" use="literal"/>
|
@@ -2164,7 +2298,7 @@
|
|
2164
2298
|
<soap:fault name="ExceededRequestSizeFault" use="literal"/>
|
2165
2299
|
</fault>
|
2166
2300
|
<fault name="ExceededRequestLimitFault">
|
2167
|
-
<soap:fault name="
|
2301
|
+
<soap:fault name="ExceededRequestLimitFault" use="literal"/>
|
2168
2302
|
</fault>
|
2169
2303
|
<fault name="UnexpectedErrorFault">
|
2170
2304
|
<soap:fault name="UnexpectedErrorFault" use="literal"/>
|
@@ -2228,7 +2362,7 @@
|
|
2228
2362
|
<soap:fault name="InvalidCredentialsFault" use="literal"/>
|
2229
2363
|
</fault>
|
2230
2364
|
<fault name="ExceededRequestLimitFault">
|
2231
|
-
<soap:fault name="
|
2365
|
+
<soap:fault name="ExceededRequestLimitFault" use="literal"/>
|
2232
2366
|
</fault>
|
2233
2367
|
<fault name="UnexpectedErrorFault">
|
2234
2368
|
<soap:fault name="UnexpectedErrorFault" use="literal"/>
|
@@ -2263,7 +2397,7 @@
|
|
2263
2397
|
<soap:fault name="ExceededRecordCountFault" use="literal"/>
|
2264
2398
|
</fault>
|
2265
2399
|
<fault name="ExceededRequestLimitFault">
|
2266
|
-
<soap:fault name="
|
2400
|
+
<soap:fault name="ExceededRequestLimitFault" use="literal"/>
|
2267
2401
|
</fault>
|
2268
2402
|
<fault name="ExceededRequestSizeFault">
|
2269
2403
|
<soap:fault name="ExceededRequestSizeFault" use="literal"/>
|
@@ -2275,7 +2409,7 @@
|
|
2275
2409
|
</binding>
|
2276
2410
|
<service name="NetSuiteService">
|
2277
2411
|
<port name="NetSuitePort" binding="tns:NetSuiteBinding">
|
2278
|
-
<soap:address location="https://webservices.netsuite.com/services/
|
2412
|
+
<soap:address location="https://webservices.netsuite.com/services/NetSuitePort_2015_1"/>
|
2279
2413
|
</port>
|
2280
2414
|
</service>
|
2281
2415
|
</definitions>
|