“Internal Server Error” on QBO Api Update call

此生再无相见时 提交于 2019-12-12 05:22:24

问题


When I send an update request to the QBO V2 api, I get back an 'internal server error' response. These requests used to work; I even have an unchanged unit test from before specifically for this request that no longer works.

All of my other request types seem to still be working. Normally QBO gives pretty decent error messages if it's something I messed up with the request.

Has anyone else run into a similar issue recently, or have any ideas on what I could be doing that wouldn't result in a normal error message?

Here's a copy of one of the requests:

POST /resource/customer/v2/682571780/1?oauth_version=1.0&oauth_token=*token*&oauth_nonce=*nonce*&oauth_timestamp=1372345998&oauth_signature=*signature*&oauth_consumer_key=*key*&oauth_signature_method=HMAC-SHA1 HTTP/1.1
Host: qbo.sbfinance.intuit.com
Content-Length: 1368
content-type: application/xml
Accept-Encoding: gzip, deflate, compress
Accept: */*
User-Agent: python-requests/1.2.3 CPython/2.7.3 Linux/3.5.0-17-generic

<?xml version='1.0' encoding='ASCII' standalone='yes'?>
<Customer xmlns="http://www.intuit.com/sb/cdm/v2">
  <Id idDomain="QBO">1</Id>
  <SyncToken>49</SyncToken>
  <MetaData>
    <CreateTime>2013-04-10T14:07:41-07:00</CreateTime>
    <LastUpdatedTime>2013-04-25T09:40:40-07:00</LastUpdatedTime>
  </MetaData>
  <Name>Test A. User</Name>
  <Address>
    <Line1>123 Test Drive</Line1>
    <City>Smallville</City>
    <Country>United States of America</Country>
    <CountrySubDivisionCode>WY</CountrySubDivisionCode>
    <PostalCode>12345</PostalCode>
    <GeoCode>LAT=42.8142432,LNG=-73.9395687</GeoCode>
    <Tag>Billing</Tag>
  </Address>
  <Phone>
    <DeviceType>Primary</DeviceType>
    <FreeFormNumber>(123) 456-7890</FreeFormNumber>
  </Phone>
  <WebSite/>
  <Email>
    <Address>test-user@mailinator.com</Address>
  </Email>
  <GivenName>Test</GivenName>
  <MiddleName>A</MiddleName>
  <FamilyName>User</FamilyName>
  <DBAName>Emerging Threats</DBAName>
  <CustomField>
    <DefinitionId>Preferred Delivery Method</DefinitionId>
    <Value>PRINT</Value>
  </CustomField>
  <CustomField>
    <DefinitionId>Resale Number</DefinitionId>
  </CustomField>
  <CustomField>
    <DefinitionId>Bill With Parent</DefinitionId>
    <Value>false</Value>
  </CustomField>
  <ShowAs>Test User</ShowAs>
  <OpenBalance>
    <Amount>20.00</Amount>
  </OpenBalance>
</Customer>

回答1:


Can you please try the following XML in ApiExplorer. It worked fine for me. ApiExplorer - https://developer.intuit.com/apiexplorer?apiname=V2QBO

Please change the Id and Synctoken, Name etc with correct test data.

PN - Looks like customeFields in the post body are not supported while updating QBO Customer. https://developer.intuit.com/docs/0025_quickbooksapi/0050_data_services/v2/0400_quickbooks_online/customer

<?xml version="1.0" encoding="utf-8"?>
<Customer xmlns:ns2="http://www.intuit.com/sb/cdm/qbo" xmlns="http://www.intuit.com/sb/cdm/v2">
    <Id>4</Id>
    <SyncToken>6</SyncToken>
    <MetaData>
        <CreateTime>2013-04-10T14:07:41-07:00</CreateTime>
        <LastUpdatedTime>2013-04-25T09:40:40-07:00</LastUpdatedTime>
    </MetaData>
    <TypeOf>Person</TypeOf>
    <Name>John Doe NEW 2</Name>
    <Address>
        <Line1>123 Test Drive</Line1>
        <City>Smallville</City>
        <Country>United States of America</Country>
        <CountrySubDivisionCode>WY</CountrySubDivisionCode>
        <PostalCode>12345</PostalCode>
        <GeoCode>LAT=42.8142432,LNG=-73.9395687</GeoCode>
        <Tag>Billing</Tag>
    </Address>
    <Phone>
        <DeviceType>Primary</DeviceType>
        <FreeFormNumber>(123) 456-7890</FreeFormNumber>
    </Phone>
    <WebSite/>
    <Email>
        <Address>test-user@mailinator.com</Address>
    </Email>
    <GivenName>Test</GivenName>
    <MiddleName>A</MiddleName>
    <FamilyName>User</FamilyName>
    <DBAName>Emerging Threats</DBAName>
    <ShowAs>Test User</ShowAs>
    <OpenBalance>
        <Amount>20.00</Amount>
    </OpenBalance>
</Customer>

Please let me know if it works for you.

Thanks



来源:https://stackoverflow.com/questions/17347156/internal-server-error-on-qbo-api-update-call

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!