Integration

Displaying events from Fienta on your own website

Displaying events

You can display all your events from Fienta right on your own website. With a little programming, you can style and format the list to match your website's styles and structure.

Public API

Our public API is organized around REST, returns JSON-encoded responses and uses standard HTTP response codes.

Endpoint

You can retrieve a list of published, non-private upcoming events of a single organiser by using endpoint:

GET https://fienta.com/<langugage>/o/<organiser_id>?format=json

<language>
Two lowercase letters indicating the language of the event. Events which are entered in other languages will still be retrieved. To get only events which have specific language, add "language_strict=1" parameter to the query.

<organiser_id>
The ID of the organiser in Fienta. You can find it from URL when visiting Settings page. 
Example: if your Settings page URL is https://fienta.com/my/organizers/1234/edit, your organiser_id is 1245.

Example: Retrieve events from organiser 1234, preferring English language:

GET https://fienta.com/en/o/1234?format=json

Example: Retrieve only German events from organiser 1234:

GET https://fienta.com/de/o/1234?format=json&language_strict=1

Past events
By default, only upcoming events are returned. To get all events, including past ones, use past=1 parameter. 

Example: Retrieve both past and upcoming events:

GET https://fienta.com/o/1234?format=json&past=1

Response

Example JSON API response

{"events": [
   {
    "id": 5678,
    "title": "Indie festival",
    "starts_at": "2020-12-16 19:00:00",
    "ends_at": "2020-12-16 21:15:00",
    "duration_string": "Mon 16. December 2020 at 19:00 - 21:15",
    "venue": "Millennium Park",
    "address": "201 E Randolph St, Chicago, IL 60602",
    "description": "An award winning festival weekender which takes place on the outskirts of ..",
    "url": "https:\/\/fienta.com\/indie-festival",
    "buy_tickets_url":"https:\/\/fienta.com\/indie-festival",
    "image_url": "https:\/\/fienta.com\/uploads\/5678.jpg",
    "organizer_name": "Smdith Events Ltd.",
    "organizer_phone": "+81 555 666",
    "organizer_email": "hello@smidthevents.com",
  },
]}

id
Unique ID of the event.

title
Title of the event.

starts_at, ends_at
Event start and end date time.

duration_string
Formatted string of start and end times.

venue
Name of the venue.

address
Address of the venue, without country name.

description
Event description, can include HTML.

url
Full URL of the event page in Fienta.

buy_tickets_url
Full URL of the event ticket sales page. If the tickets are sold in Fienta, the value equals to "url" parameter. If the tickets are sold in some external platform, the corresponding URL is returned. If the event does not have ticketing or registration, empty value is returned.

image_url
URL of the event image.

organizer_name
Name of the organiser.

organizer_phone
Phone number of the organiser.

organizer_email
Email address of the organiser.

JavaScript example 

Example of pulling events from Fienta and rendering HTML to your own website using JavaScript and jQuery:

<div id="events">
  <!-- Events will be rendered inside this div -->
</div>

<script src="https://code.jquery.com/jquery-3.4.1.min.js"></script>
<script>
jQuery(document).ready(function() {
  // HTML element which will include event list
  var container = jQuery('#events'); 
  // Pull upcoming events from Fienta
  jQuery.getJSON('https://fienta.com/en/o/1234?format=json', function(data) {
    // Cycle through the results
    data.events.forEach(function (event) {
      // Write events into DOM
      container.append(
        '<div>' +
        '<img src="' + event.image_url + '">' +
        '<h2>' + event.title + '</h2>' +
        '<p>' + event.duration_string + ' @ ' + 
        event.venue + ', ' + event.address + '</p>' +
        '<p><a href="' + event.url + '">Buy Ticket</a></p>' +
        '<p>' + event.description + '</p>' +
        '</div>'
      );
    });
  });
});
</script>

<!-- Optionally, embed ticket purchasing process -->
<script src="https://fienta.com/embed.js"></script>