Sygic Travel API

This API provides access to the Sygic Travel Places data.

Authentication Each request must contain an authorization header x-api-key. To get the key please contact us.
Versioning

The latest API version is 1.0. See changelog.

The API always requires a version parameter in the URL. Changes made in the new versions will be documented in a changelog. Old versions will be supported together with the new ones following end-of-life policies which will be specified in future. While in beta, all versions are in the 0.x format and versions are supported only for a short time period.
Status You can check the API availability at the status page

URL prefix

https://api.sygictravelapi.com/1.0/{lang}


Parameters

name type example description
lang inlined in path
enum["en", "fr", "de", "es", "nl", "pt", "it", "ru", "cs", "sk", "pl", "tr", "zh", "ko"]

Places #

Places API provides detailed information about Sygic Travel places as well as advanced search & filtering on whole places database.

Place levels

Each place has a level property that describes the type of the place by administration level. Supported levels are:
continent, country, state, region, county, city, town, village, settlement, locality, neighbourhood, archipelago, islandpoi

Place categories

We use 11 simple categories for places to allow easy selection without the need to use complex tag queries. Each place can have multiple categories assigned describing different kinds of visitor interest. Supported categories are: discovering, eating, going_out, hiking, playing, relaxing, shopping, sightseeing, sleeping, doing_sports, traveling. You can use our trip planner app to browse the categories.

Please note that sleeping category is only available to partners that have a valid API access contract with Booking.com.

Place tags

Each place can have multiple tags which describe it or it’s properties. Tags can be used to filter places. See the list of available tags.

Geographical attributes

Places and certain other objects can have geographical attributes describing their location and area. Supported attributes are:

  • location – Object with lat (latitude) and lng (longitude) in degrees.
  • bounding_box – Object with south, west, north, east in degrees. Specifies bounds of places that have an area.
  • quadkey – Map tile coordinate using Mercator (Google/Bing) projection. For details see Bing Maps docs or Maptiler.org.

Examples

Please notice examples don't work in browser since the x-api-key header is mandatory. You can use tools like Postman.

  • Top twenty restaurants in London: https://api.sygictravelapi.com/1.0/en/places/list?parents=city:1&categories=eating&limit=20
  • Top ten restaurants in an area: https://api.sygictravelapi.com/1.0/en/places/list?bounds=51.487744,-0.1879067,51.526849,-0.0464577&categories=eating
  • Top ten pois an area: https://api.sygictravelapi.com/1.0/en/places/list?bounds=51.487744,-0.1879067,51.526849,-0.0464577&levels=poi
  • Fulltext query search in an area: https://api.sygictravelapi.com/1.0/en/places/list?query=Tower&bounds=51.487744,-0.1879067,51.526849,-0.0464577
  • Detailed information about the Eiffel Tower: https://api.sygictravelapi.com/1.0/en/places/poi:530
  • Eiffel Tower media: https://api.sygictravelapi.com/1.0/en/places/poi:530/media
#

This endpoint returns basic information about places. It is designed for fast performance for usecases such as fulltext search, place lists, map, etc.

Parameters

name type example description
query optional
string
"Eiffel Tower"

Fulltext search query. Supports partial prefix & fuzzy matching, matches also against names of parent places, and works in multiple languages.

levels optional
string
"city"

Limit results by levels. It is possible to pass multiple tags. Separators have to be url-encoded, allowed options are: | is logical OR, separator , is logical AND. AND and OR logic cannot be mixed. See section Place levels.

categories optional
string
"sightseeing|restaurant"

Limit results by categories. It is possible to pass multiple categories. Separators have to be url-encoded, allowed options are: | is logical OR, separator , is logical AND. AND and OR logic cannot be mixed. See section Place categories.

map_tiles optional
string
"210313123|210313122"

Limit results to area defined by quadkey. See section Geographical attributes. You can provide multiple map_tiles separeated by | (logical OR). All map tiles have to be same length. Using multiple map_tiles with map_spread will also change behaviour of limit parameter, so that limit is applied per each tile.

map_spread optional
int
1

Possible values are from <0-3> interval (1 subdivides area to 4 subareas, 2 to 16, and 3 to 64). Equal amount of pois is being picked for each area to fill the limit. This makes pois being laid out evenly. Otherwise pois from center of the city would suppress pois with lower rating from the outer districts of city, because the city center would take all the limit.

