class OpenFdaApi::Drugs

Interact with the Drugs API Endpoint:

- Adverse Events
- Product Labeling
- NDC Directory
- Recall Enforcement Reports
- Drugs@FDA)

Public Class Methods

valid_adverse_events_fields() click to toggle source
# File lib/open_fda_api/drugs.rb, line 78
def self.valid_adverse_events_fields
  @valid_adverse_events_fields ||= ::YAML.load_file("#{__dir__}/adverse_events_fields.yml")
end

Public Instance Methods

adverse_events(search: [], sort: [], count: [], skip: 0, limit: 1) click to toggle source

@param search [Array<Hash>] Search fields defined in open.fda.gov/apis/drug/event/searchable-fields/ @param sort [Array<Hash>] Sort fields defined in open.fda.gov/apis/drug/event/searchable-fields/ @param count [Array<Hash>] Count fields defined open.fda.gov/apis/drug/event/searchable-fields/ @param skip [Integer] Number of results to skip @param limit [Integer] Number of results to return @return Response from the API parsed as JSON

# File lib/open_fda_api/drugs.rb, line 19
def adverse_events(search: [], sort: [], count: [], skip: 0, limit: 1)
  endpoint = "event.json"
  inputs   = build_inputs(search: search, sort: sort, count: count, skip: skip, limit: limit)
  query    = build_query(inputs, self.class.valid_adverse_events_fields)
  make_request(endpoint, query)
end
drugs_at_fda(search: [], sort: [], count: [], skip: 0, limit: 1) click to toggle source

@param search [Array<Hash>] Search fields defined in open.fda.gov/apis/drug/event/searchable-fields/ @param sort [Array<Hash>] Sort fields defined in open.fda.gov/apis/drug/event/searchable-fields/ @param count [Array<Hash>] Count fields defined open.fda.gov/apis/drug/event/searchable-fields/ @param skip [Integer] Number of results to skip @param limit [Integer] Number of results to return @return Response from the API parsed as JSON

# File lib/open_fda_api/drugs.rb, line 71
def drugs_at_fda(search: [], sort: [], count: [], skip: 0, limit: 1)
  endpoint = "drugsfda.json"
  inputs   = build_inputs(search: search, sort: sort, count: count, skip: skip, limit: limit)
  query    = build_query(inputs, {}) # TODO: Upload valid fields
  make_request(endpoint, query)
end
ndc_directory(search: [], sort: [], count: [], skip: 0, limit: 1) click to toggle source

@param search [Array<Hash>] Search fields defined in open.fda.gov/apis/drug/event/searchable-fields/ @param sort [Array<Hash>] Sort fields defined in open.fda.gov/apis/drug/event/searchable-fields/ @param count [Array<Hash>] Count fields defined open.fda.gov/apis/drug/event/searchable-fields/ @param skip [Integer] Number of results to skip @param limit [Integer] Number of results to return @return Response from the API parsed as JSON

# File lib/open_fda_api/drugs.rb, line 45
def ndc_directory(search: [], sort: [], count: [], skip: 0, limit: 1)
  endpoint = "ndc.json"
  inputs   = build_inputs(search: search, sort: sort, count: count, skip: skip, limit: limit)
  query    = build_query(inputs, {}) # TODO: Upload valid fields
  make_request(endpoint, query)
end
product_labeling(search: [], sort: [], count: [], skip: 0, limit: 1) click to toggle source

@param search [Array<Hash>] Search fields defined in open.fda.gov/apis/drug/event/searchable-fields/ @param sort [Array<Hash>] Sort fields defined in open.fda.gov/apis/drug/event/searchable-fields/ @param count [Array<Hash>] Count fields defined open.fda.gov/apis/drug/event/searchable-fields/ @param skip [Integer] Number of results to skip @param limit [Integer] Number of results to return @return Response from the API parsed as JSON

# File lib/open_fda_api/drugs.rb, line 32
def product_labeling(search: [], sort: [], count: [], skip: 0, limit: 1)
  endpoint = "label.json"
  inputs   = build_inputs(search: search, sort: sort, count: count, skip: skip, limit: limit)
  query    = build_query(inputs, {}) # TODO: Upload valid fields
  make_request(endpoint, query)
end
recall_enforcement_reports(search: [], sort: [], count: [], skip: 0, limit: 1) click to toggle source

@param search [Array<Hash>] Search fields defined in open.fda.gov/apis/drug/event/searchable-fields/ @param sort [Array<Hash>] Sort fields defined in open.fda.gov/apis/drug/event/searchable-fields/ @param count [Array<Hash>] Count fields defined open.fda.gov/apis/drug/event/searchable-fields/ @param skip [Integer] Number of results to skip @param limit [Integer] Number of results to return @return Response from the API parsed as JSON

# File lib/open_fda_api/drugs.rb, line 58
def recall_enforcement_reports(search: [], sort: [], count: [], skip: 0, limit: 1)
  endpoint = "enforcement.json"
  inputs   = build_inputs(search: search, sort: sort, count: count, skip: skip, limit: limit)
  query    = build_query(inputs, {}) # TODO: Upload valid fields
  make_request(endpoint, query)
end

Private Instance Methods

endpoint_path() click to toggle source
# File lib/open_fda_api/drugs.rb, line 84
def endpoint_path
  "/drug"
end