2016-09-01 1 views
0

애드워즈 API에 문제가 있고 도움이 될지 궁금합니다.보고서를 가져 오려고했지만 항상 "ReportDownloadError.MISSING_PARAMETER" "보고서 정의가 누락 됨"

나는 adwords api http : // adwords.google.com/api/adwords/reportdownload/v201603라고 불렀습니다.

이 API는 어제까지 작동했지만 오늘은 작동을 멈 춥니 다.

나는 참조 페이지를 읽고 알아 내려고 노력했지만, 지금까지 우리는 단지 'api error'만 응답했다.

다음은이 페이지에 대한 링크입니다.

https : //로 developers.google.com/adwords/api/docs/guides/reporting?hl=en

https : //로 adwords.google.com/api/adwords/reportdownload/v201603/reportDefinition .XSD

아래

우리가 쓴이되고,

API_VERSION='v201603' 
REQUEST='__rdxml=<reportDefinition xmlns="https://adwords.google.com/api/adwords/cm/'${API_VERSION}'"> 
    <selector> 
     <fields>Ctr</fields> 
     <fields>Date</fields> 
    </selector> 
    <reportName>ACCOUNT_PERFORMANCE_REPORT</reportName> 
    <reportType>ACCOUNT_PERFORMANCE_REPORT</reportType> 
    <dateRangeType>LAST_MONTH</dateRangeType> 
    <downloadFormat>XML</downloadFormat> 
</reportDefinition>' 

SIZE=${#REQUEST} 

echo ${REQUEST} | \ 
curl -X POST \ 
    -H 'Content-Type: application/x-www-form-urlencoded; charset=UTF-8' \ 
    -H 'Authorization: Bearer '${REFREASH_TOKEN} \ 
    -H 'developerToken: '${DEVELOPER_TOKEN} \ 
    -H 'clientCustomerId: '${ACCOUNT_ID} \ 
    -H 'skipReportHeader: False' \ 
    -H 'skipColumnHeader: False' \ 
    -H 'skipReportSummary: False' \ 
    -H 'includeZeroImpressions: False' \ 
    -H 'Host: adwords.google.com' \ 
    -H 'Content-Length: '${SIZE} \ 
    -H 'Expect: 100-continue' \ 
    -H 'Connection: Keep-Alive' \ 
    --data-urlencode @- \ 
    --verbose \ 
    https://adwords.google.com/api/adwords/reportdownload/${API_VERSION} 

하고 코드를 실행 한 후

나는 응답 아래 얻을

<?xml version="1.0" encoding="UTF-8" standalone="yes"?> 
<reportDownloadError> 
    <ApiError> 
    <type>ReportDownloadError.MISSING_PARAMETER</type> 
    <trigger>Missing report definition</trigger> 
    <fieldPath/> 
    </ApiError> 
</reportDownloadError> 

보고서 다운로드 API 호출 방법에 대한 지침을 제공 할 수 있다면 좋겠습니다. 내가 파이썬 애드워즈 API 클라이언트 라이브러리를 시도

답변

0

사전에

감사합니다. https://github.com/googleads/googleads-python-lib/blob/master/README.md#getting-started

그래서 오류가 발생합니다.

Traceback (most recent call last): 
    File "examples/adwords/v201607/reporting/download_criteria_report.py", line 61, in <module> 
    main(adwords_client) 
    File "examples/adwords/v201607/reporting/download_criteria_report.py", line 56, in main 
    skip_report_summary=False) 
    File "/Users/my/.pyenv/versions/anaconda3-2.3.0/lib/python3.4/site-packages/googleads/adwords.py", line 1169, in DownloadReport 
    output, **kwargs) 
    File "/Users/my/.pyenv/versions/anaconda3-2.3.0/lib/python3.4/site-packages/googleads/adwords.py", line 1439, in _DownloadReport 
    response = self._DownloadReportAsStream(post_body, **kwargs) 
    File "/Users/my/.pyenv/versions/anaconda3-2.3.0/lib/python3.4/site-packages/googleads/adwords.py", line 1492, in _DownloadReportAsStream 
    raise self._ExtractError(e) 
googleads.errors.AdWordsReportBadRequestError: Type: AuthorizationError.USER_PERMISSION_DENIED 
Trigger: <null> 
Field Path: None 

이 문제의 원인은 삭제 된 사용자에게 새로 고침 토큰을 만드는 것입니다.

레지스트리 oauth 계정. 새로 고침 토큰을 만듭니다. 이 문제가 해결되었습니다.

읽어 주셔서 감사합니다. 지금까지, 나는 재미있는 영어 글쓰기에 익숙해 졌다고 생각한다.

관련 문제