bounds optional
string
"48.858,2.294,48.860,2.296"

Limit results to area defined by bounds. Bounds are defined by string composed of four floats in format {south},{west},{north},{east}. The units are in degrees of latitude/longi­tude."

tags optional
string
"Restaurant|Bar"

Limit results by tags. It is possible to pass multiple tags. Separators have to be url-encoded, allowed options are: | is logical OR, separator , is logical AND. AND and OR logic cannot be mixed.

parents optional
string
"city:14"

Limit results by ID of parent place. It is possible to pass multiple parents. Separators have to be url-encoded, allowed options are: | is logical OR, separator , is logical AND. AND and OR logic cannot be mixed.

limit optional
int
200

Limit the number of returned results. Default value is 10, max value is 512. With map_spread the value must be divisible by 4map_spread e.g. 4<sup>2</sup>.

Body

{ status_code: 200 int server_timestamp: "2017-04-05T11:42:50+00:00" datetime (YYYY-mm-ddTHH:ii:ssZ) data: { places: [ { id: "poi:530" string level: "poi" string

See section Place levels.

categories: [ "sightseeing" string 0…∞ ]

See section Place categories.

rating: 9.555 float

Popularity rating of the place in range <0-10>. Higher rating means higher popularity.

quadkey: "120212302033313333" string

See section Geographical attributes.

location: { lat: 45.456 float lng: 2.456 float }

See section Geographical attributes.

bounding_box: { south: 50.076 float west: 14.412 float north: 50.078 float east: 14.414 float }|null

See section Geographical attributes.

name: "Eiffel Tower" string name_suffix: "Paris, France" string|null perex: "The most iconic sight in all of Paris. Do not miss this iron lady known all around the world. The views from the top are..." string|null

Beginning of place description, up to 160 characters.

url: "https://travel.sygic.com/go/poi:530" string|null

URL of place overview on Sygic Travel. Custom Places do not have an url.

thumbnail_url: "https://media-cdn.sygictraveldata.com/media/poi:530" string|null

Image of place in dimensions 150×150 pixels.

marker: "sightseeing:tower:lookout" string

Name of the suggested marker icon. Each part after ‚:‘ character makes it more specific. You can use only prefix of the name with more common icon. Default value is default.

parent_ids: [ "city:14" string 0…∞ ]

Array of IDs of parent places.

star_rating: float|null

Rating in stars from 0 to 5.

star_rating_unofficial: float|null

Star rating which is not officially confirmed.

customer_rating: float|null

The customer rating on scale from 0 to 10 (the higher the better).

}
0…∞
]
}
}
#

This endpoint returns complete information about places. The response includes also basic information from /places/list endpoint.

Parameters

name type example description
ids
string
"poi:530|poi:530"

Body

