openapi: 3.0.3 info: title: AviationWeather.gov Alerts Products API description: Schema for public data API of AviationWeather.gov. termsOfService: /data/api/ version: v4.0 tags: - name: Products paths: /products: get: description: Returns a list of text products operationId: products_query parameters: - name: location in: query description: Location id style: form explode: false schema: type: array items: type: string - name: start in: query description: Start time schema: type: string format: date-time - name: end in: query description: End time schema: type: string format: date-time - name: office in: query description: Issuing office style: form explode: false schema: type: array items: pattern: ^[A-Z]{4}$ type: string - name: wmoid in: query description: WMO id code style: form explode: false schema: type: array items: pattern: ^[A-Z]{4}\d{2}$ type: string - name: type in: query description: Product code style: form explode: false schema: type: array items: pattern: ^\w{3}$ type: string - name: limit in: query description: Limit schema: maximum: 500 minimum: 1 type: integer responses: '200': description: success headers: X-Correlation-Id: $ref: '#/components/headers/CorrelationId' X-Request-Id: $ref: '#/components/headers/RequestId' X-Server-Id: $ref: '#/components/headers/ServerId' content: application/ld+json: schema: $ref: '#/components/schemas/TextProductCollection' default: $ref: '#/components/responses/Error' tags: - Products /products/locations: get: description: Returns a list of valid text product issuance locations operationId: product_locations responses: '200': description: success headers: X-Correlation-Id: $ref: '#/components/headers/CorrelationId' X-Request-Id: $ref: '#/components/headers/RequestId' X-Server-Id: $ref: '#/components/headers/ServerId' content: application/ld+json: schema: $ref: '#/components/schemas/TextProductLocationCollection' default: $ref: '#/components/responses/Error' parameters: [] tags: - Products /products/types: get: description: Returns a list of valid text product types and codes operationId: product_types responses: '200': description: success headers: X-Correlation-Id: $ref: '#/components/headers/CorrelationId' X-Request-Id: $ref: '#/components/headers/RequestId' X-Server-Id: $ref: '#/components/headers/ServerId' content: application/ld+json: schema: $ref: '#/components/schemas/TextProductTypeCollection' default: $ref: '#/components/responses/Error' parameters: [] tags: - Products /products/{productId}: parameters: - name: productId in: path description: . required: true schema: type: string get: description: Returns a specific text product operationId: product responses: '200': description: success headers: X-Correlation-Id: $ref: '#/components/headers/CorrelationId' X-Request-Id: $ref: '#/components/headers/RequestId' X-Server-Id: $ref: '#/components/headers/ServerId' content: application/ld+json: schema: $ref: '#/components/schemas/TextProduct' default: $ref: '#/components/responses/Error' parameters: [] tags: - Products /products/types/{typeId}: parameters: - name: typeId in: path description: . required: true schema: type: string get: description: Returns a list of text products of a given type operationId: products_type responses: '200': description: success headers: X-Correlation-Id: $ref: '#/components/headers/CorrelationId' X-Request-Id: $ref: '#/components/headers/RequestId' X-Server-Id: $ref: '#/components/headers/ServerId' content: application/ld+json: schema: $ref: '#/components/schemas/TextProductCollection' default: $ref: '#/components/responses/Error' parameters: [] tags: - Products /products/types/{typeId}/locations: parameters: - name: typeId in: path description: . required: true schema: type: string get: description: Returns a list of valid text product issuance locations for a given product type operationId: products_type_locations responses: '200': description: success headers: X-Correlation-Id: $ref: '#/components/headers/CorrelationId' X-Request-Id: $ref: '#/components/headers/RequestId' X-Server-Id: $ref: '#/components/headers/ServerId' content: application/ld+json: schema: $ref: '#/components/schemas/TextProductLocationCollection' default: $ref: '#/components/responses/Error' parameters: [] tags: - Products /products/locations/{locationId}/types: parameters: - name: locationId in: path description: . required: true schema: type: string get: description: Returns a list of valid text product types for a given issuance location operationId: location_products responses: '200': description: success headers: X-Correlation-Id: $ref: '#/components/headers/CorrelationId' X-Request-Id: $ref: '#/components/headers/RequestId' X-Server-Id: $ref: '#/components/headers/ServerId' content: application/ld+json: schema: $ref: '#/components/schemas/TextProductTypeCollection' default: $ref: '#/components/responses/Error' parameters: [] tags: - Products /products/types/{typeId}/locations/{locationId}: parameters: - name: typeId in: path description: . required: true schema: type: string - name: locationId in: path description: . required: true schema: type: string get: description: Returns a list of text products of a given type for a given issuance location operationId: products_type_location responses: '200': description: success headers: X-Correlation-Id: $ref: '#/components/headers/CorrelationId' X-Request-Id: $ref: '#/components/headers/RequestId' X-Server-Id: $ref: '#/components/headers/ServerId' content: application/ld+json: schema: $ref: '#/components/schemas/TextProductCollection' default: $ref: '#/components/responses/Error' parameters: [] tags: - Products /products/types/{typeId}/locations/{locationId}/latest: parameters: - name: typeId in: path description: . required: true schema: type: string - name: locationId in: path description: . required: true schema: type: string get: description: Returns latest text products of a given type for a given issuance location with product text operationId: latest_product_type_location responses: '200': description: success headers: X-Correlation-Id: $ref: '#/components/headers/CorrelationId' X-Request-Id: $ref: '#/components/headers/RequestId' X-Server-Id: $ref: '#/components/headers/ServerId' content: application/ld+json: schema: $ref: '#/components/schemas/TextProduct' default: $ref: '#/components/responses/Error' parameters: [] tags: - Products components: schemas: JsonLdContext: anyOf: - type: array items: {} - type: object TextProductCollection: type: object properties: '@context': $ref: '#/components/schemas/JsonLdContext' '@graph': type: array items: $ref: '#/components/schemas/TextProduct' additionalProperties: false ProblemDetail: required: - type - title - status - detail - instance - correlationId type: object properties: type: type: string description: 'A URI reference (RFC 3986) that identifies the problem type. This is only an identifier and is not necessarily a resolvable URL. ' format: uri default: about:blank examples: - urn:noaa:nws:api:UnexpectedProblem title: type: string description: A short, human-readable summary of the problem type. examples: - Unexpected Problem status: maximum: 999 minimum: 100 type: number description: 'The HTTP status code (RFC 7231, Section 6) generated by the origin server for this occurrence of the problem. ' examples: - 500 detail: type: string description: A human-readable explanation specific to this occurrence of the problem. examples: - An unexpected problem has occurred. instance: type: string description: 'A URI reference (RFC 3986) that identifies the specific occurrence of the problem. This is only an identifier and is not necessarily a resolvable URL. ' format: uri examples: - urn:noaa:nws:api:request:493c3a1d-f87e-407f-ae2c-24483f5aab63 correlationId: type: string description: 'A unique identifier for the request, used for NWS debugging purposes. Please include this identifier with any correspondence to help us investigate your issue. ' examples: - 493c3a1d-f87e-407f-ae2c-24483f5aab63 description: Detail about an error. This document conforms to RFC 7807 (Problem Details for HTTP APIs). additionalProperties: true TextProduct: type: object properties: '@context': $ref: '#/components/schemas/JsonLdContext' '@id': type: string format: uri id: type: string wmoCollectiveId: type: string issuingOffice: type: string issuanceTime: type: string format: date-time productCode: type: string productName: type: string productText: type: string additionalProperties: false TextProductTypeCollection: type: object properties: '@context': $ref: '#/components/schemas/JsonLdContext' '@graph': type: array items: required: - productCode - productName type: object properties: productCode: type: string productName: type: string additionalProperties: false additionalProperties: false TextProductLocationCollection: type: object properties: '@context': $ref: '#/components/schemas/JsonLdContext' locations: type: object additionalProperties: type: string nullable: true additionalProperties: false headers: CorrelationId: description: 'A unique identifier for the request, used for NWS debugging purposes. Please include this identifier with any correspondence to help us investigate your issue. ' schema: type: string RequestId: description: 'A unique identifier for the request, used for NWS debugging purposes. Please include this identifier with any correspondence to help us investigate your issue. ' schema: type: string ServerId: description: 'The identifier of the server that generated the response, used for NWS debugging purposes. Please include this identifier with any correspondence to help us investigate your issue. ' schema: type: string responses: Error: description: An error response. headers: X-Correlation-Id: $ref: '#/components/headers/CorrelationId' X-Request-Id: $ref: '#/components/headers/RequestId' X-Server-Id: $ref: '#/components/headers/ServerId' content: application/problem+json: schema: $ref: '#/components/schemas/ProblemDetail'