class Peddler::API::Reports20210630

Selling Partner API for Reports

The Selling Partner API for Reports lets you retrieve and manage a variety of reports that can help selling partners manage their businesses.

Public Instance Methods

cancel_report(report_id, rate_limit: 0.0222) click to toggle source

Cancels the report that you specify. Only reports with ‘processingStatus=IN_QUEUE` can be cancelled. Cancelled reports are returned in subsequent calls to the `getReport` and `getReports` operations.

@note This operation can make a static sandbox call. @param report_id [String] The identifier for the report. This identifier is unique only in combination with a

seller ID.

@param rate_limit [Float] Requests per second @return [Hash] The API response

# File lib/peddler/api/reports_2021_06_30.rb, line 76
def cancel_report(report_id, rate_limit: 0.0222)
  path = "/reports/2021-06-30/reports/#{report_id}"

  meter(rate_limit).delete(path)
end
cancel_report_schedule(report_schedule_id, rate_limit: 0.0222) click to toggle source

Cancels the report schedule that you specify.

@note This operation can make a static sandbox call. @param report_schedule_id [String] The identifier for the report schedule. This identifier is unique only in

combination with a seller ID.

@param rate_limit [Float] Requests per second @return [Hash] The API response

# File lib/peddler/api/reports_2021_06_30.rb, line 131
def cancel_report_schedule(report_schedule_id, rate_limit: 0.0222)
  path = "/reports/2021-06-30/schedules/#{report_schedule_id}"

  meter(rate_limit).delete(path)
end
create_report(body, rate_limit: 0.0167) click to toggle source

Creates a report.

@note This operation can make a static sandbox call. @param body [Hash] Information required to create the report. @param rate_limit [Float] Requests per second @return [Hash] The API response

# File lib/peddler/api/reports_2021_06_30.rb, line 62
def create_report(body, rate_limit: 0.0167)
  path = "/reports/2021-06-30/reports"

  meter(rate_limit).post(path, body:)
end
create_report_schedule(body, rate_limit: 0.0222) click to toggle source

Creates a report schedule. If a report schedule with the same report type and marketplace IDs already exists, it will be cancelled and replaced with this one.

@note This operation can make a static sandbox call. @param body [Hash] Information required to create the report schedule. @param rate_limit [Float] Requests per second @return [Hash] The API response

# File lib/peddler/api/reports_2021_06_30.rb, line 118
def create_report_schedule(body, rate_limit: 0.0222)
  path = "/reports/2021-06-30/schedules"

  meter(rate_limit).post(path, body:)
end
get_report(report_id, rate_limit: 2.0) click to toggle source

Returns report details (including the ‘reportDocumentId`, if available) for the report that you specify.

@note This operation can make a static sandbox call. @param report_id [String] The identifier for the report. This identifier is unique only in combination with a

seller ID.

@param rate_limit [Float] Requests per second @return [Hash] The API response

# File lib/peddler/api/reports_2021_06_30.rb, line 89
def get_report(report_id, rate_limit: 2.0)
  path = "/reports/2021-06-30/reports/#{report_id}"

  meter(rate_limit).get(path)
end
get_report_document(report_document_id, rate_limit: 0.0167) click to toggle source

Returns the information required for retrieving a report document’s contents.

@note This operation can make a static sandbox call. @param report_document_id [String] The identifier for the report document. @param rate_limit [Float] Requests per second @return [Hash] The API response

# File lib/peddler/api/reports_2021_06_30.rb, line 156
def get_report_document(report_document_id, rate_limit: 0.0167)
  path = "/reports/2021-06-30/documents/#{report_document_id}"

  meter(rate_limit).get(path)
end
get_report_schedule(report_schedule_id, rate_limit: 0.0222) click to toggle source

Returns report schedule details for the report schedule that you specify.

@note This operation can make a static sandbox call. @param report_schedule_id [String] The identifier for the report schedule. This identifier is unique only in

combination with a seller ID.

@param rate_limit [Float] Requests per second @return [Hash] The API response

# File lib/peddler/api/reports_2021_06_30.rb, line 144
def get_report_schedule(report_schedule_id, rate_limit: 0.0222)
  path = "/reports/2021-06-30/schedules/#{report_schedule_id}"

  meter(rate_limit).get(path)
end
get_report_schedules(report_types, rate_limit: 0.0222) click to toggle source

Returns report schedule details that match the filters that you specify.

@note This operation can make a static sandbox call. @param report_types [Array<String>] A list of report types used to filter report schedules. Refer to [Report

Type Values](https://developer-docs.amazon.com/sp-api/docs/report-type-values) for more information.

@param rate_limit [Float] Requests per second @return [Hash] The API response

# File lib/peddler/api/reports_2021_06_30.rb, line 102
def get_report_schedules(report_types, rate_limit: 0.0222)
  path = "/reports/2021-06-30/schedules"
  params = {
    "reportTypes" => report_types,
  }.compact

  meter(rate_limit).get(path, params:)
end
get_reports(report_types: nil, processing_statuses: nil, marketplace_ids: nil, page_size: 10, created_since: nil, created_until: nil, next_token: nil, rate_limit: 0.0222) click to toggle source

Returns report details for the reports that match the filters that you specify.

@note This operation can make a static sandbox call. @param report_types [Array<String>] A list of report types used to filter reports. Refer to [Report Type

Values](https://developer-docs.amazon.com/sp-api/docs/report-type-values) for more information. When
reportTypes is provided, the other filter parameters (processingStatuses, marketplaceIds, createdSince,
createdUntil) and pageSize may also be provided. Either reportTypes or nextToken is required.

@param processing_statuses [Array<String>] A list of processing statuses used to filter reports. @param marketplace_ids [Array<String>] A list of marketplace identifiers used to filter reports. The reports

returned will match at least one of the marketplaces that you specify.

@param page_size [Integer] The maximum number of reports to return in a single call. @param created_since [String] The earliest report creation date and time for reports to include in the response,

in {https://developer-docs.amazon.com/sp-api/docs/iso-8601 ISO 8601} date time format. The default is 90 days
ago. Reports are retained for a maximum of 90 days.

@param created_until [String] The latest report creation date and time for reports to include in the response,

in {https://developer-docs.amazon.com/sp-api/docs/iso-8601 ISO 8601} date time format. The default is now.

@param next_token [String] A string token returned in the response to your previous request. ‘nextToken` is

returned when the number of results exceeds the specified `pageSize` value. To get the next page of results,
call the `getReports` operation and include this token as the only parameter. Specifying `nextToken` with any
other parameters will cause the request to fail.

@param rate_limit [Float] Requests per second @return [Hash] The API response

# File lib/peddler/api/reports_2021_06_30.rb, line 40
def get_reports(report_types: nil, processing_statuses: nil, marketplace_ids: nil, page_size: 10,
  created_since: nil, created_until: nil, next_token: nil, rate_limit: 0.0222)
  path = "/reports/2021-06-30/reports"
  params = {
    "reportTypes" => report_types,
    "processingStatuses" => processing_statuses,
    "marketplaceIds" => marketplace_ids,
    "pageSize" => page_size,
    "createdSince" => created_since,
    "createdUntil" => created_until,
    "nextToken" => next_token,
  }.compact

  meter(rate_limit).get(path, params:)
end