{ status_code: 200 int server_timestamp: "2017-04-05T11:42:50+00:00" datetime (YYYY-mm-ddTHH:ii:ssZ) data: { places: [ { id: "poi:530" string level: "poi" string

See section Place levels.

categories: [ "sightseeing" string 0…∞ ]

See section Place categories.

rating: 9.555 float

Popularity rating of the place in range <0-10>. Higher rating means higher popularity.

quadkey: "120212302033313333" string

See section Geographical attributes.

location: { lat: 45.456 float lng: 2.456 float }

See section Geographical attributes.

bounding_box: { south: 50.076 float west: 14.412 float north: 50.078 float east: 14.414 float }|null

See section Geographical attributes.

name: "Eiffel Tower" string name_suffix: "Paris, France" string|null is_deleted: false bool

Some place can be no longer available for various reasons. The API still returns such a place when it is requested by id.

perex: "The most iconic sight in all of Paris. Do not miss this iron lady known all around the world. The views from the top are..." string|null

Beginning of place description, up to 160 characters.

url: "https://travel.sygic.com/go/poi:530" string|null

URL of place overview on Sygic Travel. Custom Places do not have an url.

thumbnail_url: "https://media-cdn.sygictraveldata.com/media/poi:530" string|null

Image of place in dimensions 150×150 pixels.

marker: "sightseeing:tower:lookout" string

Name of the suggested marker icon. Each part after ‚:‘ character makes it more specific. You can use only prefix of the name with more common icon. Default value is default.

parent_ids: [ "city:14" string 0…∞ ]

Array of IDs of parent places.

tags: [ { key: "Restaurant" string name: "Ristorante" string } 0…∞ ] description: { text: "The most iconic sight in all of Paris. Do not miss this iron lady known all around the world. The views from the top are breath-taking." string provider: string|null

Description has to be attributed. Display provider whenever you display description and provider is specified.

translation_provider: string|null

Description translation has to be attributed. Display translation provider whenever you display description and translation_pro­vider is specified.

link: string|null

Link contains an URL of the source. It is recommended to use it for attribution together with the provider.

}
|null
address: "Purkyňova 649/127" string|null admission: "Adults: €11" string|null duration: 3600 int|null

Expected duration of visit in seconds.

email: "email@example.com" string|null opening_hours: "Open daily: Mid-June - early Sep: 9 a.m. - 12:45" string|null phone: "+33 892 70 12 39" string|null main_media: { usage: { square: "m:62951" string landscape: "m:62951" string portrait: "m:62951" string video_preview: "m:62951" string|null }

Recommended media for specific display cases

media: [ { id: "m:1234" string type: enum["photo", "photo360", "video", "video360"] url_template: "https://media-cdn.sygictraveldata.com/media/{size}/612664395a40232133447d33247d383235343637373932.jpg" string

{size} has to be relpaced i.e. by 400x300. For full description of size see media endpoint description.

url: "https://media-cdn.sygictraveldata.com/media/612664395a40232133447d33247d383235343637373932.jpg" string

Path to original.

original: { size: 1017931 int|null

Size of original media file

width: 1024 int|null

Width of original media

height: 768 int|null

Height of original media

}
suitability: [ enum["portrait", "landscape", "square", "video_preview"] 0…∞ ]

List of preferred suitability

created_at: "2016-07-10T12:47:51+0000" string source: { provider: "user_upload" string name: "Fotolia" string|null external_id: 123456 string|null } created_by: "55963aff54537" string|null attribution: { title_url: "Nice tower" string|null license: "CC-BY-SA" string|null other: string|null author_url: "http://www.example.com/author" string|null author: "Lojza Bojza" string|null title: "Eiffel Tower" string|null license_url: "http://creativecommons.org/licenses/by/4.0/" string|null } location: { lat: 10.51 float lng: 20.52 float }|null
}
0…∞
]
}
|null
star_rating: float|null

Rating in stars from 0 to 5.

star_rating_unofficial: float|null

Star rating which is not officially confirmed.

customer_rating: float|null

The customer rating on scale from 0 to 10 (the higher the better).

references: [ { id: 123 int title: "Official website" string type: "link:official" string language_id: "en" string|null url: "http://www.tour-eiffel.com/" string supplier: "Wikipedia" string|null priority: 0 int

Use for ordering (the higher value the higher priority).

currency: "EUR" string|null price: 99.9 float|null flags: [ "top_seller" string 0…∞ ]
}
0…∞
]
}
0…∞
]
}
}
#

This endpoint returns complete information about place. The response includes also basic information from /places/list endpoint.

Parameters

name type example description
id inlined in path
string
"poi:530"

Body

