---
# System prepended metadata

title: Booker API endoints

---

# Booker API endoints

## Search/Homepage search


### info


Biblioteka: https://github.com/FriendsOfSymfony/FOSElasticaBundle

Komendy elasticsearch:
booker:search:daychange
fos:elastica:populate

### Homepage  boxy

Wszystkie endpointy zwracają na sztywno do 9 wyników, które można dodatkowo konfigurować/filtrować wg:

1. lokalizacji

```
lat=<szerokość geo>&lon=<długość geo>&location_label=<miasto,województwo,kraj>
```
przy czym województwo i kraj są opcjonalne ale jeśli nie puste to separujemy przecinkiem

2. fazie:

... będącej przedewszystkim branżą lub ostatecznie tekstem w opisie salonu, zgodność z branżą będzie pozycjonowana wyżej niż zgodność z opisem

```
scrap=<fraza>
```

#### 1.1 Recomended

```
GET /api/feed/salon/promoted
```

#### 1.2 Najwyżej oceniane

```
GET /api/feed/salon/best
```

Np.: Najwyżej oceniani Wrocław
```
GET /api/feed/salon/best?lat=51.107883&lon=17.038538&location_label =Wrocław
```

#### 1.3 Ostatnio dodane

```
GET /api/feed/salon/latest
```

Np.: Nowe salony w Gdańsku
```
/api/feed/salon/latest?lat=54.348291&lon=18.654023&location_label=Gdańsk
```

Np.: Nowe salony świadczące Fryzjerswo męskie w Gdańsku
```
/api/feed/salon/latest?scrap=Fryzjer+m%C4%99ski&lat=54.348291&lon=18.654023&location_label=Gda%C5%84sk,%20wojew%C3%B3dztwo%20pomorskie,%20Polska
```


#### 1.4 Uproszczone ogólne szybkie szukanie

Zastępuje ~~/api/core/salon/livesearch~~
Uproszczone wyszukiwanie salonów wg. kategorii i lokalizacji pasujących do frazy.

```
GET /api/feed/salon/?scrap=<fraza>
```

Np.: Barberzy w Gdańsku
```
/api/feed/salon/livesearch?scrap=Barber&lat=54.348291&lon=18.654023&location_label=Gdańsk
```

### Wyszukiwarka główna

Endpoint do wyszukiwania:

```
GET /api/search/
```

filtry (jeden z trzech : `scrap`, `lat`=&`lon`=, `location_label` jest obowiązkowy):


`scrap` - fraza będąca kategorią, branżą, usługą, nazwą firmy/salonu

`lat`=<szerokość geo>&`lon`=<długość geo> - geo lokalizacja precyzująca szukanie, pomaga uniknąć niejednoznaczności w nazwie miejscowości
np.: lat=54.348291&lon=18.654023

[opcja] `radius` - promień od wybranej lokalizacji w km, domyśłnie 20km, możliwe wartości : '5km', '10km', '15km', '20km', '25km', '50km'

`location_label`=<miasto>,<województwo>,<kraj> - nazwa miejscowości z opcjonalną dodatkową informacją o województwie i kraju

[opcja] `start` - szukaj wolnych terminów dnia i opcjonalnie godziny z minutami (ISO 8601),np.: 2023-08-21T00:00, 2023-08-22T14:00

[opcja] `end` - szukaj wolnych termniów do (ISO 8601),np.: 2023-08-21T00:00, 2023-08-22T14:00

[opcja] `priceMin`, np. 99.89

[opcja] `priceMax`
    
[opcja] `isRestricted`=true - pokaż tylko salony z rezerwacją online

[opcja] `sort` - sortuj po jakości dopasowania ("rating-best") lub najbliższych względem wskazanej lokalizacji ("location-close")

[opcja] `item_per_page` - ilość wyników per strona, max 100


Result:
 nowe pole z datą najbliższego wolnego terminu 
    ``` "firstAvailableSpot": "2023-08-24T11:45"    ```

```json
{
    "result": {
        "salons": {
            "results": [
                {
                    "uuid": "9e680256-8d41-39db-9eb4-d5be69bad3a3",
                    "slug": "gabinet-kosmetyczny-besza",
                    "location": {
                        "lat": 54.390814,
                        "lon": 18.609648
                    },
                    "address": "Żwirki I Wigury 4, 80-463 Gdańsk, województwo pomorskie, Polska",
                    "name": "Gabinet kosmetyczny BESZA ",
                    "rating": 5.0,
                    "ratingCount": 42,
                    "mainPhoto": {
                        "publicDir": "https://api.wpadaj.pl/upload/photos/2e05516ea306c2e90a281db2fee3442af13effba.jpg.webp"
                    },
                    "services": [
                        {
                            "id": 4737739,
                            "name": "Henna brwi",
                            "nameWithVariant": "Henna brwi",
                            "duration": 10,
                            "description": "",
                            "priceMin": 3000.0,
                            "priceMax": 3000.0,
                            "priceLabel": "30,00",
                            "priceLabelWithCurrency": "30,00 zł"                            
                        }
                    ],
                    "isPromoted": false,
                    "isVip": false,
                    "servicesAmount": 73,
                    "isRestricted": false,
                    "phone": "662120800",
                    "firstAvailableSpot": "2023-08-24T11:45"
                }

            ],
            "total": 1
        },
        "cards": {
            "results": [],
            "total": 0
        }
    },
    "request": {
        "scrap": "Fryzjer męski",
        "location": {
            "lat": 54.348291,
            "lon": 18.654023
        },
        "radius": "25km",
        "period": {},
        "sort": "location-close"
    },
    "pagination": {
        "pageNum": 1,
        "itemsPerPage": 1,
        "allPlsFlag": 0,
        "isActive": false
    }
}
```    
    