openapi: 3.0.1 info: title: FuelPriceApi description: An API to obtain fuel price information. version: '1.0' servers: - url: https://esl.caseys.io/fuelpriceapi paths: /heartbeat: get: tags: - heartbeat summary: Gets the health of the API. description: Interrogates the state of the API and its dependencies to return the API health. operationId: getHeartbeat responses: '200': description: The status of the APIs health. Healthy if all dependency health checks pass. Unhealthy if any dependency's health check fails, or if an exception occurs. content: application/json: schema: $ref: '#/components/schemas/heartbeatReport' example: status: string '500': description: An error occurred while processing the request. content: application/json: schema: $ref: '#/components/schemas/heartbeatReport' example: status: string /fuelprices: post: tags: - fuelPrices summary: Get a list of fuel prices. description: Gets a list of fuel price data for stores. operationId: getFuelPricesByStoreNumbers requestBody: description: A list of store numbers to obtain fuel price data for. content: application/json: schema: $ref: '#/components/schemas/fuelPriceParameterModel' example: storeId: - 0 responses: '200': description: This resource represents a list of fuel price data for the given stores. content: application/json: schema: $ref: '#/components/schemas/fuelPriceModel' example: storeId: 0 updateOn: string products: - fuelDescription: string productCode: string price: 0 octane: 0 streetFighter: true '400': description: The request received was in an invalid state or format. content: application/json: schema: $ref: '#/components/schemas/apiError' example: code: 0 message: string '404': description: No resource was found for the given identifier. content: application/json: schema: $ref: '#/components/schemas/apiError' example: code: 0 message: string '500': description: An error occurred while processing the request. content: application/json: schema: $ref: '#/components/schemas/apiError' example: code: 0 message: string /openapi/V3.json: get: summary: Get OpenApi Specification description: Gets the OpenApi specification in V3.json format with the parameters . operationId: getOpenApiSpec responses: '200': description: '' components: schemas: apiError: type: object properties: code: type: integer description: Status code of the error. format: int32 message: type: string description: Message that describes the error. fuelPriceModel: type: object properties: storeId: type: integer description: The number of the store. format: int32 updateOn: type: string description: The date the fuel price was updated on. format: date-time products: type: array items: $ref: '#/components/schemas/fuelProductModel' description: A collection of fuel price products. fuelPriceParameterModel: type: object properties: storeId: type: array items: type: integer format: int32 fuelProductModel: type: object properties: fuelDescription: type: string description: The description of the type of fuel. productCode: type: string description: The code of the fuel product. price: type: number description: The price of the fuel. format: double octane: type: number description: The octane rating of the fuel. format: double streetFighter: type: boolean description: Indicates high selling fuel that is advertised more often. heartbeatReport: type: object properties: status: type: string description: Description of the current status of dependencies of the API. securitySchemes: apiKeyHeader: type: apiKey name: Ocp-Apim-Subscription-Key in: header apiKeyQuery: type: apiKey name: subscription-key in: query security: - apiKeyHeader: [] - apiKeyQuery: []