{ status_code: 200 int server_timestamp: "2017-04-05T11:42:50+00:00" datetime (YYYY-mm-ddTHH:ii:ssZ) data: { place: { id: "poi:530" string level: "poi" string

See section Place levels.

categories: [ "sightseeing" string 0…∞ ]

See section Place categories.

rating: 9.555 float

Popularity rating of the place in range <0-10>. Higher rating means higher popularity.

quadkey: "120212302033313333" string

See section Geographical attributes.

location: { lat: 45.456 float lng: 2.456 float }

See section Geographical attributes.

bounding_box: { south: 50.076 float west: 14.412 float north: 50.078 float east: 14.414 float }|null

See section Geographical attributes.

name: "Eiffel Tower" string name_suffix: "Paris, France" string|null is_deleted: false bool

Some place can be no longer available for various reasons. The API still returns such a place when it is requested by id.

perex: "The most iconic sight in all of Paris. Do not miss this iron lady known all around the world. The views from the top are..." string|null

Beginning of place description, up to 160 characters.

url: "https://travel.sygic.com/go/poi:530" string|null

URL of place overview on Sygic Travel. Custom Places do not have an url.

thumbnail_url: "https://media-cdn.sygictraveldata.com/media/poi:530" string|null

Image of place in dimensions 150×150 pixels.

marker: "sightseeing:tower:lookout" string

Name of the suggested marker icon. Each part after ‚:‘ character makes it more specific. You can use only prefix of the name with more common icon. Default value is default.

parent_ids: [ "city:14" string 0…∞ ]

Array of IDs of parent places.

tags: [ { key: "Restaurant" string name: "Ristorante" string } 0…∞ ] description: { text: "The most iconic sight in all of Paris. Do not miss this iron lady known all around the world. The views from the top are breath-taking." string provider: string|null

Description has to be attributed. Display provider whenever you display description and provider is specified.

translation_provider: string|null

Description translation has to be attributed. Display translation provider whenever you display description and translation_pro­vider is specified.

link: string|null

Link contains an URL of the source. It is recommended to use it for attribution together with the provider.

}
|null
address: "Purkyňova 649/127" string|null admission: "Adults: €11" string|null duration: 3600 int|null

Expected duration of visit in seconds.

email: "email@example.com" string|null opening_hours: "Open daily: Mid-June - early Sep: 9 a.m. - 12:45" string|null phone: "+33 892 70 12 39" string|null main_media: { usage: { square: "m:62951" string landscape: "m:62951" string portrait: "m:62951" string video_preview: "m:62951" string|null }

Recommended media for specific display cases

media: [ { id: "m:1234" string type: enum["photo", "photo360", "video", "video360"] url_template: "https://media-cdn.sygictraveldata.com/media/{size}/612664395a40232133447d33247d383235343637373932.jpg" string

{size} has to be relpaced i.e. by 400x300. For full description of size see media endpoint description.

url: "https://media-cdn.sygictraveldata.com/media/612664395a40232133447d33247d383235343637373932.jpg" string

Path to original.

original: { size: 1017931 int|null

Size of original media file

width: 1024 int|null

Width of original media

height: 768 int|null

Height of original media

}
suitability: [ enum["portrait", "landscape", "square", "video_preview"] 0…∞ ]

List of preferred suitability

created_at: "2016-07-10T12:47:51+0000" string source: { provider: "user_upload" string name: "Fotolia" string|null external_id: 123456 string|null } created_by: "55963aff54537" string|null attribution: { title_url: "Nice tower" string|null license: "CC-BY-SA" string|null other: string|null author_url: "http://www.example.com/author" string|null author: "Lojza Bojza" string|null title: "Eiffel Tower" string|null license_url: "http://creativecommons.org/licenses/by/4.0/" string|null } location: { lat: 10.51 float lng: 20.52 float }|null
}
0…∞
]
}
|null
star_rating: float|null

Rating in stars from 0 to 5.

star_rating_unofficial: float|null

Star rating which is not officially confirmed.

customer_rating: float|null

The customer rating on scale from 0 to 10 (the higher the better).

references: [ { id: 123 int title: "Official website" string type: "link:official" string language_id: "en" string|null url: "http://www.tour-eiffel.com/" string supplier: "Wikipedia" string|null priority: 0 int

Use for ordering (the higher value the higher priority).

currency: "EUR" string|null price: 99.9 float|null flags: [ "top_seller" string 0…∞ ]
}
0…∞
]
}
}
}
#

Parameters

name type example description
id inlined in path
string

Body

{ status_code: 200 int server_timestamp: "2017-04-05T11:42:50+00:00" datetime (YYYY-mm-ddTHH:ii:ssZ) data: { geometry: null|any

Null or valid GeoJSON format

is_shape: bool

Describes if geometry is only a point or a geometry with a shape.

}
}
#

Parameters

name type example description
from
date (YYYY-MM-DD)
to
date (YYYY-MM-DD)

Result includes this day.

id inlined in path
string

Body

{ status_code: 200 int server_timestamp: "2017-04-05T11:42:50+00:00" datetime (YYYY-mm-ddTHH:ii:ssZ) data: { opening_hours: { \d{4}-\d{2}-\d{2}: [ { opening: string(~\d{2}:\d{2}:\d{2}~)

In h:m:s format.

closing: string(~\d{2}:\d{2}:\d{2}~)

In h:m:s format.

note: null|string
}
0…∞
]
}
}
}
#

