mobile-menu mobile-menu-arrow Menu

8.0 SUSHI for Automated Report Harvesting

Content providers MUST support automatic harvesting of COUNTER reports via the COUNTER_SUSHI API. The specification for the RESTful COUNTER_SUSHI API is maintained by COUNTER on SwaggerHub:

The Swagger files are a comprehensive reference version that contains a detailed description of the entire COUNTER_SUSHI API. It is expected that reporting services will use only the parts relevant to them, or make local tailored copies relevant to their particular circumstances, for example by removing methods detailing reports they don’t support.

8.1 COUNTER_SUSHI API Paths to Support

The following paths (methods) MUST be supported:

Path Description
GET /status Returns the current status of the COUNTER_SUSHI API service. This path returns a message that includes the operating status of the API, the URL to the service’s entry in the Register of COUNTER Compliant Content Providers, and an array of service alerts (if any).
GET /reports Returns a list of reports supported by the COUNTER_SUSHI API service. The response includes an array of reports, including the report identifier, the release number, the report name, a description, and (optional but recommended for custom reports) the path to use when requesting the report.
GET /reports/{Report_ID in lower case} Each supported report has its own path, e.g. GET /reports/tr_b1 for “Book Requests (Excluding OA_Gold)”, GET /reports/tr_j1 for “Journal Requests (Excluding OA_Gold)”.
GET /members Returns the list of consortium members or sites for multi-site customers. The response includes an array of customer account information, including for each the customer ID (to use when requesting COUNTER reports), the requestor ID (to use when requesting COUNTER reports), the customer account name, and additional identifiers for the organization (if any). Note that if the customer ID specified in the parameter for the /members path is not a multi-site organization, then the response will simply return the details for that customer.

8.2 Authentication and Security for COUNTER_SUSHI API

The COUNTER_SUSHI API MUST be implemented using TLS (HTTPS).

The API MUST be secured using one or more of the following methods:

  • Combination of customer ID and requestor ID
  • IP address of the SUSHI client
  • API key assigned to the organization harvesting the usage

Non-standard techniques for authentication (techniques not specified in the COUNTER_SUSHI API specification) MUST NOT be used.

If IP address authentication is implemented, it MUST allow the same SUSHI client (a single IP address) to harvest usage for multiple customer accounts (e.g. hosted ERM services).

8.3 Report Filters and Report Attributes

The COUNTER_SUSHI API specification allows report responses to be customized to the caller’s needs using report filters and report attributes. For Standard Views, these filters and attributes are implicit. For the Master Reports, the filters and attributes will be explicitly included as parameters on the COUNTER_SUSHI request.

Refer to Section 3.3.8 and the COUNTER_SUSHI API Specification for the list of filters and attributes supported by the various COUNTER reports.

8.4 Errors and Exceptions

Implementations of the COUNTER_SUSHI API MUST comply with the warnings, exceptions and errors described in Appendix F.

Release 5 Queries COP Register Members Guides Members

Gold, Silver and Bronze Sponsors