2ndKitchen Restaurants API

The Restaurants API from 2ndKitchen — 1 operation(s) for restaurants.

OpenAPI Specification

2ndkitchen-restaurants-api-openapi.yml Raw ↑
openapi: 3.0.0
info:
  title: 2ndKitchen - Service Authentication Restaurants API
  version: '1.0'
servers:
- url: https://auth-staging.2ndkitchen.com
  description: staging
tags:
- name: Restaurants
paths:
  /recommend/restaurants:
    parameters:
    - in: query
      name: include
      description: Query string for the longitude, latitude, distance from the user in miles, and order by filter to get.
      schema:
        type: string
        enum:
        - longitude
        - latitude
        - distance
        - limit
        - order_by
    post:
      description: Get recommended restaurants based on distance
      tags:
      - Restaurants
      requestBody:
        required: true
        content:
          application/json:
            schema:
              required:
              - latitude
              - longitude
              properties:
                longitude:
                  description: Longitude coordinate of the users location
                  type: integer
                latitude:
                  description: Latitude coordinate of the users location
                  type: integer
                distance:
                  description: Distance in miles from user
                  type: integer
                  default: 2
                limit:
                  description: Limit to the number of restaurants to get
                  type: integer
                  default: 10
                order_by:
                  description: order by value (defaults to "distance")
                  type: string
                  default: distance
                offset:
                  description: Offsets the results by a number
                  type: integer
                  default: 0
                ids:
                  description: Ids of specific restaurants to get
                  type: array
                  items:
                    type: integer
                  example:
                  - 205
                  - 206
                  - 207
      responses:
        '200':
          description: Success if we were able to get recommended restaurants
          content:
            application/json:
              schema:
                type: object
                properties:
                  code:
                    type: string
                    example: ok
                  data:
                    type: object
                    properties:
                      restaurants:
                        type: array
                        items:
                          $ref: '#/components/schemas/RestaurantRecommendation'
components:
  schemas:
    RestaurantRecommendation:
      type: object
      properties:
        distance:
          description: Distance from location
          type: number
        restaurant:
          description: Restaurant data
          type: object
          $ref: '#/components/schemas/Restaurant'
    Coordinates:
      type: object
      properties:
        latitude:
          description: Restaurant location latitude
          type: number
        longitude:
          description: Restaurant location longitude
          type: number
    Restaurant:
      description: Restaurant that is recommended for the user
      type: object
      properties:
        id:
          description: Restaurant id
          type: integer
        name:
          description: Restaurant name
          type: string
        address:
          description: Restaurant address
          type: string
        city:
          description: Restaurant city
          type: string
        state:
          description: Restaurants state
          type: string
        zip:
          description: Restaurant zip code
          type: string
        logo:
          description: Restaurant image url for the logo
          type: string
        timezone:
          description: Restaurant timezone
          type: string
        timezone_offset:
          description: Offset used for restaurant timezone calculations
          type: integer
        phone_number:
          description: Restaurant phone number
          type: integer
        latitude:
          description: Restaurant location latitude
          type: number
        longitude:
          description: Restaurant location longitude
          type: number
        slug:
          description: SLug for the restaurant
          type: string
        commission:
          description: Restaurant commission
          type: number
        delivery_id:
          description: Restaurant delivery id
          type: integer
        notes:
          description: Restaurant notes
          type: string
        email:
          description: Restaurant email
          type: string
        supports_popup:
          description: Whether restaurant supports popup or not
          type: integer
          enum:
          - 0
          - 1
        admin_user_id:
          description: Id of restaurant admin user
          type: integer
        w9_uploaded:
          description: Whether W9 is uploaded or not
          type: integer
          enum:
          - 0
          - 1
        external_location_id:
          description: Id of external location
          type: string
        external_establishment_id:
          description: Id of restaurant establishment
          type: string
        external_establishment_name:
          description: Retaurant external establishment name
          type: string
        coordinates:
          type: object
          $ref: '#/components/schemas/Coordinates'