Detect parents of given location. The parents are ordered by area size.

Parameters

name type example description
location
string
"49.1943639,16.5994451"

Define location for parent detection. Location is defined by string composed of two floats in format {latitude},{longitude}. The units are in degrees of latitude/longitude.

Body

{ status_code: 200 int server_timestamp: "2017-04-05T11:42:50+00:00" datetime (YYYY-mm-ddTHH:ii:ssZ) data: { places: [ { id: "poi:530" string level: "poi" string

See section Place levels.

categories: [ "sightseeing" string 0…∞ ]

See section Place categories.

rating: 9.555 float

Popularity rating of the place in range <0-10>. Higher rating means higher popularity.

quadkey: "120212302033313333" string

See section Geographical attributes.

location: { lat: 45.456 float lng: 2.456 float }

See section Geographical attributes.

bounding_box: { south: 50.076 float west: 14.412 float north: 50.078 float east: 14.414 float }|null

See section Geographical attributes.

name: "Eiffel Tower" string name_suffix: "Paris, France" string|null perex: "The most iconic sight in all of Paris. Do not miss this iron lady known all around the world. The views from the top are..." string|null

Beginning of place description, up to 160 characters.

url: "https://travel.sygic.com/go/poi:530" string|null

URL of place overview on Sygic Travel. Custom Places do not have an url.

thumbnail_url: "https://media-cdn.sygictraveldata.com/media/poi:530" string|null

Image of place in dimensions 150×150 pixels.

marker: "sightseeing:tower:lookout" string

Name of the suggested marker icon. Each part after ‚:‘ character makes it more specific. You can use only prefix of the name with more common icon. Default value is default.

parent_ids: [ "city:14" string 0…∞ ]

Array of IDs of parent places.

star_rating: float|null

Rating in stars from 0 to 5.

star_rating_unofficial: float|null

Star rating which is not officially confirmed.

customer_rating: float|null

The customer rating on scale from 0 to 10 (the higher the better).

}
0…∞
]
}
}
#

Detect place that covers enough of the area and his parents in area. The parents are selected and ordered by the coverage of the area.

Parameters

name type example description
bounds optional
string
"49.08825778,11.27197265,50.67383524,21.46728515"

Define area for parent detection by bounds. Bounds are defined by string composed of four floats in format {south},{west},{north},{east}. The units are in degrees of latitude/longi­tude."

map_tile_bounds optional
string
"12021230,12021131"

Define area for parent detection by quadkeys. See section Geographical attributes. You should provide two quadkeys separated by comma. The first one represents south west corner of the area and the second one the north east corner of the area.

Body

{ status_code: 200 int server_timestamp: "2017-04-05T11:42:50+00:00" datetime (YYYY-mm-ddTHH:ii:ssZ) data: { places: [ { id: "poi:530" string level: "poi" string

See section Place levels.

categories: [ "sightseeing" string 0…∞ ]

See section Place categories.

rating: 9.555 float

Popularity rating of the place in range <0-10>. Higher rating means higher popularity.

quadkey: "120212302033313333" string

See section Geographical attributes.

location: { lat: 45.456 float lng: 2.456 float }

See section Geographical attributes.

bounding_box: { south: 50.076 float west: 14.412 float north: 50.078 float east: 14.414 float }|null

See section Geographical attributes.

name: "Eiffel Tower" string name_suffix: "Paris, France" string|null perex: "The most iconic sight in all of Paris. Do not miss this iron lady known all around the world. The views from the top are..." string|null

Beginning of place description, up to 160 characters.

url: "https://travel.sygic.com/go/poi:530" string|null

URL of place overview on Sygic Travel. Custom Places do not have an url.

thumbnail_url: "https://media-cdn.sygictraveldata.com/media/poi:530" string|null

Image of place in dimensions 150×150 pixels.

marker: "sightseeing:tower:lookout" string

Name of the suggested marker icon. Each part after ‚:‘ character makes it more specific. You can use only prefix of the name with more common icon. Default value is default.

parent_ids: [ "city:14" string 0…∞ ]

Array of IDs of parent places.

star_rating: float|null

Rating in stars from 0 to 5.

star_rating_unofficial: float|null

Star rating which is not officially confirmed.

customer_rating: float|null

The customer rating on scale from 0 to 10 (the higher the better).

}
0…∞
]
}
}

