US Department of Transportation equipment API
Equipment search and list endpoints
Equipment search and list endpoints
swagger: '2.0'
info:
title: NHTSA childSeats equipment API
version: 1.6.0
description: Child Seat search and list endpoints
tags:
- description: Equipment search and list endpoints
name: equipment
paths:
/equipment:
get:
consumes:
- application/json
parameters:
- allowEmptyValue: false
collectionFormat: csv
description: A comma separated list of data to return (complaints, recalls, investigations, manufacturerCommunications, none, all), defaults to 'all'.
format: ''
in: query
name: data
required: false
type: string
- allowEmptyValue: false
collectionFormat: csv
description: brand of equipment
format: ''
in: query
name: brand
required: false
type: string
- allowEmptyValue: false
collectionFormat: csv
description: model of the equipment
format: ''
in: query
name: modelName
required: false
type: string
- $ref: '#/parameters/EquipmentSort'
- allowEmptyValue: false
collectionFormat: csv
default: desc
description: order in which to sort
enum:
- asc
- desc
format: ''
in: query
name: order
required: false
type: string
- allowEmptyValue: false
collectionFormat: csv
description: The maximum number of records to return
format: int32
in: query
name: max
required: false
type: integer
- allowEmptyValue: false
collectionFormat: csv
description: The offset of the records set to return for pagination.
format: int32
in: query
name: offset
required: false
type: integer
produces:
- application/json
responses:
'200':
description: Returns zero or more equipment
schema:
items:
$ref: '#/definitions/EquipmentWrapped'
title: ArrayOfEquipment
type: array
'400':
description: Invalid Request
'500':
description: Internal Server Error
tags:
- equipment
/equipment/brands:
get:
consumes:
- application/json
parameters:
- allowEmptyValue: false
collectionFormat: csv
description: The maximum number of records to return. Use '-1' to get all records.
format: int32
in: query
name: max
required: false
type: integer
- allowEmptyValue: false
collectionFormat: csv
description: The offset of the records listing (for pagination).
format: int32
in: query
name: offset
required: false
type: integer
produces:
- application/json
responses:
'200':
description: Returns all available equipment brands
'400':
description: Invalid Request
'500':
description: Internal Server Error
tags:
- equipment
/equipment/bySearch:
get:
consumes:
- application/json
parameters:
- allowEmptyValue: false
collectionFormat: csv
description: returns zero or more tires based on search query
format: ''
in: query
name: query
required: true
type: string
- $ref: '#/parameters/EquipmentSort'
- allowEmptyValue: false
collectionFormat: csv
default: desc
description: order in which to sort
enum:
- asc
- desc
format: ''
in: query
name: order
required: false
type: string
- allowEmptyValue: false
collectionFormat: csv
description: A comma separated list of data to return (complaints, recalls, investigations, manufacturerCommunications, none, all), defaults to 'all'.
format: ''
in: query
name: data
required: false
type: string
- allowEmptyValue: false
collectionFormat: csv
description: 'The maximum number of records to return, upper bound: 50.'
format: int32
in: query
name: max
required: false
type: integer
- allowEmptyValue: false
collectionFormat: csv
description: The offset of the records listing (for pagination).
format: int32
in: query
name: offset
required: false
type: integer
produces:
- application/json
responses:
'200':
description: Fuzzy search for a equipment based on manufacturer and mode
schema:
$ref: '#/definitions/EquipmentWrapped'
'400':
description: Invalid Request
'500':
description: Internal Server Error
tags:
- equipment
/equipment/{id}:
get:
consumes:
- application/json
parameters:
- collectionFormat: csv
description: ID of the equipmentDetails
format: int64
in: path
name: id
required: true
type: integer
- allowEmptyValue: false
collectionFormat: csv
description: A comma separated list of data to return (complaints, recalls, investigations, manufacturerCommunications, none, all), defaults to 'all'.
format: ''
in: query
name: data
required: false
type: string
produces:
- application/json
responses:
'200':
description: Returns a single equipmentDetails with the specified ID
schema:
$ref: '#/definitions/EquipmentWrapped'
'400':
description: Invalid Request
'500':
description: Internal Server Error
tags:
- equipment
definitions:
EquipmentWrapped:
properties:
meta:
$ref: '#/definitions/Meta'
results:
items:
$ref: '#/definitions/Equipment'
type: array
type: object
Recalls:
properties:
nhtsaCampaignNumber:
type: string
subject:
type: string
type: object
Components:
properties:
name:
type: string
type: object
Message:
properties:
errorCode:
type: string
errorDetail:
type: string
errorMessage:
type: string
userMessage:
type: string
type: object
InvestigationAggregate:
properties:
components:
items:
$ref: '#/definitions/Components'
type: array
dateClosed:
type: string
dateOpened:
type: string
nhtsaCampaignNumber:
type: string
recalls:
items:
$ref: '#/definitions/Recalls'
type: array
subject:
type: string
summary:
type: string
type:
type: string
type: object
Pagination:
properties:
count:
type: integer
currentUrl:
type: string
max:
type: integer
nextUrl:
type: string
offset:
type: integer
order:
type: string
previousUrl:
type: string
sort:
type: string
total:
type: integer
type: object
Equipment:
properties:
brand:
type: string
productName:
type: string
safetyIssues:
$ref: '#/definitions/SafetyIssueAggregate'
type: object
Investigations:
properties:
nhtsaActionNumber:
type: string
subject:
type: string
type: object
MFRCommunicationAggregate:
properties:
communicationDate:
type: string
components:
items:
$ref: '#/definitions/Components'
type: array
manufacturerCommunicationNumber:
type: string
nhtsaIdNumber:
type: string
subject:
type: string
summary:
type: string
type: object
SafetyIssueAggregate:
properties:
complaints:
items:
$ref: '#/definitions/ComplaintAggregate'
type: array
investigation:
items:
$ref: '#/definitions/InvestigationAggregate'
type: array
manufacturerCommunications:
items:
$ref: '#/definitions/MFRCommunicationAggregate'
type: array
recalls:
items:
$ref: '#/definitions/RecallAggregate'
type: array
type: object
ComplaintAggregate:
properties:
city:
type: string
components:
items:
$ref: '#/definitions/Components'
type: array
crash:
type: integer
dateFiled:
type: string
dateOfIncident:
type: string
description:
type: string
fire:
type: integer
nhtsaIdNumber:
type: string
numberOfDeaths:
type: integer
numberOfInjuries:
type: integer
stateAbbreviation:
type: string
vin:
type: string
type: object
Meta:
properties:
messages:
items:
$ref: '#/definitions/Message'
type: array
pagination:
items:
$ref: '#/definitions/Pagination'
type: array
status:
type: integer
type: object
RecallAggregate:
properties:
components:
items:
$ref: '#/definitions/Components'
type: array
consequence:
type: string
correctiveAction:
type: string
investigations:
items:
$ref: '#/definitions/Investigations'
type: array
manufacturer:
type: string
nhtsaCampaignNumber:
type: integer
notes:
type: string
potentialNumberOfUnitsAffected:
type: string
reportsReceivedDate:
type: string
subject:
type: string
summary:
type: string
type: object
parameters:
EquipmentSort:
allowEmptyValue: false
collectionFormat: csv
default: productName
description: key to sort on
enum:
- productName
- recallsCount
- investigationsCount
- complaintsCount
- manufacturerCommunicationsCount
format: ''
in: query
name: sort
required: false
type: string