The SEER API is a RESTful Web service that supports various SEER Program data sets and mapping. This service is available to developers who wish to incorporate SEER resources into their own systems. These resources include databases and tools developed to enhance registry operations and quality improvement. The SEER API is designed for integration into registry computer systems and is not designed to be accessed by end-users.

The goal of SEER API is to provide a centralized repository of SEER Program tools that is available to all programming environments and operating systems. The API is based on REST principles, therefore, it is very easy to write and test applications. You can use your browser to access URLs and to test APIs. Any programming language that can read HTTP data from a URL can use web services. Results are returned in JSON format which can be easily parsed and interpreted. See the Usage page for language-specific examples.

The SEER API powers a variety of SEER tools, including:

The Surveillance, Epidemiology and End Results (SEER) Program is a premier source for cancer statistics in the United States. The SEER Program collects information on incidence, prevalence and survival from specific geographic areas representing 28 percent of the US population and reports on all these data plus cancer mortality data for the entire country.

Recent Changes

January 24, 2017

  • The existing API for Multiple Primary and Histology Coding was modified to return more information; new APIs were added to return group information.

December 6, 2016

  • A new API for Multiple Primary and Histology Coding was added.

July 8, 2016

  • The Disease API was modified in this release:
    • The fields "icd_o2_morphology" and "icd_o1_morphology" were changed from a single string to a list of strings.
    • The field "icd_10cm_code" was changed from a strings to a list of date-range strings.
  • A National Drug Code (NDC) API was added (/rest/ndc). It is a searchable mirror of the National Drug Code Directory from the FDA website. This database is updated weekly.

February 11, 2016

  • NAACCR 16 definitions were added to the NAACCR API (/rest/naaccr).
  • A new algorithm, TNM 1.0, was added to the staging API (/rest/staging). For more information on TNM and how the staging API works in general, see staging-client-java for details.

June 3rd, 2015

  • The Glossary API was modified in this release:
    • STAGING was added as a new glossary category.
    • 3 new fields were added to glossary resources: subtitle, citation and reference_type.

April 22rd, 2015

  • The legacy Collaborative Staging API (/rest/cstage) was removed. The new staging API (/rest/staging) functions as a complete replacement.
  • A new Staging API was added to allow table matching. It can be used to validate inputs when building data-entry screens.
  • The Disease, Rx and Glossary changelog APIs were modified in this release. The new API:
    • Returns a maximum of 10 entries per call.
    • Added new parameters "count" and "offset". These can be used to traverse the list of changelogs.
    • Added an "order" parameter to specify how results are returned.
    • Added an "id" parameter to limit results to a single entity.

April 7th, 2015

  • A new cancer staging API was added (/rest/staging). In the initial release, it supports only Collaborative Staging 02.05.50. In the future it will support additional staging algorithms.
  • The legacy Collaborative Staging API (/rest/cstage) is scheduled to be removed in a future update. The new staging API functions as a complete replacement and should be migrated to at this time.
  • The item history is no longer returned by default for the Disease (/rest/disease/:version/:id), Rx (/rest/rx/:version/:id) and Glossary (/rest/glossary/:version/:id) APIs. It can still be accessed with a new "history=true" parameter.
  • A new API was added which returns a single disease, specified by the id parameter with only year-based information for the passed year included.
  • An optional field "subcategory" was added to glossary items. It is a list of strings and is used to enforce uniqueness of glossary items. Glossary items must be unique in the combination of name, category and subcategory.
  • An optional list of "resources" was added to glossary items. A resource consists of a name or URL and optionally edition, year and page.
  • The Rx field "do_not_code" was changed from a boolean to a String. The allowed values are YES, NO and SEE_REMARKS.
  • A new field, "progression" was added to the Disease entities. It represents progression and transformation and is only allowed for HEMATO diseases. In addition, the existing field "recurrence" is now only permitted for SOLID_TUMOR diseases.
  • A new field, "metastatic" was added to the Disease entities. It represents common metastatic sites and is only allowed for SOLID_TUMOR diseases.