Media #

Media API provides photos and videos for Sygic Travel places together with detailed metadata, photo resizing and video previews.

#

Parameters

name type example description
id inlined in path
string

Value of property url_template returned within the response contains {size} placeholder which has to be replaced by valid size value.

Photos:
Supported size values are ({W} – width in pixels, {H} – height in pixels):

  • {W}x{H} – Image is resized to match exactly the requested size. If one edge overlaps, image is cropped.
  • {W}x{H}nc (no-crop) One edge matches the requested size, other may be smaller according to the aspect ratio.
  • {W}x{H}ncfill (no-crop-fill) One edge matches the requested size, other may be bigger according to the aspect ratio.

Videos:

  • For videos the above values will generate thumbnails using the same rules as for photos.
  • Optionally, for 360° videos you may want get an original thumbnail without the center cropping; use fullsize placeholder for this.
  • To get the original resized video (a video with lower quiality), put a 1080p and 720p as placeholder. A 1080p video may redirect to lower quality if 1080p not present.

Body

{ status_code: 200 int server_timestamp: "2017-04-05T11:42:50+00:00" datetime (YYYY-mm-ddTHH:ii:ssZ) data: { media: [ { id: "m:1234" string type: enum["photo", "photo360", "video", "video360"] url_template: "https://media-cdn.sygictraveldata.com/media/{size}/612664395a40232133447d33247d383235343637373932.jpg" string

{size} has to be relpaced i.e. by 400x300. For full description of size see media endpoint description.

url: "https://media-cdn.sygictraveldata.com/media/612664395a40232133447d33247d383235343637373932.jpg" string

Path to original.

original: { size: 1017931 int|null

Size of original media file

width: 1024 int|null

Width of original media

height: 768 int|null

Height of original media

}
suitability: [ enum["portrait", "landscape", "square", "video_preview"] 0…∞ ]

List of preferred suitability

created_at: "2016-07-10T12:47:51+0000" string source: { provider: "user_upload" string name: "Fotolia" string|null external_id: 123456 string|null } created_by: "55963aff54537" string|null attribution: { title_url: "Nice tower" string|null license: "CC-BY-SA" string|null other: string|null author_url: "http://www.example.com/author" string|null author: "Lojza Bojza" string|null title: "Eiffel Tower" string|null license_url: "http://creativecommons.org/licenses/by/4.0/" string|null } location: { lat: 10.51 float lng: 20.52 float }|null
}
0…∞
]
}
}

References #

#

Parameters

name type example description
ids
string
"903|2|32"

list of reference ids connected with |

date_from
date (YYYY-MM-DD)
"2017-10-01"
date_to
date (YYYY-MM-DD)
"2017-10-03"
persons
int 1…∞

Body

{ status_code: 200 int server_timestamp: "2017-04-05T11:42:50+00:00" datetime (YYYY-mm-ddTHH:ii:ssZ) data: { availabilities: [ { id: int

Reference id.

is_available: bool price: null|float

null = unknown price

}
0…∞
]
}
}

Tours #

#

Parameters

name type example description
destination_id
string
"city:11"
page optional
int 1…∞
2

Requested page. Each page contains 20 tours.

sort_by optional
enum["price", "rating", "top_sellers"]
"price"

Field used for sorting. Default is rating_count

sort_direction optional
enum["asc", "desc"]
"asc"

DESC is not supported for top_sellers sorting.

Body

{ status_code: 200 int server_timestamp: "2017-04-05T11:42:50+00:00" datetime (YYYY-mm-ddTHH:ii:ssZ) data: { tours: [ { id: "TE-E-Ticket" string supplier: "viator" string title: "TE-E-Ticket" string perex: "See Paris from the sky at the top of the Iron Lady, then from the Seine river on a commented cruise." string url: "https://www.getyourguide.com/paris-l16/paris-eiffel-tower-ticket-with-priority-access-t69655/?partner_id=J6QH2HY" string rating: 4.0164 float review_count: 152 int photo_url: "https://cdn.getyourguide.com/img/tour_img-453833-[format_id].jpg" string price: 42 float original_price: 50 float duration: "3 hours and 30 minutes" string

translated text about the length of the tour

}
0…∞
]
}
}