Echo API v1.0.4
Scroll down for code samples, example requests and responses. Select a language for code samples from the tabs above or the mobile navigation menu.
Last update: 23/02/2024
- Set video cover as optional in VideoUpdateRequest (put, patch)
 
The Echo API is a public API that has been defined and developed to give external partners the possibility to create and manage their experiences progamatically.
The API is composed of various endpoints to manage and retrieve information from Echo
- All Experiences
 - Experiences
 - Venues
 - Audiences
 - Categories
 - Communes
 - Environments
 - Formats
 
Authentication
In order to use this API, a api-key needs to be issued through Echo's website. All API requests require this API key to be provided in the api-key header. API keys are tied to a specific organization.
Rate Limiting
The API implements rate limiting to prevent abuse. By default, rate limiting is not enabled, but it might be for some API keys.
When rate limiting is enabled for an API key, the API returns the following headers to help you track your rate limit usage:
X-RateLimit-Limit-Minute: The rate limit ceiling for requests per minuteX-RateLimit-Remaining-Minute: The number of requests left for the current minuteX-RateLimit-Reset-Minute: The time at which the current rate limit window resets in Unix timeX-RateLimit-Limit-Hour: The rate limit ceiling for requests per hourX-RateLimit-Remaining-Hour: The number of requests left for the current hourX-RateLimit-Reset-Hour: The time at which the current rate limit window resets in Unix timeX-RateLimit-Limit-Day: The rate limit ceiling for requests per dayX-RateLimit-Remaining-Day: The number of requests left for the current dayX-RateLimit-Reset-Day: The time at which the current rate limit window resets in Unix time
If you exceed the rate limit, you will receive a 429 Too Many Requests response.
General Information
API calls need to be made to: https://api.echo.lu/v1/
Warning: Data models still subject to change! In case of questions or proposals, go to https://newaccount1615557201808.freshdesk.com/
Important: Only small amount of events from Events in Luxembourg were imported and attached to an organisation.
Dates: the date-time for dates has to be a date as an ISO string, as defined here: https://tools.ietf.org/html/rfc3339#section-5.6
The API expects the dates in ISO string, and on ECHO it will be displayed in 'Europe/Luxembourg' timezone.
If the date is in UTC form (preferrable):
- like 2022-04-23T18:00:00Z on ECHO it will be 23/04/2022, 20:00,
 - or for winter 2022-01-23T19:00:00Z on ECHO it will be 23/01/2022, 20:00,
 
If the date is in GMT, have to specify the offset according to when the experience is planned:
- like 2022-04-23T18:00:00+02:00 on ECHO it will be 23/04/2022, 20:00,
 - or for winter 2022-01-23T19:00:00+01:00 on ECHO it will be 23/01/2022, 20:00,
 
Authentication
- API Key (SecurityHeader)
- Parameter Name: api-key, in: header. API key issued through **Echo's website
 
 
Experiences
CancelExperience
Code samples
# You can also use wget
curl -X PATCH /experiences/{id}/cancel \
  -H 'Accept: application/json' \
  -H 'api-key: API_KEY'
PATCH /experiences/{id}/cancel HTTP/1.1
Accept: application/json
var headers = {
  'Accept':'application/json',
  'api-key':'API_KEY'
};
$.ajax({
  url: '/experiences/{id}/cancel',
  method: 'patch',
  headers: headers,
  success: function(data) {
    console.log(JSON.stringify(data));
  }
})
const fetch = require('node-fetch');
const headers = {
  'Accept':'application/json',
  'api-key':'API_KEY'
};
fetch('/experiences/{id}/cancel',
{
  method: 'PATCH',
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
require 'rest-client'
require 'json'
headers = {
  'Accept' => 'application/json',
  'api-key' => 'API_KEY'
}
result = RestClient.patch '/experiences/{id}/cancel',
  params: {
  }, headers: headers
p JSON.parse(result)
import requests
headers = {
  'Accept': 'application/json',
  'api-key': 'API_KEY'
}
r = requests.patch('/experiences/{id}/cancel', params={
}, headers = headers)
print r.json()
URL obj = new URL("/experiences/{id}/cancel");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("PATCH");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
       "bytes"
       "net/http"
)
func main() {
    headers := map[string][]string{
        "Accept": []string{"application/json"},
        "api-key": []string{"API_KEY"},
        
    }
    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("PATCH", "/experiences/{id}/cancel", data)
    req.Header = headers
    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}
PATCH /experiences/{id}/cancel
Display as Cancelled an already published experience, by setting its status to cancelled
Parameters
| Name | In | Type | Required | Description | 
|---|---|---|---|---|
| id | path | string | true | Experience ID | 
Example responses
200 Response
{
  "stats": {
    "start": 0,
    "end": 0,
    "duration": 0
  },
  "result": true
}
Responses
| Status | Meaning | Description | Schema | 
|---|---|---|---|
| 200 | OK | 200 response | CancelPostponeCompleteExperienceSuccessResponse | 
| 400 | Bad Request | 400 response | CancelPostponeCompleteExperienceErrorResponse | 
| 404 | Not Found | 404 response | CancelPostponeCompleteExperienceNotFoundResponse | 
CompleteExperience
Code samples
# You can also use wget
curl -X PATCH /experiences/{id}/complete \
  -H 'Accept: application/json' \
  -H 'api-key: API_KEY'
PATCH /experiences/{id}/complete HTTP/1.1
Accept: application/json
var headers = {
  'Accept':'application/json',
  'api-key':'API_KEY'
};
$.ajax({
  url: '/experiences/{id}/complete',
  method: 'patch',
  headers: headers,
  success: function(data) {
    console.log(JSON.stringify(data));
  }
})
const fetch = require('node-fetch');
const headers = {
  'Accept':'application/json',
  'api-key':'API_KEY'
};
fetch('/experiences/{id}/complete',
{
  method: 'PATCH',
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
require 'rest-client'
require 'json'
headers = {
  'Accept' => 'application/json',
  'api-key' => 'API_KEY'
}
result = RestClient.patch '/experiences/{id}/complete',
  params: {
  }, headers: headers
p JSON.parse(result)
import requests
headers = {
  'Accept': 'application/json',
  'api-key': 'API_KEY'
}
r = requests.patch('/experiences/{id}/complete', params={
}, headers = headers)
print r.json()
URL obj = new URL("/experiences/{id}/complete");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("PATCH");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
       "bytes"
       "net/http"
)
func main() {
    headers := map[string][]string{
        "Accept": []string{"application/json"},
        "api-key": []string{"API_KEY"},
        
    }
    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("PATCH", "/experiences/{id}/complete", data)
    req.Header = headers
    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}
PATCH /experiences/{id}/complete
Display as Complete an already published experience, by setting its status to complete
Parameters
| Name | In | Type | Required | Description | 
|---|---|---|---|---|
| id | path | string | true | Experience ID | 
Example responses
200 Response
{
  "stats": {
    "start": 0,
    "end": 0,
    "duration": 0
  },
  "result": true
}
Responses
| Status | Meaning | Description | Schema | 
|---|---|---|---|
| 200 | OK | 200 response | CancelPostponeCompleteExperienceSuccessResponse | 
| 400 | Bad Request | 400 response | CancelPostponeCompleteExperienceErrorResponse | 
| 404 | Not Found | 404 response | CancelPostponeCompleteExperienceNotFoundResponse | 
CreateExperience
Code samples
# You can also use wget
curl -X POST /https://api.echo.lu/v1/experiences \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json' \
  -H 'api-key: API_KEY'
POST /https://api.echo.lu/v1/experiences HTTP/1.1
Content-Type: application/json
Accept: application/json
var headers = {
  'Content-Type':'application/json',
  'Accept':'application/json',
  'api-key':'API_KEY'
};
$.ajax({
  url: '/https://api.echo.lu/v1/experiences',
  method: 'post',
  headers: headers,
  success: function(data) {
    console.log(JSON.stringify(data));
  }
})
const fetch = require('node-fetch');
const inputBody = '{
  "title": "string",
  "subtitle": "string",
  "pictures": [
    {
      "url": "string",
      "copy": "string",
      "alt": "string"
    }
  ],
  "videos": [
    {
      "type": "youtube",
      "url": "string",
      "cover": "string",
      "description": "string"
    }
  ],
  "dates": [
    {
      "from": "2019-08-24T14:15:22Z",
      "to": "2019-08-24T14:15:22Z",
      "duration": 0,
      "purchaseLink": "string"
    }
  ],
  "venues": [
    "string"
  ],
  "location": {
    "address": {
      "street": "string",
      "number": "string",
      "postcode": "string",
      "town": "string",
      "commune": "string",
      "country": "string",
      "longitude": "string",
      "latitude": "string",
      "gid": "string",
      "mapUrl": "string"
    }
  },
  "description": "string",
  "categories": [
    "string"
  ],
  "audiences": [
    "string"
  ],
  "languages": [
    "string"
  ],
  "environments": [
    "string"
  ],
  "formats": [
    "string"
  ],
  "tags": [
    "string"
  ],
  "contact": {
    "name": "string",
    "email": "string",
    "phone": "string",
    "website": "string",
    "company": "string"
  },
  "tickets": [
    {
      "title": "string",
      "price": 0,
      "currency": "EUR",
      "quantity": 0,
      "salesStart": "2019-08-24",
      "salesEnd": "2019-08-24"
    }
  ],
  "purchaseLink": "string",
  "luxembourgTickets": {
    "publishOnEventim": true,
    "includeSalesFee": true,
    "delivery": [
      "self-print"
    ],
    "saleLimit": 0,
    "excludedTickets": 0,
    "kulturpassTickets": 0,
    "requiresSeatingPlan": true,
    "seatingReservation": true
  },
  "salesContact": {
    "name": "string",
    "email": "string",
    "phone": "string",
    "website": "string",
    "company": "string"
  },
  "status": "draft"
}';
const headers = {
  'Content-Type':'application/json',
  'Accept':'application/json',
  'api-key':'API_KEY'
};
fetch('/https://api.echo.lu/v1/experiences',
{
  method: 'POST',
  body: inputBody,
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
require 'rest-client'
require 'json'
headers = {
  'Content-Type' => 'application/json',
  'Accept' => 'application/json',
  'api-key' => 'API_KEY'
}
result = RestClient.post '/https://api.echo.lu/v1/experiences',
  params: {
  }, headers: headers
p JSON.parse(result)
import requests
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json',
  'api-key': 'API_KEY'
}
r = requests.post('/https://api.echo.lu/v1/experiences', params={
}, headers = headers)
print r.json()
URL obj = new URL("/https://api.echo.lu/v1/experiences");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
       "bytes"
       "net/http"
)
func main() {
    headers := map[string][]string{
        "Content-Type": []string{"application/json"},
        "Accept": []string{"application/json"},
        "api-key": []string{"API_KEY"},
        
    }
    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("POST", "/https://api.echo.lu/v1/experiences", data)
    req.Header = headers
    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}
POST https://api.echo.lu/v1/experiences
Create a new experience
Body parameter
{
  "title": "string",
  "subtitle": "string",
  "pictures": [
    {
      "url": "string",
      "copy": "string",
      "alt": "string"
    }
  ],
  "videos": [
    {
      "type": "youtube",
      "url": "string",
      "cover": "string",
      "description": "string"
    }
  ],
  "dates": [
    {
      "from": "2019-08-24T14:15:22Z",
      "to": "2019-08-24T14:15:22Z",
      "duration": 0,
      "purchaseLink": "string"
    }
  ],
  "venues": [
    "string"
  ],
  "location": {
    "address": {
      "street": "string",
      "number": "string",
      "postcode": "string",
      "town": "string",
      "commune": "string",
      "country": "string",
      "longitude": "string",
      "latitude": "string",
      "gid": "string",
      "mapUrl": "string"
    }
  },
  "description": "string",
  "categories": [
    "string"
  ],
  "audiences": [
    "string"
  ],
  "languages": [
    "string"
  ],
  "environments": [
    "string"
  ],
  "formats": [
    "string"
  ],
  "tags": [
    "string"
  ],
  "contact": {
    "name": "string",
    "email": "string",
    "phone": "string",
    "website": "string",
    "company": "string"
  },
  "tickets": [
    {
      "title": "string",
      "price": 0,
      "currency": "EUR",
      "quantity": 0,
      "salesStart": "2019-08-24",
      "salesEnd": "2019-08-24"
    }
  ],
  "purchaseLink": "string",
  "luxembourgTickets": {
    "publishOnEventim": true,
    "includeSalesFee": true,
    "delivery": [
      "self-print"
    ],
    "saleLimit": 0,
    "excludedTickets": 0,
    "kulturpassTickets": 0,
    "requiresSeatingPlan": true,
    "seatingReservation": true
  },
  "salesContact": {
    "name": "string",
    "email": "string",
    "phone": "string",
    "website": "string",
    "company": "string"
  },
  "status": "draft"
}
Parameters
| Name | In | Type | Required | Description | 
|---|---|---|---|---|
| body | body | CreateExperienceRequest | true | none | 
Example responses
201 Response
{
  "stats": {
    "start": 0,
    "end": 0,
    "duration": 0
  },
  "record": {
    "id": "string",
    "title": "string",
    "subtitle": "string",
    "pictures": [
      {
        "url": "string",
        "copy": "string",
        "alt": "string",
        "originalUrl": "string",
        "fileName": "string",
        "previews": {
          "card": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          },
          "dashboard": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          },
          "detail": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          },
          "featured": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          },
          "share": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          }
        }
      }
    ],
    "videos": [
      {
        "type": "youtube",
        "url": "string",
        "cover": {
          "url": "string",
          "copy": "string",
          "alt": "string",
          "originalUrl": "string",
          "fileName": "string",
          "previews": {
            "card": {
              "size": "string",
              "fileName": "string",
              "url": "string",
              "error": {
                "code": "string",
                "message": "string"
              }
            },
            "dashboard": {
              "size": "string",
              "fileName": "string",
              "url": "string",
              "error": {
                "code": "string",
                "message": "string"
              }
            },
            "detail": {
              "size": "string",
              "fileName": "string",
              "url": "string",
              "error": {
                "code": "string",
                "message": "string"
              }
            },
            "featured": {
              "size": "string",
              "fileName": "string",
              "url": "string",
              "error": {
                "code": "string",
                "message": "string"
              }
            },
            "share": {
              "size": "string",
              "fileName": "string",
              "url": "string",
              "error": {
                "code": "string",
                "message": "string"
              }
            }
          }
        },
        "description": "string"
      }
    ],
    "dates": [
      {
        "from": "2019-08-24T14:15:22Z",
        "to": "2019-08-24T14:15:22Z",
        "duration": 0,
        "purchaseLink": "string"
      }
    ],
    "endDate": "2019-08-24T14:15:22Z",
    "venues": [
      {
        "id": "string",
        "title": "string",
        "pictures": [
          {
            "url": "string",
            "copy": "string",
            "alt": "string",
            "originalUrl": "string",
            "fileName": "string",
            "previews": {
              "card": {
                "size": "string",
                "fileName": "string",
                "url": "string",
                "error": {
                  "code": "string",
                  "message": "string"
                }
              },
              "dashboard": {
                "size": "string",
                "fileName": "string",
                "url": "string",
                "error": {
                  "code": "string",
                  "message": "string"
                }
              },
              "detail": {
                "size": "string",
                "fileName": "string",
                "url": "string",
                "error": {
                  "code": "string",
                  "message": "string"
                }
              },
              "featured": {
                "size": "string",
                "fileName": "string",
                "url": "string",
                "error": {
                  "code": "string",
                  "message": "string"
                }
              },
              "share": {
                "size": "string",
                "fileName": "string",
                "url": "string",
                "error": {
                  "code": "string",
                  "message": "string"
                }
              }
            }
          }
        ],
        "location": {
          "address": {
            "street": "string",
            "number": "string",
            "postcode": "string",
            "town": "string",
            "commune": "string",
            "country": "string",
            "longitude": "string",
            "latitude": "string",
            "gid": "string",
            "mapUrl": "string"
          }
        },
        "description": "string",
        "categories": [
          "string"
        ],
        "website": "string",
        "contact": {
          "name": "string",
          "email": "string",
          "phone": "string",
          "website": "string",
          "company": "string"
        },
        "timestamps": {
          "createdAt": "2019-08-24T14:15:22Z",
          "createdBy": "string",
          "updatedAt": "2019-08-24T14:15:22Z",
          "updatedBy": "string",
          "deletedAt": "2019-08-24T14:15:22Z",
          "deletedBy": "string"
        }
      }
    ],
    "location": {
      "address": {
        "street": "string",
        "number": "string",
        "postcode": "string",
        "town": "string",
        "commune": "string",
        "country": "string",
        "longitude": "string",
        "latitude": "string",
        "gid": "string",
        "mapUrl": "string"
      }
    },
    "description": "string",
    "categories": [
      "string"
    ],
    "tags": [
      "string"
    ],
    "audiences": [
      "string"
    ],
    "languages": [
      "string"
    ],
    "environments": [
      "string"
    ],
    "formats": [
      "string"
    ],
    "contact": {
      "name": "string",
      "email": "string",
      "phone": "string",
      "website": "string",
      "company": "string"
    },
    "tickets": [
      {
        "title": "string",
        "price": 0,
        "currency": "EUR",
        "quantity": 0,
        "salesStart": "2019-08-24",
        "salesEnd": "2019-08-24"
      }
    ],
    "purchaseLink": "string",
    "luxembourgTickets": {
      "publishOnEventim": true,
      "includeSalesFee": true,
      "delivery": [
        "self-print"
      ],
      "saleLimit": 0,
      "excludedTickets": 0,
      "kulturpassTickets": 0,
      "requiresSeatingPlan": true,
      "seatingReservation": true
    },
    "salesContact": {
      "name": "string",
      "email": "string",
      "phone": "string",
      "website": "string",
      "company": "string"
    },
    "status": {
      "current": "string",
      "startDate": "2019-08-24T14:15:22Z"
    },
    "organisationId": "string",
    "timestamps": {
      "createdAt": "2019-08-24T14:15:22Z",
      "createdBy": "string",
      "updatedAt": "2019-08-24T14:15:22Z",
      "updatedBy": "string",
      "deletedAt": "2019-08-24T14:15:22Z",
      "deletedBy": "string"
    }
  }
}
Responses
| Status | Meaning | Description | Schema | 
|---|---|---|---|
| 201 | Created | 201 response | CreateExperienceResponse | 
| 400 | Bad Request | 400 response | CreateExperienceErrorResponse | 
DeleteExperience
Code samples
# You can also use wget
curl -X DELETE /experiences/{id} \
  -H 'Accept: application/json' \
  -H 'api-key: API_KEY'
DELETE /experiences/{id} HTTP/1.1
Accept: application/json
var headers = {
  'Accept':'application/json',
  'api-key':'API_KEY'
};
$.ajax({
  url: '/experiences/{id}',
  method: 'delete',
  headers: headers,
  success: function(data) {
    console.log(JSON.stringify(data));
  }
})
const fetch = require('node-fetch');
const headers = {
  'Accept':'application/json',
  'api-key':'API_KEY'
};
fetch('/experiences/{id}',
{
  method: 'DELETE',
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
require 'rest-client'
require 'json'
headers = {
  'Accept' => 'application/json',
  'api-key' => 'API_KEY'
}
result = RestClient.delete '/experiences/{id}',
  params: {
  }, headers: headers
p JSON.parse(result)
import requests
headers = {
  'Accept': 'application/json',
  'api-key': 'API_KEY'
}
r = requests.delete('/experiences/{id}', params={
}, headers = headers)
print r.json()
URL obj = new URL("/experiences/{id}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("DELETE");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
       "bytes"
       "net/http"
)
func main() {
    headers := map[string][]string{
        "Accept": []string{"application/json"},
        "api-key": []string{"API_KEY"},
        
    }
    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("DELETE", "/experiences/{id}", data)
    req.Header = headers
    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}
DELETE /experiences/{id}
Delete an existing experience
Parameters
| Name | In | Type | Required | Description | 
|---|---|---|---|---|
| id | path | string | true | Experience ID | 
Example responses
200 Response
{
  "stats": {
    "start": 0,
    "end": 0,
    "duration": 0
  },
  "result": true
}
Responses
| Status | Meaning | Description | Schema | 
|---|---|---|---|
| 200 | OK | 200 response | DeleteExperienceSuccessResponse | 
| 400 | Bad Request | 400 response | DeleteExperienceErrorResponse | 
| 404 | Not Found | 404 response | DeleteExperienceNotFoundResponse | 
| 409 | Conflict | 409 response | DeleteExperienceConflictResponse | 
GetExperience
Code samples
# You can also use wget
curl -X GET /experiences/{id} \
  -H 'Accept: application/json' \
  -H 'api-key: API_KEY'
GET /experiences/{id} HTTP/1.1
Accept: application/json
var headers = {
  'Accept':'application/json',
  'api-key':'API_KEY'
};
$.ajax({
  url: '/experiences/{id}',
  method: 'get',
  headers: headers,
  success: function(data) {
    console.log(JSON.stringify(data));
  }
})
const fetch = require('node-fetch');
const headers = {
  'Accept':'application/json',
  'api-key':'API_KEY'
};
fetch('/experiences/{id}',
{
  method: 'GET',
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
require 'rest-client'
require 'json'
headers = {
  'Accept' => 'application/json',
  'api-key' => 'API_KEY'
}
result = RestClient.get '/experiences/{id}',
  params: {
  }, headers: headers
p JSON.parse(result)
import requests
headers = {
  'Accept': 'application/json',
  'api-key': 'API_KEY'
}
r = requests.get('/experiences/{id}', params={
}, headers = headers)
print r.json()
URL obj = new URL("/experiences/{id}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
       "bytes"
       "net/http"
)
func main() {
    headers := map[string][]string{
        "Accept": []string{"application/json"},
        "api-key": []string{"API_KEY"},
        
    }
    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "/experiences/{id}", data)
    req.Header = headers
    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}
GET /experiences/{id}
Get an existing experience
Parameters
| Name | In | Type | Required | Description | 
|---|---|---|---|---|
| id | path | string | true | Experience ID | 
Example responses
200 Response
{
  "stats": {
    "start": 0,
    "end": 0,
    "duration": 0
  },
  "record": {
    "id": "string",
    "title": "string",
    "subtitle": "string",
    "pictures": [
      {
        "url": "string",
        "copy": "string",
        "alt": "string",
        "originalUrl": "string",
        "fileName": "string",
        "previews": {
          "card": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          },
          "dashboard": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          },
          "detail": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          },
          "featured": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          },
          "share": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          }
        }
      }
    ],
    "videos": [
      {
        "type": "youtube",
        "url": "string",
        "cover": {
          "url": "string",
          "copy": "string",
          "alt": "string",
          "originalUrl": "string",
          "fileName": "string",
          "previews": {
            "card": {
              "size": "string",
              "fileName": "string",
              "url": "string",
              "error": {
                "code": "string",
                "message": "string"
              }
            },
            "dashboard": {
              "size": "string",
              "fileName": "string",
              "url": "string",
              "error": {
                "code": "string",
                "message": "string"
              }
            },
            "detail": {
              "size": "string",
              "fileName": "string",
              "url": "string",
              "error": {
                "code": "string",
                "message": "string"
              }
            },
            "featured": {
              "size": "string",
              "fileName": "string",
              "url": "string",
              "error": {
                "code": "string",
                "message": "string"
              }
            },
            "share": {
              "size": "string",
              "fileName": "string",
              "url": "string",
              "error": {
                "code": "string",
                "message": "string"
              }
            }
          }
        },
        "description": "string"
      }
    ],
    "dates": [
      {
        "from": "2019-08-24T14:15:22Z",
        "to": "2019-08-24T14:15:22Z",
        "duration": 0,
        "purchaseLink": "string"
      }
    ],
    "endDate": "2019-08-24T14:15:22Z",
    "venues": [
      {
        "id": "string",
        "title": "string",
        "pictures": [
          {
            "url": "string",
            "copy": "string",
            "alt": "string",
            "originalUrl": "string",
            "fileName": "string",
            "previews": {
              "card": {
                "size": "string",
                "fileName": "string",
                "url": "string",
                "error": {
                  "code": "string",
                  "message": "string"
                }
              },
              "dashboard": {
                "size": "string",
                "fileName": "string",
                "url": "string",
                "error": {
                  "code": "string",
                  "message": "string"
                }
              },
              "detail": {
                "size": "string",
                "fileName": "string",
                "url": "string",
                "error": {
                  "code": "string",
                  "message": "string"
                }
              },
              "featured": {
                "size": "string",
                "fileName": "string",
                "url": "string",
                "error": {
                  "code": "string",
                  "message": "string"
                }
              },
              "share": {
                "size": "string",
                "fileName": "string",
                "url": "string",
                "error": {
                  "code": "string",
                  "message": "string"
                }
              }
            }
          }
        ],
        "location": {
          "address": {
            "street": "string",
            "number": "string",
            "postcode": "string",
            "town": "string",
            "commune": "string",
            "country": "string",
            "longitude": "string",
            "latitude": "string",
            "gid": "string",
            "mapUrl": "string"
          }
        },
        "description": "string",
        "categories": [
          "string"
        ],
        "website": "string",
        "contact": {
          "name": "string",
          "email": "string",
          "phone": "string",
          "website": "string",
          "company": "string"
        },
        "timestamps": {
          "createdAt": "2019-08-24T14:15:22Z",
          "createdBy": "string",
          "updatedAt": "2019-08-24T14:15:22Z",
          "updatedBy": "string",
          "deletedAt": "2019-08-24T14:15:22Z",
          "deletedBy": "string"
        }
      }
    ],
    "location": {
      "address": {
        "street": "string",
        "number": "string",
        "postcode": "string",
        "town": "string",
        "commune": "string",
        "country": "string",
        "longitude": "string",
        "latitude": "string",
        "gid": "string",
        "mapUrl": "string"
      }
    },
    "description": "string",
    "categories": [
      "string"
    ],
    "tags": [
      "string"
    ],
    "audiences": [
      "string"
    ],
    "languages": [
      "string"
    ],
    "environments": [
      "string"
    ],
    "formats": [
      "string"
    ],
    "contact": {
      "name": "string",
      "email": "string",
      "phone": "string",
      "website": "string",
      "company": "string"
    },
    "tickets": [
      {
        "title": "string",
        "price": 0,
        "currency": "EUR",
        "quantity": 0,
        "salesStart": "2019-08-24",
        "salesEnd": "2019-08-24"
      }
    ],
    "purchaseLink": "string",
    "luxembourgTickets": {
      "publishOnEventim": true,
      "includeSalesFee": true,
      "delivery": [
        "self-print"
      ],
      "saleLimit": 0,
      "excludedTickets": 0,
      "kulturpassTickets": 0,
      "requiresSeatingPlan": true,
      "seatingReservation": true
    },
    "salesContact": {
      "name": "string",
      "email": "string",
      "phone": "string",
      "website": "string",
      "company": "string"
    },
    "status": {
      "current": "string",
      "startDate": "2019-08-24T14:15:22Z"
    },
    "organisationId": "string",
    "timestamps": {
      "createdAt": "2019-08-24T14:15:22Z",
      "createdBy": "string",
      "updatedAt": "2019-08-24T14:15:22Z",
      "updatedBy": "string",
      "deletedAt": "2019-08-24T14:15:22Z",
      "deletedBy": "string"
    }
  }
}
Responses
| Status | Meaning | Description | Schema | 
|---|---|---|---|
| 200 | OK | 200 response | GetExperienceResponse | 
| 400 | Bad Request | 400 response | GetExperienceErrorResponse | 
| 404 | Not Found | 404 response | GetExperienceNotFoundResponse | 
PatchExperience
Code samples
# You can also use wget
curl -X PATCH /experiences/{id} \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json' \
  -H 'api-key: API_KEY'
PATCH /experiences/{id} HTTP/1.1
Content-Type: application/json
Accept: application/json
var headers = {
  'Content-Type':'application/json',
  'Accept':'application/json',
  'api-key':'API_KEY'
};
$.ajax({
  url: '/experiences/{id}',
  method: 'patch',
  headers: headers,
  success: function(data) {
    console.log(JSON.stringify(data));
  }
})
const fetch = require('node-fetch');
const inputBody = '{
  "title": "string",
  "subtitle": "string",
  "pictures": [
    {
      "url": "string",
      "copy": "string",
      "alt": "string"
    }
  ],
  "videos": [
    {
      "type": "youtube",
      "url": "string",
      "cover": "string",
      "description": "string"
    }
  ],
  "dates": [
    {
      "from": "2019-08-24T14:15:22Z",
      "to": "2019-08-24T14:15:22Z",
      "duration": 0,
      "purchaseLink": "string"
    }
  ],
  "venues": [
    "string"
  ],
  "location": {
    "address": {
      "street": "string",
      "number": "string",
      "postcode": "string",
      "town": "string",
      "commune": "string",
      "country": "string",
      "longitude": "string",
      "latitude": "string",
      "gid": "string",
      "mapUrl": "string"
    }
  },
  "description": "string",
  "categories": [
    "string"
  ],
  "audiences": [
    "string"
  ],
  "languages": [
    "string"
  ],
  "environments": [
    "string"
  ],
  "formats": [
    "string"
  ],
  "tags": [
    "string"
  ],
  "contact": {
    "name": "string",
    "email": "string",
    "phone": "string",
    "website": "string",
    "company": "string"
  },
  "tickets": [
    {
      "title": "string",
      "price": 0,
      "currency": "EUR",
      "quantity": 0,
      "salesStart": "2019-08-24",
      "salesEnd": "2019-08-24"
    }
  ],
  "purchaseLink": "string",
  "luxembourgTickets": {
    "publishOnEventim": true,
    "includeSalesFee": true,
    "delivery": [
      "self-print"
    ],
    "saleLimit": 0,
    "excludedTickets": 0,
    "kulturpassTickets": 0,
    "requiresSeatingPlan": true,
    "seatingReservation": true
  },
  "salesContact": {
    "name": "string",
    "email": "string",
    "phone": "string",
    "website": "string",
    "company": "string"
  },
  "status": "draft"
}';
const headers = {
  'Content-Type':'application/json',
  'Accept':'application/json',
  'api-key':'API_KEY'
};
fetch('/experiences/{id}',
{
  method: 'PATCH',
  body: inputBody,
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
require 'rest-client'
require 'json'
headers = {
  'Content-Type' => 'application/json',
  'Accept' => 'application/json',
  'api-key' => 'API_KEY'
}
result = RestClient.patch '/experiences/{id}',
  params: {
  }, headers: headers
p JSON.parse(result)
import requests
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json',
  'api-key': 'API_KEY'
}
r = requests.patch('/experiences/{id}', params={
}, headers = headers)
print r.json()
URL obj = new URL("/experiences/{id}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("PATCH");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
       "bytes"
       "net/http"
)
func main() {
    headers := map[string][]string{
        "Content-Type": []string{"application/json"},
        "Accept": []string{"application/json"},
        "api-key": []string{"API_KEY"},
        
    }
    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("PATCH", "/experiences/{id}", data)
    req.Header = headers
    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}
PATCH /experiences/{id}
Update an existing experience
Body parameter
{
  "title": "string",
  "subtitle": "string",
  "pictures": [
    {
      "url": "string",
      "copy": "string",
      "alt": "string"
    }
  ],
  "videos": [
    {
      "type": "youtube",
      "url": "string",
      "cover": "string",
      "description": "string"
    }
  ],
  "dates": [
    {
      "from": "2019-08-24T14:15:22Z",
      "to": "2019-08-24T14:15:22Z",
      "duration": 0,
      "purchaseLink": "string"
    }
  ],
  "venues": [
    "string"
  ],
  "location": {
    "address": {
      "street": "string",
      "number": "string",
      "postcode": "string",
      "town": "string",
      "commune": "string",
      "country": "string",
      "longitude": "string",
      "latitude": "string",
      "gid": "string",
      "mapUrl": "string"
    }
  },
  "description": "string",
  "categories": [
    "string"
  ],
  "audiences": [
    "string"
  ],
  "languages": [
    "string"
  ],
  "environments": [
    "string"
  ],
  "formats": [
    "string"
  ],
  "tags": [
    "string"
  ],
  "contact": {
    "name": "string",
    "email": "string",
    "phone": "string",
    "website": "string",
    "company": "string"
  },
  "tickets": [
    {
      "title": "string",
      "price": 0,
      "currency": "EUR",
      "quantity": 0,
      "salesStart": "2019-08-24",
      "salesEnd": "2019-08-24"
    }
  ],
  "purchaseLink": "string",
  "luxembourgTickets": {
    "publishOnEventim": true,
    "includeSalesFee": true,
    "delivery": [
      "self-print"
    ],
    "saleLimit": 0,
    "excludedTickets": 0,
    "kulturpassTickets": 0,
    "requiresSeatingPlan": true,
    "seatingReservation": true
  },
  "salesContact": {
    "name": "string",
    "email": "string",
    "phone": "string",
    "website": "string",
    "company": "string"
  },
  "status": "draft"
}
Parameters
| Name | In | Type | Required | Description | 
|---|---|---|---|---|
| id | path | string | true | Experience ID | 
| body | body | UpdateExperienceRequest | true | none | 
Example responses
200 Response
{
  "stats": {
    "start": 0,
    "end": 0,
    "duration": 0
  },
  "record": {
    "id": "string",
    "title": "string",
    "subtitle": "string",
    "pictures": [
      {
        "url": "string",
        "copy": "string",
        "alt": "string",
        "originalUrl": "string",
        "fileName": "string",
        "previews": {
          "card": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          },
          "dashboard": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          },
          "detail": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          },
          "featured": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          },
          "share": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          }
        }
      }
    ],
    "videos": [
      {
        "type": "youtube",
        "url": "string",
        "cover": {
          "url": "string",
          "copy": "string",
          "alt": "string",
          "originalUrl": "string",
          "fileName": "string",
          "previews": {
            "card": {
              "size": "string",
              "fileName": "string",
              "url": "string",
              "error": {
                "code": "string",
                "message": "string"
              }
            },
            "dashboard": {
              "size": "string",
              "fileName": "string",
              "url": "string",
              "error": {
                "code": "string",
                "message": "string"
              }
            },
            "detail": {
              "size": "string",
              "fileName": "string",
              "url": "string",
              "error": {
                "code": "string",
                "message": "string"
              }
            },
            "featured": {
              "size": "string",
              "fileName": "string",
              "url": "string",
              "error": {
                "code": "string",
                "message": "string"
              }
            },
            "share": {
              "size": "string",
              "fileName": "string",
              "url": "string",
              "error": {
                "code": "string",
                "message": "string"
              }
            }
          }
        },
        "description": "string"
      }
    ],
    "dates": [
      {
        "from": "2019-08-24T14:15:22Z",
        "to": "2019-08-24T14:15:22Z",
        "duration": 0,
        "purchaseLink": "string"
      }
    ],
    "endDate": "2019-08-24T14:15:22Z",
    "venues": [
      {
        "id": "string",
        "title": "string",
        "pictures": [
          {
            "url": "string",
            "copy": "string",
            "alt": "string",
            "originalUrl": "string",
            "fileName": "string",
            "previews": {
              "card": {
                "size": "string",
                "fileName": "string",
                "url": "string",
                "error": {
                  "code": "string",
                  "message": "string"
                }
              },
              "dashboard": {
                "size": "string",
                "fileName": "string",
                "url": "string",
                "error": {
                  "code": "string",
                  "message": "string"
                }
              },
              "detail": {
                "size": "string",
                "fileName": "string",
                "url": "string",
                "error": {
                  "code": "string",
                  "message": "string"
                }
              },
              "featured": {
                "size": "string",
                "fileName": "string",
                "url": "string",
                "error": {
                  "code": "string",
                  "message": "string"
                }
              },
              "share": {
                "size": "string",
                "fileName": "string",
                "url": "string",
                "error": {
                  "code": "string",
                  "message": "string"
                }
              }
            }
          }
        ],
        "location": {
          "address": {
            "street": "string",
            "number": "string",
            "postcode": "string",
            "town": "string",
            "commune": "string",
            "country": "string",
            "longitude": "string",
            "latitude": "string",
            "gid": "string",
            "mapUrl": "string"
          }
        },
        "description": "string",
        "categories": [
          "string"
        ],
        "website": "string",
        "contact": {
          "name": "string",
          "email": "string",
          "phone": "string",
          "website": "string",
          "company": "string"
        },
        "timestamps": {
          "createdAt": "2019-08-24T14:15:22Z",
          "createdBy": "string",
          "updatedAt": "2019-08-24T14:15:22Z",
          "updatedBy": "string",
          "deletedAt": "2019-08-24T14:15:22Z",
          "deletedBy": "string"
        }
      }
    ],
    "location": {
      "address": {
        "street": "string",
        "number": "string",
        "postcode": "string",
        "town": "string",
        "commune": "string",
        "country": "string",
        "longitude": "string",
        "latitude": "string",
        "gid": "string",
        "mapUrl": "string"
      }
    },
    "description": "string",
    "categories": [
      "string"
    ],
    "tags": [
      "string"
    ],
    "audiences": [
      "string"
    ],
    "languages": [
      "string"
    ],
    "environments": [
      "string"
    ],
    "formats": [
      "string"
    ],
    "contact": {
      "name": "string",
      "email": "string",
      "phone": "string",
      "website": "string",
      "company": "string"
    },
    "tickets": [
      {
        "title": "string",
        "price": 0,
        "currency": "EUR",
        "quantity": 0,
        "salesStart": "2019-08-24",
        "salesEnd": "2019-08-24"
      }
    ],
    "purchaseLink": "string",
    "luxembourgTickets": {
      "publishOnEventim": true,
      "includeSalesFee": true,
      "delivery": [
        "self-print"
      ],
      "saleLimit": 0,
      "excludedTickets": 0,
      "kulturpassTickets": 0,
      "requiresSeatingPlan": true,
      "seatingReservation": true
    },
    "salesContact": {
      "name": "string",
      "email": "string",
      "phone": "string",
      "website": "string",
      "company": "string"
    },
    "status": {
      "current": "string",
      "startDate": "2019-08-24T14:15:22Z"
    },
    "organisationId": "string",
    "timestamps": {
      "createdAt": "2019-08-24T14:15:22Z",
      "createdBy": "string",
      "updatedAt": "2019-08-24T14:15:22Z",
      "updatedBy": "string",
      "deletedAt": "2019-08-24T14:15:22Z",
      "deletedBy": "string"
    }
  }
}
Responses
| Status | Meaning | Description | Schema | 
|---|---|---|---|
| 200 | OK | 200 response | UpdateExperienceResponse | 
| 400 | Bad Request | 400 response | UpdateExperienceErrorResponse | 
| 404 | Not Found | 404 response | UpdateExperienceNotFoundResponse | 
PutExperience
Code samples
# You can also use wget
curl -X PUT /experiences/{id} \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json' \
  -H 'api-key: API_KEY'
PUT /experiences/{id} HTTP/1.1
Content-Type: application/json
Accept: application/json
var headers = {
  'Content-Type':'application/json',
  'Accept':'application/json',
  'api-key':'API_KEY'
};
$.ajax({
  url: '/experiences/{id}',
  method: 'put',
  headers: headers,
  success: function(data) {
    console.log(JSON.stringify(data));
  }
})
const fetch = require('node-fetch');
const inputBody = '{
  "title": "string",
  "subtitle": "string",
  "pictures": [
    {
      "url": "string",
      "copy": "string",
      "alt": "string"
    }
  ],
  "videos": [
    {
      "type": "youtube",
      "url": "string",
      "cover": "string",
      "description": "string"
    }
  ],
  "dates": [
    {
      "from": "2019-08-24T14:15:22Z",
      "to": "2019-08-24T14:15:22Z",
      "duration": 0,
      "purchaseLink": "string"
    }
  ],
  "venues": [
    "string"
  ],
  "location": {
    "address": {
      "street": "string",
      "number": "string",
      "postcode": "string",
      "town": "string",
      "commune": "string",
      "country": "string",
      "longitude": "string",
      "latitude": "string",
      "gid": "string",
      "mapUrl": "string"
    }
  },
  "description": "string",
  "categories": [
    "string"
  ],
  "audiences": [
    "string"
  ],
  "languages": [
    "string"
  ],
  "environments": [
    "string"
  ],
  "formats": [
    "string"
  ],
  "tags": [
    "string"
  ],
  "contact": {
    "name": "string",
    "email": "string",
    "phone": "string",
    "website": "string",
    "company": "string"
  },
  "tickets": [
    {
      "title": "string",
      "price": 0,
      "currency": "EUR",
      "quantity": 0,
      "salesStart": "2019-08-24",
      "salesEnd": "2019-08-24"
    }
  ],
  "purchaseLink": "string",
  "luxembourgTickets": {
    "publishOnEventim": true,
    "includeSalesFee": true,
    "delivery": [
      "self-print"
    ],
    "saleLimit": 0,
    "excludedTickets": 0,
    "kulturpassTickets": 0,
    "requiresSeatingPlan": true,
    "seatingReservation": true
  },
  "salesContact": {
    "name": "string",
    "email": "string",
    "phone": "string",
    "website": "string",
    "company": "string"
  },
  "status": "draft"
}';
const headers = {
  'Content-Type':'application/json',
  'Accept':'application/json',
  'api-key':'API_KEY'
};
fetch('/experiences/{id}',
{
  method: 'PUT',
  body: inputBody,
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
require 'rest-client'
require 'json'
headers = {
  'Content-Type' => 'application/json',
  'Accept' => 'application/json',
  'api-key' => 'API_KEY'
}
result = RestClient.put '/experiences/{id}',
  params: {
  }, headers: headers
p JSON.parse(result)
import requests
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json',
  'api-key': 'API_KEY'
}
r = requests.put('/experiences/{id}', params={
}, headers = headers)
print r.json()
URL obj = new URL("/experiences/{id}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("PUT");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
       "bytes"
       "net/http"
)
func main() {
    headers := map[string][]string{
        "Content-Type": []string{"application/json"},
        "Accept": []string{"application/json"},
        "api-key": []string{"API_KEY"},
        
    }
    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("PUT", "/experiences/{id}", data)
    req.Header = headers
    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}
PUT /experiences/{id}
Update an existing experience
Body parameter
{
  "title": "string",
  "subtitle": "string",
  "pictures": [
    {
      "url": "string",
      "copy": "string",
      "alt": "string"
    }
  ],
  "videos": [
    {
      "type": "youtube",
      "url": "string",
      "cover": "string",
      "description": "string"
    }
  ],
  "dates": [
    {
      "from": "2019-08-24T14:15:22Z",
      "to": "2019-08-24T14:15:22Z",
      "duration": 0,
      "purchaseLink": "string"
    }
  ],
  "venues": [
    "string"
  ],
  "location": {
    "address": {
      "street": "string",
      "number": "string",
      "postcode": "string",
      "town": "string",
      "commune": "string",
      "country": "string",
      "longitude": "string",
      "latitude": "string",
      "gid": "string",
      "mapUrl": "string"
    }
  },
  "description": "string",
  "categories": [
    "string"
  ],
  "audiences": [
    "string"
  ],
  "languages": [
    "string"
  ],
  "environments": [
    "string"
  ],
  "formats": [
    "string"
  ],
  "tags": [
    "string"
  ],
  "contact": {
    "name": "string",
    "email": "string",
    "phone": "string",
    "website": "string",
    "company": "string"
  },
  "tickets": [
    {
      "title": "string",
      "price": 0,
      "currency": "EUR",
      "quantity": 0,
      "salesStart": "2019-08-24",
      "salesEnd": "2019-08-24"
    }
  ],
  "purchaseLink": "string",
  "luxembourgTickets": {
    "publishOnEventim": true,
    "includeSalesFee": true,
    "delivery": [
      "self-print"
    ],
    "saleLimit": 0,
    "excludedTickets": 0,
    "kulturpassTickets": 0,
    "requiresSeatingPlan": true,
    "seatingReservation": true
  },
  "salesContact": {
    "name": "string",
    "email": "string",
    "phone": "string",
    "website": "string",
    "company": "string"
  },
  "status": "draft"
}
Parameters
| Name | In | Type | Required | Description | 
|---|---|---|---|---|
| id | path | string | true | Experience ID | 
| body | body | CreateExperienceRequest | true | none | 
Example responses
200 Response
{
  "stats": {
    "start": 0,
    "end": 0,
    "duration": 0
  },
  "record": {
    "id": "string",
    "title": "string",
    "subtitle": "string",
    "pictures": [
      {
        "url": "string",
        "copy": "string",
        "alt": "string",
        "originalUrl": "string",
        "fileName": "string",
        "previews": {
          "card": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          },
          "dashboard": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          },
          "detail": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          },
          "featured": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          },
          "share": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          }
        }
      }
    ],
    "videos": [
      {
        "type": "youtube",
        "url": "string",
        "cover": {
          "url": "string",
          "copy": "string",
          "alt": "string",
          "originalUrl": "string",
          "fileName": "string",
          "previews": {
            "card": {
              "size": "string",
              "fileName": "string",
              "url": "string",
              "error": {
                "code": "string",
                "message": "string"
              }
            },
            "dashboard": {
              "size": "string",
              "fileName": "string",
              "url": "string",
              "error": {
                "code": "string",
                "message": "string"
              }
            },
            "detail": {
              "size": "string",
              "fileName": "string",
              "url": "string",
              "error": {
                "code": "string",
                "message": "string"
              }
            },
            "featured": {
              "size": "string",
              "fileName": "string",
              "url": "string",
              "error": {
                "code": "string",
                "message": "string"
              }
            },
            "share": {
              "size": "string",
              "fileName": "string",
              "url": "string",
              "error": {
                "code": "string",
                "message": "string"
              }
            }
          }
        },
        "description": "string"
      }
    ],
    "dates": [
      {
        "from": "2019-08-24T14:15:22Z",
        "to": "2019-08-24T14:15:22Z",
        "duration": 0,
        "purchaseLink": "string"
      }
    ],
    "endDate": "2019-08-24T14:15:22Z",
    "venues": [
      {
        "id": "string",
        "title": "string",
        "pictures": [
          {
            "url": "string",
            "copy": "string",
            "alt": "string",
            "originalUrl": "string",
            "fileName": "string",
            "previews": {
              "card": {
                "size": "string",
                "fileName": "string",
                "url": "string",
                "error": {
                  "code": "string",
                  "message": "string"
                }
              },
              "dashboard": {
                "size": "string",
                "fileName": "string",
                "url": "string",
                "error": {
                  "code": "string",
                  "message": "string"
                }
              },
              "detail": {
                "size": "string",
                "fileName": "string",
                "url": "string",
                "error": {
                  "code": "string",
                  "message": "string"
                }
              },
              "featured": {
                "size": "string",
                "fileName": "string",
                "url": "string",
                "error": {
                  "code": "string",
                  "message": "string"
                }
              },
              "share": {
                "size": "string",
                "fileName": "string",
                "url": "string",
                "error": {
                  "code": "string",
                  "message": "string"
                }
              }
            }
          }
        ],
        "location": {
          "address": {
            "street": "string",
            "number": "string",
            "postcode": "string",
            "town": "string",
            "commune": "string",
            "country": "string",
            "longitude": "string",
            "latitude": "string",
            "gid": "string",
            "mapUrl": "string"
          }
        },
        "description": "string",
        "categories": [
          "string"
        ],
        "website": "string",
        "contact": {
          "name": "string",
          "email": "string",
          "phone": "string",
          "website": "string",
          "company": "string"
        },
        "timestamps": {
          "createdAt": "2019-08-24T14:15:22Z",
          "createdBy": "string",
          "updatedAt": "2019-08-24T14:15:22Z",
          "updatedBy": "string",
          "deletedAt": "2019-08-24T14:15:22Z",
          "deletedBy": "string"
        }
      }
    ],
    "location": {
      "address": {
        "street": "string",
        "number": "string",
        "postcode": "string",
        "town": "string",
        "commune": "string",
        "country": "string",
        "longitude": "string",
        "latitude": "string",
        "gid": "string",
        "mapUrl": "string"
      }
    },
    "description": "string",
    "categories": [
      "string"
    ],
    "tags": [
      "string"
    ],
    "audiences": [
      "string"
    ],
    "languages": [
      "string"
    ],
    "environments": [
      "string"
    ],
    "formats": [
      "string"
    ],
    "contact": {
      "name": "string",
      "email": "string",
      "phone": "string",
      "website": "string",
      "company": "string"
    },
    "tickets": [
      {
        "title": "string",
        "price": 0,
        "currency": "EUR",
        "quantity": 0,
        "salesStart": "2019-08-24",
        "salesEnd": "2019-08-24"
      }
    ],
    "purchaseLink": "string",
    "luxembourgTickets": {
      "publishOnEventim": true,
      "includeSalesFee": true,
      "delivery": [
        "self-print"
      ],
      "saleLimit": 0,
      "excludedTickets": 0,
      "kulturpassTickets": 0,
      "requiresSeatingPlan": true,
      "seatingReservation": true
    },
    "salesContact": {
      "name": "string",
      "email": "string",
      "phone": "string",
      "website": "string",
      "company": "string"
    },
    "status": {
      "current": "string",
      "startDate": "2019-08-24T14:15:22Z"
    },
    "organisationId": "string",
    "timestamps": {
      "createdAt": "2019-08-24T14:15:22Z",
      "createdBy": "string",
      "updatedAt": "2019-08-24T14:15:22Z",
      "updatedBy": "string",
      "deletedAt": "2019-08-24T14:15:22Z",
      "deletedBy": "string"
    }
  }
}
Responses
| Status | Meaning | Description | Schema | 
|---|---|---|---|
| 200 | OK | 200 response | UpdateExperienceResponse | 
| 400 | Bad Request | 400 response | UpdateExperienceErrorResponse | 
| 404 | Not Found | 404 response | UpdateExperienceNotFoundResponse | 
ListExperience
Code samples
# You can also use wget
curl -X GET /experiences \
  -H 'Accept: application/json' \
  -H 'api-key: API_KEY'
GET /experiences HTTP/1.1
Accept: application/json
var headers = {
  'Accept':'application/json',
  'api-key':'API_KEY'
};
$.ajax({
  url: '/experiences',
  method: 'get',
  headers: headers,
  success: function(data) {
    console.log(JSON.stringify(data));
  }
})
const fetch = require('node-fetch');
const headers = {
  'Accept':'application/json',
  'api-key':'API_KEY'
};
fetch('/experiences',
{
  method: 'GET',
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
require 'rest-client'
require 'json'
headers = {
  'Accept' => 'application/json',
  'api-key' => 'API_KEY'
}
result = RestClient.get '/experiences',
  params: {
  }, headers: headers
p JSON.parse(result)
import requests
headers = {
  'Accept': 'application/json',
  'api-key': 'API_KEY'
}
r = requests.get('/experiences', params={
}, headers = headers)
print r.json()
URL obj = new URL("/experiences");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
       "bytes"
       "net/http"
)
func main() {
    headers := map[string][]string{
        "Accept": []string{"application/json"},
        "api-key": []string{"API_KEY"},
        
    }
    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "/experiences", data)
    req.Header = headers
    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}
GET /experiences
Get all experience from the database with applied filters
Parameters
| Name | In | Type | Required | Description | 
|---|---|---|---|---|
| audiences | query | array[string] | false | Audience IDs | 
| categories | query | array[string] | false | Category IDs | 
| communes | query | array[string] | false | Commune IDs of the venues where the experiences are taking place | 
| date | query | DateRequest | false | none | 
| pagination | query | PaginationRequest | false | Pagination if it's needed. All experiences by default | 
| venues | query | array[string] | false | Venue IDs | 
Example responses
200 Response
{
  "stats": {
    "start": 0,
    "end": 0,
    "duration": 0
  },
  "records": [
    {
      "id": "string",
      "title": "string",
      "subtitle": "string",
      "pictures": [
        {
          "url": "string",
          "copy": "string",
          "alt": "string",
          "originalUrl": "string",
          "fileName": "string",
          "previews": {
            "card": {
              "size": "string",
              "fileName": "string",
              "url": "string",
              "error": {
                "code": "string",
                "message": "string"
              }
            },
            "dashboard": {
              "size": "string",
              "fileName": "string",
              "url": "string",
              "error": {
                "code": "string",
                "message": "string"
              }
            },
            "detail": {
              "size": "string",
              "fileName": "string",
              "url": "string",
              "error": {
                "code": "string",
                "message": "string"
              }
            },
            "featured": {
              "size": "string",
              "fileName": "string",
              "url": "string",
              "error": {
                "code": "string",
                "message": "string"
              }
            },
            "share": {
              "size": "string",
              "fileName": "string",
              "url": "string",
              "error": {
                "code": "string",
                "message": "string"
              }
            }
          }
        }
      ],
      "videos": [
        {
          "type": "youtube",
          "url": "string",
          "cover": {
            "url": "string",
            "copy": "string",
            "alt": "string",
            "originalUrl": "string",
            "fileName": "string",
            "previews": {
              "card": {
                "size": "string",
                "fileName": "string",
                "url": "string",
                "error": {
                  "code": "string",
                  "message": "string"
                }
              },
              "dashboard": {
                "size": "string",
                "fileName": "string",
                "url": "string",
                "error": {
                  "code": "string",
                  "message": "string"
                }
              },
              "detail": {
                "size": "string",
                "fileName": "string",
                "url": "string",
                "error": {
                  "code": "string",
                  "message": "string"
                }
              },
              "featured": {
                "size": "string",
                "fileName": "string",
                "url": "string",
                "error": {
                  "code": "string",
                  "message": "string"
                }
              },
              "share": {
                "size": "string",
                "fileName": "string",
                "url": "string",
                "error": {
                  "code": "string",
                  "message": "string"
                }
              }
            }
          },
          "description": "string"
        }
      ],
      "dates": [
        {
          "from": "2019-08-24T14:15:22Z",
          "to": "2019-08-24T14:15:22Z",
          "duration": 0,
          "purchaseLink": "string"
        }
      ],
      "endDate": "2019-08-24T14:15:22Z",
      "venues": [
        {
          "id": "string",
          "title": "string",
          "pictures": [
            {
              "url": "string",
              "copy": "string",
              "alt": "string",
              "originalUrl": "string",
              "fileName": "string",
              "previews": {
                "card": {
                  "size": "string",
                  "fileName": "string",
                  "url": "string",
                  "error": {
                    "code": "string",
                    "message": "string"
                  }
                },
                "dashboard": {
                  "size": "string",
                  "fileName": "string",
                  "url": "string",
                  "error": {
                    "code": "string",
                    "message": "string"
                  }
                },
                "detail": {
                  "size": "string",
                  "fileName": "string",
                  "url": "string",
                  "error": {
                    "code": "string",
                    "message": "string"
                  }
                },
                "featured": {
                  "size": "string",
                  "fileName": "string",
                  "url": "string",
                  "error": {
                    "code": "string",
                    "message": "string"
                  }
                },
                "share": {
                  "size": "string",
                  "fileName": "string",
                  "url": "string",
                  "error": {
                    "code": "string",
                    "message": "string"
                  }
                }
              }
            }
          ],
          "location": {
            "address": {
              "street": "string",
              "number": "string",
              "postcode": "string",
              "town": "string",
              "commune": "string",
              "country": "string",
              "longitude": "string",
              "latitude": "string",
              "gid": "string",
              "mapUrl": "string"
            }
          },
          "description": "string",
          "categories": [
            "string"
          ],
          "website": "string",
          "contact": {
            "name": "string",
            "email": "string",
            "phone": "string",
            "website": "string",
            "company": "string"
          },
          "timestamps": {
            "createdAt": "2019-08-24T14:15:22Z",
            "createdBy": "string",
            "updatedAt": "2019-08-24T14:15:22Z",
            "updatedBy": "string",
            "deletedAt": "2019-08-24T14:15:22Z",
            "deletedBy": "string"
          }
        }
      ],
      "location": {
        "address": {
          "street": "string",
          "number": "string",
          "postcode": "string",
          "town": "string",
          "commune": "string",
          "country": "string",
          "longitude": "string",
          "latitude": "string",
          "gid": "string",
          "mapUrl": "string"
        }
      },
      "description": "string",
      "categories": [
        "string"
      ],
      "tags": [
        "string"
      ],
      "audiences": [
        "string"
      ],
      "languages": [
        "string"
      ],
      "environments": [
        "string"
      ],
      "formats": [
        "string"
      ],
      "contact": {
        "name": "string",
        "email": "string",
        "phone": "string",
        "website": "string",
        "company": "string"
      },
      "tickets": [
        {
          "title": "string",
          "price": 0,
          "currency": "EUR",
          "quantity": 0,
          "salesStart": "2019-08-24",
          "salesEnd": "2019-08-24"
        }
      ],
      "purchaseLink": "string",
      "luxembourgTickets": {
        "publishOnEventim": true,
        "includeSalesFee": true,
        "delivery": [
          "self-print"
        ],
        "saleLimit": 0,
        "excludedTickets": 0,
        "kulturpassTickets": 0,
        "requiresSeatingPlan": true,
        "seatingReservation": true
      },
      "salesContact": {
        "name": "string",
        "email": "string",
        "phone": "string",
        "website": "string",
        "company": "string"
      },
      "status": {
        "current": "string",
        "startDate": "2019-08-24T14:15:22Z"
      },
      "organisationId": "string",
      "timestamps": {
        "createdAt": "2019-08-24T14:15:22Z",
        "createdBy": "string",
        "updatedAt": "2019-08-24T14:15:22Z",
        "updatedBy": "string",
        "deletedAt": "2019-08-24T14:15:22Z",
        "deletedBy": "string"
      }
    }
  ]
}
Responses
| Status | Meaning | Description | Schema | 
|---|---|---|---|
| 200 | OK | 200 response | ListExperienceResponse | 
| 400 | Bad Request | 400 response | ListExperienceErrorResponse | 
| 404 | Not Found | 404 response | ListExperienceNotFoundResponse | 
PostponeExperience
Code samples
# You can also use wget
curl -X PATCH /experiences/{id}/postpone \
  -H 'Accept: application/json' \
  -H 'api-key: API_KEY'
PATCH /experiences/{id}/postpone HTTP/1.1
Accept: application/json
var headers = {
  'Accept':'application/json',
  'api-key':'API_KEY'
};
$.ajax({
  url: '/experiences/{id}/postpone',
  method: 'patch',
  headers: headers,
  success: function(data) {
    console.log(JSON.stringify(data));
  }
})
const fetch = require('node-fetch');
const headers = {
  'Accept':'application/json',
  'api-key':'API_KEY'
};
fetch('/experiences/{id}/postpone',
{
  method: 'PATCH',
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
require 'rest-client'
require 'json'
headers = {
  'Accept' => 'application/json',
  'api-key' => 'API_KEY'
}
result = RestClient.patch '/experiences/{id}/postpone',
  params: {
  }, headers: headers
p JSON.parse(result)
import requests
headers = {
  'Accept': 'application/json',
  'api-key': 'API_KEY'
}
r = requests.patch('/experiences/{id}/postpone', params={
}, headers = headers)
print r.json()
URL obj = new URL("/experiences/{id}/postpone");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("PATCH");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
       "bytes"
       "net/http"
)
func main() {
    headers := map[string][]string{
        "Accept": []string{"application/json"},
        "api-key": []string{"API_KEY"},
        
    }
    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("PATCH", "/experiences/{id}/postpone", data)
    req.Header = headers
    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}
PATCH /experiences/{id}/postpone
Display as Postponed an already published experience, by setting its status to postponed
Parameters
| Name | In | Type | Required | Description | 
|---|---|---|---|---|
| id | path | string | true | Experience ID | 
Example responses
200 Response
{
  "stats": {
    "start": 0,
    "end": 0,
    "duration": 0
  },
  "result": true
}
Responses
| Status | Meaning | Description | Schema | 
|---|---|---|---|
| 200 | OK | 200 response | CancelPostponeCompleteExperienceSuccessResponse | 
| 400 | Bad Request | 400 response | CancelPostponeCompleteExperienceErrorResponse | 
| 404 | Not Found | 404 response | CancelPostponeCompleteExperienceNotFoundResponse | 
UnpublishExperience
Code samples
# You can also use wget
curl -X PATCH /experiences/{id}/unpublish \
  -H 'Accept: application/json' \
  -H 'api-key: API_KEY'
PATCH /experiences/{id}/unpublish HTTP/1.1
Accept: application/json
var headers = {
  'Accept':'application/json',
  'api-key':'API_KEY'
};
$.ajax({
  url: '/experiences/{id}/unpublish',
  method: 'patch',
  headers: headers,
  success: function(data) {
    console.log(JSON.stringify(data));
  }
})
const fetch = require('node-fetch');
const headers = {
  'Accept':'application/json',
  'api-key':'API_KEY'
};
fetch('/experiences/{id}/unpublish',
{
  method: 'PATCH',
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
require 'rest-client'
require 'json'
headers = {
  'Accept' => 'application/json',
  'api-key' => 'API_KEY'
}
result = RestClient.patch '/experiences/{id}/unpublish',
  params: {
  }, headers: headers
p JSON.parse(result)
import requests
headers = {
  'Accept': 'application/json',
  'api-key': 'API_KEY'
}
r = requests.patch('/experiences/{id}/unpublish', params={
}, headers = headers)
print r.json()
URL obj = new URL("/experiences/{id}/unpublish");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("PATCH");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
       "bytes"
       "net/http"
)
func main() {
    headers := map[string][]string{
        "Accept": []string{"application/json"},
        "api-key": []string{"API_KEY"},
        
    }
    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("PATCH", "/experiences/{id}/unpublish", data)
    req.Header = headers
    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}
PATCH /experiences/{id}/unpublish
Unpublish an experience, and set its status to draft
Parameters
| Name | In | Type | Required | Description | 
|---|---|---|---|---|
| id | path | string | true | Experience ID | 
Example responses
200 Response
{
  "stats": {
    "start": 0,
    "end": 0,
    "duration": 0
  },
  "result": true
}
Responses
| Status | Meaning | Description | Schema | 
|---|---|---|---|
| 200 | OK | 200 response | CancelPostponeCompleteExperienceSuccessResponse | 
| 400 | Bad Request | 400 response | CancelPostponeCompleteExperienceErrorResponse | 
| 404 | Not Found | 404 response | CancelPostponeCompleteExperienceNotFoundResponse | 
Venues
CreateVenue
Code samples
# You can also use wget
curl -X POST /venues \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json' \
  -H 'api-key: API_KEY'
POST /venues HTTP/1.1
Content-Type: application/json
Accept: application/json
var headers = {
  'Content-Type':'application/json',
  'Accept':'application/json',
  'api-key':'API_KEY'
};
$.ajax({
  url: '/venues',
  method: 'post',
  headers: headers,
  success: function(data) {
    console.log(JSON.stringify(data));
  }
})
const fetch = require('node-fetch');
const inputBody = '{
  "title": "string",
  "pictures": [
    {
      "url": "string",
      "copy": "string",
      "alt": "string"
    }
  ],
  "location": {
    "address": {
      "street": "string",
      "number": "string",
      "postcode": "string",
      "town": "string",
      "commune": "string",
      "country": "string",
      "longitude": "string",
      "latitude": "string",
      "gid": "string",
      "mapUrl": "string"
    }
  },
  "description": "string",
  "categories": [
    "string"
  ],
  "website": "string",
  "contact": {
    "name": "string",
    "email": "string",
    "phone": "string",
    "website": "string",
    "company": "string"
  }
}';
const headers = {
  'Content-Type':'application/json',
  'Accept':'application/json',
  'api-key':'API_KEY'
};
fetch('/venues',
{
  method: 'POST',
  body: inputBody,
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
require 'rest-client'
require 'json'
headers = {
  'Content-Type' => 'application/json',
  'Accept' => 'application/json',
  'api-key' => 'API_KEY'
}
result = RestClient.post '/venues',
  params: {
  }, headers: headers
p JSON.parse(result)
import requests
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json',
  'api-key': 'API_KEY'
}
r = requests.post('/venues', params={
}, headers = headers)
print r.json()
URL obj = new URL("/venues");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("POST");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
       "bytes"
       "net/http"
)
func main() {
    headers := map[string][]string{
        "Content-Type": []string{"application/json"},
        "Accept": []string{"application/json"},
        "api-key": []string{"API_KEY"},
        
    }
    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("POST", "/venues", data)
    req.Header = headers
    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}
POST /venues
Create a new venue
Body parameter
{
  "title": "string",
  "pictures": [
    {
      "url": "string",
      "copy": "string",
      "alt": "string"
    }
  ],
  "location": {
    "address": {
      "street": "string",
      "number": "string",
      "postcode": "string",
      "town": "string",
      "commune": "string",
      "country": "string",
      "longitude": "string",
      "latitude": "string",
      "gid": "string",
      "mapUrl": "string"
    }
  },
  "description": "string",
  "categories": [
    "string"
  ],
  "website": "string",
  "contact": {
    "name": "string",
    "email": "string",
    "phone": "string",
    "website": "string",
    "company": "string"
  }
}
Parameters
| Name | In | Type | Required | Description | 
|---|---|---|---|---|
| body | body | CreateVenueRequest | true | none | 
Example responses
201 Response
{
  "stats": {
    "start": 0,
    "end": 0,
    "duration": 0
  },
  "record": {
    "id": "string",
    "title": "string",
    "pictures": [
      {
        "url": "string",
        "copy": "string",
        "alt": "string",
        "originalUrl": "string",
        "fileName": "string",
        "previews": {
          "card": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          },
          "dashboard": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          },
          "detail": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          },
          "featured": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          },
          "share": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          }
        }
      }
    ],
    "location": {
      "address": {
        "street": "string",
        "number": "string",
        "postcode": "string",
        "town": "string",
        "commune": "string",
        "country": "string",
        "longitude": "string",
        "latitude": "string",
        "gid": "string",
        "mapUrl": "string"
      }
    },
    "description": "string",
    "categories": [
      "string"
    ],
    "website": "string",
    "contact": {
      "name": "string",
      "email": "string",
      "phone": "string",
      "website": "string",
      "company": "string"
    },
    "timestamps": {
      "createdAt": "2019-08-24T14:15:22Z",
      "createdBy": "string",
      "updatedAt": "2019-08-24T14:15:22Z",
      "updatedBy": "string",
      "deletedAt": "2019-08-24T14:15:22Z",
      "deletedBy": "string"
    }
  }
}
Responses
| Status | Meaning | Description | Schema | 
|---|---|---|---|
| 201 | Created | 201 response | CreateVenueResponse | 
| 400 | Bad Request | 400 response | CreateVenueErrorResponse | 
ListVenues
Code samples
# You can also use wget
curl -X GET /venues \
  -H 'Accept: application/json' \
  -H 'api-key: API_KEY'
GET /venues HTTP/1.1
Accept: application/json
var headers = {
  'Accept':'application/json',
  'api-key':'API_KEY'
};
$.ajax({
  url: '/venues',
  method: 'get',
  headers: headers,
  success: function(data) {
    console.log(JSON.stringify(data));
  }
})
const fetch = require('node-fetch');
const headers = {
  'Accept':'application/json',
  'api-key':'API_KEY'
};
fetch('/venues',
{
  method: 'GET',
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
require 'rest-client'
require 'json'
headers = {
  'Accept' => 'application/json',
  'api-key' => 'API_KEY'
}
result = RestClient.get '/venues',
  params: {
  }, headers: headers
p JSON.parse(result)
import requests
headers = {
  'Accept': 'application/json',
  'api-key': 'API_KEY'
}
r = requests.get('/venues', params={
}, headers = headers)
print r.json()
URL obj = new URL("/venues");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
       "bytes"
       "net/http"
)
func main() {
    headers := map[string][]string{
        "Accept": []string{"application/json"},
        "api-key": []string{"API_KEY"},
        
    }
    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "/venues", data)
    req.Header = headers
    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}
GET /venues
Get all venues from the database with applied filters
Parameters
| Name | In | Type | Required | Description | 
|---|---|---|---|---|
| categories | query | array[string] | false | Category IDs | 
| communes | query | array[string] | false | Commune IDs | 
| pagination | query | PaginationRequest | false | none | 
Example responses
200 Response
{
  "stats": {
    "start": 0,
    "end": 0,
    "duration": 0
  },
  "records": [
    {
      "id": "string",
      "title": "string",
      "pictures": [
        {
          "url": "string",
          "copy": "string",
          "alt": "string",
          "originalUrl": "string",
          "fileName": "string",
          "previews": {
            "card": {
              "size": "string",
              "fileName": "string",
              "url": "string",
              "error": {
                "code": "string",
                "message": "string"
              }
            },
            "dashboard": {
              "size": "string",
              "fileName": "string",
              "url": "string",
              "error": {
                "code": "string",
                "message": "string"
              }
            },
            "detail": {
              "size": "string",
              "fileName": "string",
              "url": "string",
              "error": {
                "code": "string",
                "message": "string"
              }
            },
            "featured": {
              "size": "string",
              "fileName": "string",
              "url": "string",
              "error": {
                "code": "string",
                "message": "string"
              }
            },
            "share": {
              "size": "string",
              "fileName": "string",
              "url": "string",
              "error": {
                "code": "string",
                "message": "string"
              }
            }
          }
        }
      ],
      "location": {
        "address": {
          "street": "string",
          "number": "string",
          "postcode": "string",
          "town": "string",
          "commune": "string",
          "country": "string",
          "longitude": "string",
          "latitude": "string",
          "gid": "string",
          "mapUrl": "string"
        }
      },
      "description": "string",
      "categories": [
        "string"
      ],
      "website": "string",
      "contact": {
        "name": "string",
        "email": "string",
        "phone": "string",
        "website": "string",
        "company": "string"
      },
      "timestamps": {
        "createdAt": "2019-08-24T14:15:22Z",
        "createdBy": "string",
        "updatedAt": "2019-08-24T14:15:22Z",
        "updatedBy": "string",
        "deletedAt": "2019-08-24T14:15:22Z",
        "deletedBy": "string"
      }
    }
  ]
}
Responses
| Status | Meaning | Description | Schema | 
|---|---|---|---|
| 200 | OK | 200 response | ListVenuesResponse | 
| 400 | Bad Request | 400 response | ListVenuesErrorResponse | 
| 404 | Not Found | 404 response | ListVenuesNotFoundResponse | 
GetVenue
Code samples
# You can also use wget
curl -X GET /venues/{id} \
  -H 'Accept: application/json' \
  -H 'api-key: API_KEY'
GET /venues/{id} HTTP/1.1
Accept: application/json
var headers = {
  'Accept':'application/json',
  'api-key':'API_KEY'
};
$.ajax({
  url: '/venues/{id}',
  method: 'get',
  headers: headers,
  success: function(data) {
    console.log(JSON.stringify(data));
  }
})
const fetch = require('node-fetch');
const headers = {
  'Accept':'application/json',
  'api-key':'API_KEY'
};
fetch('/venues/{id}',
{
  method: 'GET',
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
require 'rest-client'
require 'json'
headers = {
  'Accept' => 'application/json',
  'api-key' => 'API_KEY'
}
result = RestClient.get '/venues/{id}',
  params: {
  }, headers: headers
p JSON.parse(result)
import requests
headers = {
  'Accept': 'application/json',
  'api-key': 'API_KEY'
}
r = requests.get('/venues/{id}', params={
}, headers = headers)
print r.json()
URL obj = new URL("/venues/{id}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
       "bytes"
       "net/http"
)
func main() {
    headers := map[string][]string{
        "Accept": []string{"application/json"},
        "api-key": []string{"API_KEY"},
        
    }
    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "/venues/{id}", data)
    req.Header = headers
    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}
GET /venues/{id}
Get a venue
Parameters
| Name | In | Type | Required | Description | 
|---|---|---|---|---|
| id | path | string | true | Venue ID | 
Example responses
200 Response
{
  "stats": {
    "start": 0,
    "end": 0,
    "duration": 0
  },
  "record": {
    "id": "string",
    "title": "string",
    "pictures": [
      {
        "url": "string",
        "copy": "string",
        "alt": "string",
        "originalUrl": "string",
        "fileName": "string",
        "previews": {
          "card": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          },
          "dashboard": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          },
          "detail": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          },
          "featured": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          },
          "share": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          }
        }
      }
    ],
    "location": {
      "address": {
        "street": "string",
        "number": "string",
        "postcode": "string",
        "town": "string",
        "commune": "string",
        "country": "string",
        "longitude": "string",
        "latitude": "string",
        "gid": "string",
        "mapUrl": "string"
      }
    },
    "description": "string",
    "categories": [
      "string"
    ],
    "website": "string",
    "contact": {
      "name": "string",
      "email": "string",
      "phone": "string",
      "website": "string",
      "company": "string"
    },
    "timestamps": {
      "createdAt": "2019-08-24T14:15:22Z",
      "createdBy": "string",
      "updatedAt": "2019-08-24T14:15:22Z",
      "updatedBy": "string",
      "deletedAt": "2019-08-24T14:15:22Z",
      "deletedBy": "string"
    }
  }
}
Responses
| Status | Meaning | Description | Schema | 
|---|---|---|---|
| 200 | OK | 200 response | GetVenueResponse | 
| 400 | Bad Request | 400 response | GetVenueErrorResponse | 
| 404 | Not Found | 404 response | GetVenueNotFoundResponse | 
PatchVenue
Code samples
# You can also use wget
curl -X PATCH /venues/{id} \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json' \
  -H 'api-key: API_KEY'
PATCH /venues/{id} HTTP/1.1
Content-Type: application/json
Accept: application/json
var headers = {
  'Content-Type':'application/json',
  'Accept':'application/json',
  'api-key':'API_KEY'
};
$.ajax({
  url: '/venues/{id}',
  method: 'patch',
  headers: headers,
  success: function(data) {
    console.log(JSON.stringify(data));
  }
})
const fetch = require('node-fetch');
const inputBody = '{
  "title": "string",
  "pictures": [
    {
      "url": "string",
      "copy": "string",
      "alt": "string"
    }
  ],
  "location": {
    "address": {
      "street": "string",
      "number": "string",
      "postcode": "string",
      "town": "string",
      "commune": "string",
      "country": "string",
      "longitude": "string",
      "latitude": "string",
      "gid": "string",
      "mapUrl": "string"
    }
  },
  "description": "string",
  "categories": [
    "string"
  ],
  "website": "string",
  "contact": {
    "name": "string",
    "email": "string",
    "phone": "string",
    "website": "string",
    "company": "string"
  }
}';
const headers = {
  'Content-Type':'application/json',
  'Accept':'application/json',
  'api-key':'API_KEY'
};
fetch('/venues/{id}',
{
  method: 'PATCH',
  body: inputBody,
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
require 'rest-client'
require 'json'
headers = {
  'Content-Type' => 'application/json',
  'Accept' => 'application/json',
  'api-key' => 'API_KEY'
}
result = RestClient.patch '/venues/{id}',
  params: {
  }, headers: headers
p JSON.parse(result)
import requests
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json',
  'api-key': 'API_KEY'
}
r = requests.patch('/venues/{id}', params={
}, headers = headers)
print r.json()
URL obj = new URL("/venues/{id}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("PATCH");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
       "bytes"
       "net/http"
)
func main() {
    headers := map[string][]string{
        "Content-Type": []string{"application/json"},
        "Accept": []string{"application/json"},
        "api-key": []string{"API_KEY"},
        
    }
    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("PATCH", "/venues/{id}", data)
    req.Header = headers
    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}
PATCH /venues/{id}
Update a venue
Body parameter
{
  "title": "string",
  "pictures": [
    {
      "url": "string",
      "copy": "string",
      "alt": "string"
    }
  ],
  "location": {
    "address": {
      "street": "string",
      "number": "string",
      "postcode": "string",
      "town": "string",
      "commune": "string",
      "country": "string",
      "longitude": "string",
      "latitude": "string",
      "gid": "string",
      "mapUrl": "string"
    }
  },
  "description": "string",
  "categories": [
    "string"
  ],
  "website": "string",
  "contact": {
    "name": "string",
    "email": "string",
    "phone": "string",
    "website": "string",
    "company": "string"
  }
}
Parameters
| Name | In | Type | Required | Description | 
|---|---|---|---|---|
| id | path | string | true | Venue ID | 
| body | body | PatchVenueRequest | true | none | 
Example responses
200 Response
{
  "stats": {
    "start": 0,
    "end": 0,
    "duration": 0
  },
  "record": {
    "id": "string",
    "title": "string",
    "pictures": [
      {
        "url": "string",
        "copy": "string",
        "alt": "string",
        "originalUrl": "string",
        "fileName": "string",
        "previews": {
          "card": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          },
          "dashboard": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          },
          "detail": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          },
          "featured": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          },
          "share": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          }
        }
      }
    ],
    "location": {
      "address": {
        "street": "string",
        "number": "string",
        "postcode": "string",
        "town": "string",
        "commune": "string",
        "country": "string",
        "longitude": "string",
        "latitude": "string",
        "gid": "string",
        "mapUrl": "string"
      }
    },
    "description": "string",
    "categories": [
      "string"
    ],
    "website": "string",
    "contact": {
      "name": "string",
      "email": "string",
      "phone": "string",
      "website": "string",
      "company": "string"
    },
    "timestamps": {
      "createdAt": "2019-08-24T14:15:22Z",
      "createdBy": "string",
      "updatedAt": "2019-08-24T14:15:22Z",
      "updatedBy": "string",
      "deletedAt": "2019-08-24T14:15:22Z",
      "deletedBy": "string"
    }
  }
}
Responses
| Status | Meaning | Description | Schema | 
|---|---|---|---|
| 200 | OK | 200 response | UpdateVenueResponse | 
| 400 | Bad Request | 400 response | UpdateVenueErrorResponse | 
| 404 | Not Found | 404 response | UpdateVenueNotFoundResponse | 
PutVenue
Code samples
# You can also use wget
curl -X PUT /venues/{id} \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json' \
  -H 'api-key: API_KEY'
PUT /venues/{id} HTTP/1.1
Content-Type: application/json
Accept: application/json
var headers = {
  'Content-Type':'application/json',
  'Accept':'application/json',
  'api-key':'API_KEY'
};
$.ajax({
  url: '/venues/{id}',
  method: 'put',
  headers: headers,
  success: function(data) {
    console.log(JSON.stringify(data));
  }
})
const fetch = require('node-fetch');
const inputBody = '{
  "title": "string",
  "pictures": [
    {
      "url": "string",
      "copy": "string",
      "alt": "string"
    }
  ],
  "location": {
    "address": {
      "street": "string",
      "number": "string",
      "postcode": "string",
      "town": "string",
      "commune": "string",
      "country": "string",
      "longitude": "string",
      "latitude": "string",
      "gid": "string",
      "mapUrl": "string"
    }
  },
  "description": "string",
  "categories": [
    "string"
  ],
  "website": "string",
  "contact": {
    "name": "string",
    "email": "string",
    "phone": "string",
    "website": "string",
    "company": "string"
  }
}';
const headers = {
  'Content-Type':'application/json',
  'Accept':'application/json',
  'api-key':'API_KEY'
};
fetch('/venues/{id}',
{
  method: 'PUT',
  body: inputBody,
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
require 'rest-client'
require 'json'
headers = {
  'Content-Type' => 'application/json',
  'Accept' => 'application/json',
  'api-key' => 'API_KEY'
}
result = RestClient.put '/venues/{id}',
  params: {
  }, headers: headers
p JSON.parse(result)
import requests
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json',
  'api-key': 'API_KEY'
}
r = requests.put('/venues/{id}', params={
}, headers = headers)
print r.json()
URL obj = new URL("/venues/{id}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("PUT");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
       "bytes"
       "net/http"
)
func main() {
    headers := map[string][]string{
        "Content-Type": []string{"application/json"},
        "Accept": []string{"application/json"},
        "api-key": []string{"API_KEY"},
        
    }
    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("PUT", "/venues/{id}", data)
    req.Header = headers
    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}
PUT /venues/{id}
Update a venue
Body parameter
{
  "title": "string",
  "pictures": [
    {
      "url": "string",
      "copy": "string",
      "alt": "string"
    }
  ],
  "location": {
    "address": {
      "street": "string",
      "number": "string",
      "postcode": "string",
      "town": "string",
      "commune": "string",
      "country": "string",
      "longitude": "string",
      "latitude": "string",
      "gid": "string",
      "mapUrl": "string"
    }
  },
  "description": "string",
  "categories": [
    "string"
  ],
  "website": "string",
  "contact": {
    "name": "string",
    "email": "string",
    "phone": "string",
    "website": "string",
    "company": "string"
  }
}
Parameters
| Name | In | Type | Required | Description | 
|---|---|---|---|---|
| id | path | string | true | Venue ID | 
| body | body | PutVenueRequest | true | none | 
Example responses
200 Response
{
  "stats": {
    "start": 0,
    "end": 0,
    "duration": 0
  },
  "record": {
    "id": "string",
    "title": "string",
    "pictures": [
      {
        "url": "string",
        "copy": "string",
        "alt": "string",
        "originalUrl": "string",
        "fileName": "string",
        "previews": {
          "card": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          },
          "dashboard": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          },
          "detail": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          },
          "featured": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          },
          "share": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          }
        }
      }
    ],
    "location": {
      "address": {
        "street": "string",
        "number": "string",
        "postcode": "string",
        "town": "string",
        "commune": "string",
        "country": "string",
        "longitude": "string",
        "latitude": "string",
        "gid": "string",
        "mapUrl": "string"
      }
    },
    "description": "string",
    "categories": [
      "string"
    ],
    "website": "string",
    "contact": {
      "name": "string",
      "email": "string",
      "phone": "string",
      "website": "string",
      "company": "string"
    },
    "timestamps": {
      "createdAt": "2019-08-24T14:15:22Z",
      "createdBy": "string",
      "updatedAt": "2019-08-24T14:15:22Z",
      "updatedBy": "string",
      "deletedAt": "2019-08-24T14:15:22Z",
      "deletedBy": "string"
    }
  }
}
Responses
| Status | Meaning | Description | Schema | 
|---|---|---|---|
| 200 | OK | 200 response | UpdateVenueResponse | 
| 400 | Bad Request | 400 response | UpdateVenueErrorResponse | 
| 404 | Not Found | 404 response | UpdateVenueNotFoundResponse | 
Published Experiences
GetPublishedExperience
Code samples
# You can also use wget
curl -X GET /allExperiences/{id} \
  -H 'Accept: application/json' \
  -H 'api-key: API_KEY'
GET /allExperiences/{id} HTTP/1.1
Accept: application/json
var headers = {
  'Accept':'application/json',
  'api-key':'API_KEY'
};
$.ajax({
  url: '/allExperiences/{id}',
  method: 'get',
  headers: headers,
  success: function(data) {
    console.log(JSON.stringify(data));
  }
})
const fetch = require('node-fetch');
const headers = {
  'Accept':'application/json',
  'api-key':'API_KEY'
};
fetch('/allExperiences/{id}',
{
  method: 'GET',
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
require 'rest-client'
require 'json'
headers = {
  'Accept' => 'application/json',
  'api-key' => 'API_KEY'
}
result = RestClient.get '/allExperiences/{id}',
  params: {
  }, headers: headers
p JSON.parse(result)
import requests
headers = {
  'Accept': 'application/json',
  'api-key': 'API_KEY'
}
r = requests.get('/allExperiences/{id}', params={
}, headers = headers)
print r.json()
URL obj = new URL("/allExperiences/{id}");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
       "bytes"
       "net/http"
)
func main() {
    headers := map[string][]string{
        "Accept": []string{"application/json"},
        "api-key": []string{"API_KEY"},
        
    }
    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "/allExperiences/{id}", data)
    req.Header = headers
    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}
GET /allExperiences/{id}
Get published existing experience
Parameters
| Name | In | Type | Required | Description | 
|---|---|---|---|---|
| id | path | string | true | Experience ID | 
Example responses
200 Response
{
  "stats": {
    "start": 0,
    "end": 0,
    "duration": 0
  },
  "record": {
    "id": "string",
    "title": "string",
    "subtitle": "string",
    "pictures": [
      {
        "url": "string",
        "copy": "string",
        "alt": "string",
        "originalUrl": "string",
        "fileName": "string",
        "previews": {
          "card": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          },
          "dashboard": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          },
          "detail": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          },
          "featured": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          },
          "share": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          }
        }
      }
    ],
    "videos": [
      {
        "type": "youtube",
        "url": "string",
        "cover": {
          "url": "string",
          "copy": "string",
          "alt": "string",
          "originalUrl": "string",
          "fileName": "string",
          "previews": {
            "card": {
              "size": "string",
              "fileName": "string",
              "url": "string",
              "error": {
                "code": "string",
                "message": "string"
              }
            },
            "dashboard": {
              "size": "string",
              "fileName": "string",
              "url": "string",
              "error": {
                "code": "string",
                "message": "string"
              }
            },
            "detail": {
              "size": "string",
              "fileName": "string",
              "url": "string",
              "error": {
                "code": "string",
                "message": "string"
              }
            },
            "featured": {
              "size": "string",
              "fileName": "string",
              "url": "string",
              "error": {
                "code": "string",
                "message": "string"
              }
            },
            "share": {
              "size": "string",
              "fileName": "string",
              "url": "string",
              "error": {
                "code": "string",
                "message": "string"
              }
            }
          }
        },
        "description": "string"
      }
    ],
    "dates": [
      {
        "from": "2019-08-24T14:15:22Z",
        "to": "2019-08-24T14:15:22Z",
        "duration": 0,
        "purchaseLink": "string"
      }
    ],
    "endDate": "2019-08-24T14:15:22Z",
    "venues": [
      {
        "id": "string",
        "title": "string",
        "pictures": [
          {
            "url": "string",
            "copy": "string",
            "alt": "string",
            "originalUrl": "string",
            "fileName": "string",
            "previews": {
              "card": {
                "size": "string",
                "fileName": "string",
                "url": "string",
                "error": {
                  "code": "string",
                  "message": "string"
                }
              },
              "dashboard": {
                "size": "string",
                "fileName": "string",
                "url": "string",
                "error": {
                  "code": "string",
                  "message": "string"
                }
              },
              "detail": {
                "size": "string",
                "fileName": "string",
                "url": "string",
                "error": {
                  "code": "string",
                  "message": "string"
                }
              },
              "featured": {
                "size": "string",
                "fileName": "string",
                "url": "string",
                "error": {
                  "code": "string",
                  "message": "string"
                }
              },
              "share": {
                "size": "string",
                "fileName": "string",
                "url": "string",
                "error": {
                  "code": "string",
                  "message": "string"
                }
              }
            }
          }
        ],
        "location": {
          "address": {
            "street": "string",
            "number": "string",
            "postcode": "string",
            "town": "string",
            "commune": "string",
            "country": "string",
            "longitude": "string",
            "latitude": "string",
            "gid": "string",
            "mapUrl": "string"
          }
        },
        "description": "string",
        "categories": [
          "string"
        ],
        "website": "string",
        "contact": {
          "name": "string",
          "email": "string",
          "phone": "string",
          "website": "string",
          "company": "string"
        },
        "timestamps": {
          "createdAt": "2019-08-24T14:15:22Z",
          "createdBy": "string",
          "updatedAt": "2019-08-24T14:15:22Z",
          "updatedBy": "string",
          "deletedAt": "2019-08-24T14:15:22Z",
          "deletedBy": "string"
        }
      }
    ],
    "location": {
      "address": {
        "street": "string",
        "number": "string",
        "postcode": "string",
        "town": "string",
        "commune": "string",
        "country": "string",
        "longitude": "string",
        "latitude": "string",
        "gid": "string",
        "mapUrl": "string"
      }
    },
    "description": "string",
    "categories": [
      "string"
    ],
    "tags": [
      "string"
    ],
    "audiences": [
      "string"
    ],
    "languages": [
      "string"
    ],
    "environments": [
      "string"
    ],
    "formats": [
      "string"
    ],
    "contact": {
      "name": "string",
      "email": "string",
      "phone": "string",
      "website": "string",
      "company": "string"
    },
    "tickets": [
      {
        "title": "string",
        "price": 0,
        "currency": "EUR",
        "quantity": 0,
        "salesStart": "2019-08-24",
        "salesEnd": "2019-08-24"
      }
    ],
    "purchaseLink": "string",
    "luxembourgTickets": {
      "publishOnEventim": true,
      "includeSalesFee": true,
      "delivery": [
        "self-print"
      ],
      "saleLimit": 0,
      "excludedTickets": 0,
      "kulturpassTickets": 0,
      "requiresSeatingPlan": true,
      "seatingReservation": true
    },
    "salesContact": {
      "name": "string",
      "email": "string",
      "phone": "string",
      "website": "string",
      "company": "string"
    },
    "status": {
      "current": "string",
      "startDate": "2019-08-24T14:15:22Z"
    },
    "organisationId": "string",
    "timestamps": {
      "createdAt": "2019-08-24T14:15:22Z",
      "createdBy": "string",
      "updatedAt": "2019-08-24T14:15:22Z",
      "updatedBy": "string",
      "deletedAt": "2019-08-24T14:15:22Z",
      "deletedBy": "string"
    }
  }
}
Responses
| Status | Meaning | Description | Schema | 
|---|---|---|---|
| 200 | OK | 200 response | GetExperienceResponse | 
| 400 | Bad Request | 400 response | GetExperienceErrorResponse | 
| 404 | Not Found | 404 response | GetExperienceNotFoundResponse | 
ListPublishedExperiences
Code samples
# You can also use wget
curl -X GET /allExperiences?paginagtion[page]=0&paginagtion[perPage]=100 \
  -H 'Accept: application/json' \
  -H 'api-key: API_KEY'
GET /allExperiences?page=0&perPage=0 HTTP/1.1
Accept: application/json
var headers = {
  'Accept':'application/json',
  'api-key':'API_KEY'
};
$.ajax({
  url: '/allExperiences',
  method: 'get',
  data: '?page=0&perPage=0',
  headers: headers,
  success: function(data) {
    console.log(JSON.stringify(data));
  }
})
const fetch = require('node-fetch');
const headers = {
  'Accept':'application/json',
  'api-key':'API_KEY'
};
fetch('/allExperiences?page=0&perPage=0',
{
  method: 'GET',
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
require 'rest-client'
require 'json'
headers = {
  'Accept' => 'application/json',
  'api-key' => 'API_KEY'
}
result = RestClient.get '/allExperiences',
  params: {
  'pagination' => '[PaginationRequest](#schemapaginationrequest)'
}, headers: headers
p JSON.parse(result)
import requests
headers = {
  'Accept': 'application/json',
  'api-key': 'API_KEY'
}
r = requests.get('/allExperiences', params={
  'pagination': {
  "page": 0,
  "perPage": 0
}
}, headers = headers)
print r.json()
URL obj = new URL("/allExperiences?page=0&perPage=0");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
       "bytes"
       "net/http"
)
func main() {
    headers := map[string][]string{
        "Accept": []string{"application/json"},
        "api-key": []string{"API_KEY"},
        
    }
    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "/allExperiences", data)
    req.Header = headers
    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}
GET /allExperiences
Get all published experiences from the database with applied filters
Parameters
| Name | In | Type | Required | Description | 
|---|---|---|---|---|
| audiences | query | array[string] | false | Audience IDs | 
| categories | query | array[string] | false | Category IDs | 
| communes | query | array[string] | false | Commune IDs of the venues where the experiences are taking place | 
| date | query | DateRequest | false | none | 
| organisations | query | array[string] | false | Organisations | 
| pagination | query | PaginationRequest | true | For published experiences pagination is required. Max 100 items per page | 
| tags | query | array[string] | false | Tags | 
| venues | query | array[string] | false | Venue IDs | 
Example responses
200 Response
{
  "stats": {
    "start": 0,
    "end": 0,
    "duration": 0
  },
  "records": [
    {
      "id": "string",
      "title": "string",
      "subtitle": "string",
      "pictures": [
        {
          "url": "string",
          "copy": "string",
          "alt": "string",
          "originalUrl": "string",
          "fileName": "string",
          "previews": {
            "card": {
              "size": "string",
              "fileName": "string",
              "url": "string",
              "error": {
                "code": "string",
                "message": "string"
              }
            },
            "dashboard": {
              "size": "string",
              "fileName": "string",
              "url": "string",
              "error": {
                "code": "string",
                "message": "string"
              }
            },
            "detail": {
              "size": "string",
              "fileName": "string",
              "url": "string",
              "error": {
                "code": "string",
                "message": "string"
              }
            },
            "featured": {
              "size": "string",
              "fileName": "string",
              "url": "string",
              "error": {
                "code": "string",
                "message": "string"
              }
            },
            "share": {
              "size": "string",
              "fileName": "string",
              "url": "string",
              "error": {
                "code": "string",
                "message": "string"
              }
            }
          }
        }
      ],
      "videos": [
        {
          "type": "youtube",
          "url": "string",
          "cover": {
            "url": "string",
            "copy": "string",
            "alt": "string",
            "originalUrl": "string",
            "fileName": "string",
            "previews": {
              "card": {
                "size": "string",
                "fileName": "string",
                "url": "string",
                "error": {
                  "code": "string",
                  "message": "string"
                }
              },
              "dashboard": {
                "size": "string",
                "fileName": "string",
                "url": "string",
                "error": {
                  "code": "string",
                  "message": "string"
                }
              },
              "detail": {
                "size": "string",
                "fileName": "string",
                "url": "string",
                "error": {
                  "code": "string",
                  "message": "string"
                }
              },
              "featured": {
                "size": "string",
                "fileName": "string",
                "url": "string",
                "error": {
                  "code": "string",
                  "message": "string"
                }
              },
              "share": {
                "size": "string",
                "fileName": "string",
                "url": "string",
                "error": {
                  "code": "string",
                  "message": "string"
                }
              }
            }
          },
          "description": "string"
        }
      ],
      "dates": [
        {
          "from": "2019-08-24T14:15:22Z",
          "to": "2019-08-24T14:15:22Z",
          "duration": 0,
          "purchaseLink": "string"
        }
      ],
      "endDate": "2019-08-24T14:15:22Z",
      "venues": [
        {
          "id": "string",
          "title": "string",
          "pictures": [
            {
              "url": "string",
              "copy": "string",
              "alt": "string",
              "originalUrl": "string",
              "fileName": "string",
              "previews": {
                "card": {
                  "size": "string",
                  "fileName": "string",
                  "url": "string",
                  "error": {
                    "code": "string",
                    "message": "string"
                  }
                },
                "dashboard": {
                  "size": "string",
                  "fileName": "string",
                  "url": "string",
                  "error": {
                    "code": "string",
                    "message": "string"
                  }
                },
                "detail": {
                  "size": "string",
                  "fileName": "string",
                  "url": "string",
                  "error": {
                    "code": "string",
                    "message": "string"
                  }
                },
                "featured": {
                  "size": "string",
                  "fileName": "string",
                  "url": "string",
                  "error": {
                    "code": "string",
                    "message": "string"
                  }
                },
                "share": {
                  "size": "string",
                  "fileName": "string",
                  "url": "string",
                  "error": {
                    "code": "string",
                    "message": "string"
                  }
                }
              }
            }
          ],
          "location": {
            "address": {
              "street": "string",
              "number": "string",
              "postcode": "string",
              "town": "string",
              "commune": "string",
              "country": "string",
              "longitude": "string",
              "latitude": "string",
              "gid": "string",
              "mapUrl": "string"
            }
          },
          "description": "string",
          "categories": [
            "string"
          ],
          "website": "string",
          "contact": {
            "name": "string",
            "email": "string",
            "phone": "string",
            "website": "string",
            "company": "string"
          },
          "timestamps": {
            "createdAt": "2019-08-24T14:15:22Z",
            "createdBy": "string",
            "updatedAt": "2019-08-24T14:15:22Z",
            "updatedBy": "string",
            "deletedAt": "2019-08-24T14:15:22Z",
            "deletedBy": "string"
          }
        }
      ],
      "location": {
        "address": {
          "street": "string",
          "number": "string",
          "postcode": "string",
          "town": "string",
          "commune": "string",
          "country": "string",
          "longitude": "string",
          "latitude": "string",
          "gid": "string",
          "mapUrl": "string"
        }
      },
      "description": "string",
      "categories": [
        "string"
      ],
      "tags": [
        "string"
      ],
      "audiences": [
        "string"
      ],
      "languages": [
        "string"
      ],
      "environments": [
        "string"
      ],
      "formats": [
        "string"
      ],
      "contact": {
        "name": "string",
        "email": "string",
        "phone": "string",
        "website": "string",
        "company": "string"
      },
      "tickets": [
        {
          "title": "string",
          "price": 0,
          "currency": "EUR",
          "quantity": 0,
          "salesStart": "2019-08-24",
          "salesEnd": "2019-08-24"
        }
      ],
      "purchaseLink": "string",
      "luxembourgTickets": {
        "publishOnEventim": true,
        "includeSalesFee": true,
        "delivery": [
          "self-print"
        ],
        "saleLimit": 0,
        "excludedTickets": 0,
        "kulturpassTickets": 0,
        "requiresSeatingPlan": true,
        "seatingReservation": true
      },
      "salesContact": {
        "name": "string",
        "email": "string",
        "phone": "string",
        "website": "string",
        "company": "string"
      },
      "status": {
        "current": "string",
        "startDate": "2019-08-24T14:15:22Z"
      },
      "organisationId": "string",
      "timestamps": {
        "createdAt": "2019-08-24T14:15:22Z",
        "createdBy": "string",
        "updatedAt": "2019-08-24T14:15:22Z",
        "updatedBy": "string",
        "deletedAt": "2019-08-24T14:15:22Z",
        "deletedBy": "string"
      }
    }
  ]
}
Responses
| Status | Meaning | Description | Schema | 
|---|---|---|---|
| 200 | OK | 200 response | ListExperienceResponse | 
| 400 | Bad Request | 400 response | ListExperienceErrorResponse | 
| 404 | Not Found | 404 response | ListExperienceNotFoundResponse | 
Audiences
ListAudiences
Code samples
# You can also use wget
curl -X GET /audiences \
  -H 'Accept: application/json' \
  -H 'api-key: API_KEY'
GET /audiences HTTP/1.1
Accept: application/json
var headers = {
  'Accept':'application/json',
  'api-key':'API_KEY'
};
$.ajax({
  url: '/audiences',
  method: 'get',
  headers: headers,
  success: function(data) {
    console.log(JSON.stringify(data));
  }
})
const fetch = require('node-fetch');
const headers = {
  'Accept':'application/json',
  'api-key':'API_KEY'
};
fetch('/audiences',
{
  method: 'GET',
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
require 'rest-client'
require 'json'
headers = {
  'Accept' => 'application/json',
  'api-key' => 'API_KEY'
}
result = RestClient.get '/audiences',
  params: {
  }, headers: headers
p JSON.parse(result)
import requests
headers = {
  'Accept': 'application/json',
  'api-key': 'API_KEY'
}
r = requests.get('/audiences', params={
}, headers = headers)
print r.json()
URL obj = new URL("/audiences");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
       "bytes"
       "net/http"
)
func main() {
    headers := map[string][]string{
        "Accept": []string{"application/json"},
        "api-key": []string{"API_KEY"},
        
    }
    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "/audiences", data)
    req.Header = headers
    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}
GET /audiences
Get all available audience types
Example responses
200 Response
{
  "stats": {
    "start": 0,
    "end": 0,
    "duration": 0
  },
  "records": [
    {
      "id": "string",
      "titles": "string"
    }
  ]
}
Responses
| Status | Meaning | Description | Schema | 
|---|---|---|---|
| 200 | OK | 200 response | ListAudiencesResponse | 
| 400 | Bad Request | 400 response | ListAudiencesErrorResponse | 
| 404 | Not Found | 404 response | ListAudiencesNotFoundResponse | 
Categories
ListCategories
Code samples
# You can also use wget
curl -X GET /categories?type=string \
  -H 'Accept: application/json' \
  -H 'api-key: API_KEY'
GET /categories?type=string HTTP/1.1
Accept: application/json
var headers = {
  'Accept':'application/json',
  'api-key':'API_KEY'
};
$.ajax({
  url: '/categories',
  method: 'get',
  data: '?type=string',
  headers: headers,
  success: function(data) {
    console.log(JSON.stringify(data));
  }
})
const fetch = require('node-fetch');
const headers = {
  'Accept':'application/json',
  'api-key':'API_KEY'
};
fetch('/categories?type=string',
{
  method: 'GET',
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
require 'rest-client'
require 'json'
headers = {
  'Accept' => 'application/json',
  'api-key' => 'API_KEY'
}
result = RestClient.get '/categories',
  params: {
  'type' => 'string'
}, headers: headers
p JSON.parse(result)
import requests
headers = {
  'Accept': 'application/json',
  'api-key': 'API_KEY'
}
r = requests.get('/categories', params={
  'type': 'string'
}, headers = headers)
print r.json()
URL obj = new URL("/categories?type=string");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
       "bytes"
       "net/http"
)
func main() {
    headers := map[string][]string{
        "Accept": []string{"application/json"},
        "api-key": []string{"API_KEY"},
        
    }
    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "/categories", data)
    req.Header = headers
    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}
GET /categories
Get all available categories
Parameters
| Name | In | Type | Required | Description | 
|---|---|---|---|---|
| type | query | string | true | Category type ('experience', 'venue') | 
Example responses
200 Response
{
  "stats": {
    "start": 0,
    "end": 0,
    "duration": 0
  },
  "records": [
    {
      "id": "string",
      "parent": "string",
      "order": 0,
      "titles": "string",
      "type": "experience"
    }
  ]
}
Responses
| Status | Meaning | Description | Schema | 
|---|---|---|---|
| 200 | OK | 200 response | ListCategoriesResponse | 
| 400 | Bad Request | 400 response | ListCategoriesErrorResponse | 
| 404 | Not Found | 404 response | ListCategoriesNotFoundResponse | 
Communes
ListCommunes
Code samples
# You can also use wget
curl -X GET /communes \
  -H 'Accept: application/json' \
  -H 'api-key: API_KEY'
GET /communes HTTP/1.1
Accept: application/json
var headers = {
  'Accept':'application/json',
  'api-key':'API_KEY'
};
$.ajax({
  url: '/communes',
  method: 'get',
  headers: headers,
  success: function(data) {
    console.log(JSON.stringify(data));
  }
})
const fetch = require('node-fetch');
const headers = {
  'Accept':'application/json',
  'api-key':'API_KEY'
};
fetch('/communes',
{
  method: 'GET',
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
require 'rest-client'
require 'json'
headers = {
  'Accept' => 'application/json',
  'api-key' => 'API_KEY'
}
result = RestClient.get '/communes',
  params: {
  }, headers: headers
p JSON.parse(result)
import requests
headers = {
  'Accept': 'application/json',
  'api-key': 'API_KEY'
}
r = requests.get('/communes', params={
}, headers = headers)
print r.json()
URL obj = new URL("/communes");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
       "bytes"
       "net/http"
)
func main() {
    headers := map[string][]string{
        "Accept": []string{"application/json"},
        "api-key": []string{"API_KEY"},
        
    }
    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "/communes", data)
    req.Header = headers
    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}
GET /communes
Get all available communes (municipalities)
Example responses
200 Response
{
  "stats": {
    "start": 0,
    "end": 0,
    "duration": 0
  },
  "records": [
    {
      "id": "string",
      "titles": "string",
      "parent": "string"
    }
  ]
}
Responses
| Status | Meaning | Description | Schema | 
|---|---|---|---|
| 200 | OK | 200 response | ListCommunesResponse | 
| 400 | Bad Request | 400 response | ListCommunesErrorResponse | 
| 404 | Not Found | 404 response | ListCommunesNotFoundResponse | 
Environments
ListEnvironments
Code samples
# You can also use wget
curl -X GET /environments \
  -H 'Accept: application/json' \
  -H 'api-key: API_KEY'
GET /environments HTTP/1.1
Accept: application/json
var headers = {
  'Accept':'application/json',
  'api-key':'API_KEY'
};
$.ajax({
  url: '/environments',
  method: 'get',
  headers: headers,
  success: function(data) {
    console.log(JSON.stringify(data));
  }
})
const fetch = require('node-fetch');
const headers = {
  'Accept':'application/json',
  'api-key':'API_KEY'
};
fetch('/environments',
{
  method: 'GET',
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
require 'rest-client'
require 'json'
headers = {
  'Accept' => 'application/json',
  'api-key' => 'API_KEY'
}
result = RestClient.get '/environments',
  params: {
  }, headers: headers
p JSON.parse(result)
import requests
headers = {
  'Accept': 'application/json',
  'api-key': 'API_KEY'
}
r = requests.get('/environments', params={
}, headers = headers)
print r.json()
URL obj = new URL("/environments");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
       "bytes"
       "net/http"
)
func main() {
    headers := map[string][]string{
        "Accept": []string{"application/json"},
        "api-key": []string{"API_KEY"},
        
    }
    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "/environments", data)
    req.Header = headers
    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}
GET /environments
Get all available environment types
Example responses
200 Response
{
  "stats": {
    "start": 0,
    "end": 0,
    "duration": 0
  },
  "records": [
    {
      "id": "string",
      "titles": "string"
    }
  ]
}
Responses
| Status | Meaning | Description | Schema | 
|---|---|---|---|
| 200 | OK | 200 response | ListEnvironmentsResponse | 
| 400 | Bad Request | 400 response | ListEnvironmentsErrorResponse | 
| 404 | Not Found | 404 response | ListEnvironmentsNotFoundResponse | 
Formats
ListFormats
Code samples
# You can also use wget
curl -X GET /formats \
  -H 'Accept: application/json' \
  -H 'api-key: API_KEY'
GET /formats HTTP/1.1
Accept: application/json
var headers = {
  'Accept':'application/json',
  'api-key':'API_KEY'
};
$.ajax({
  url: '/formats',
  method: 'get',
  headers: headers,
  success: function(data) {
    console.log(JSON.stringify(data));
  }
})
const fetch = require('node-fetch');
const headers = {
  'Accept':'application/json',
  'api-key':'API_KEY'
};
fetch('/formats',
{
  method: 'GET',
  headers: headers
})
.then(function(res) {
    return res.json();
}).then(function(body) {
    console.log(body);
});
require 'rest-client'
require 'json'
headers = {
  'Accept' => 'application/json',
  'api-key' => 'API_KEY'
}
result = RestClient.get '/formats',
  params: {
  }, headers: headers
p JSON.parse(result)
import requests
headers = {
  'Accept': 'application/json',
  'api-key': 'API_KEY'
}
r = requests.get('/formats', params={
}, headers = headers)
print r.json()
URL obj = new URL("/formats");
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
BufferedReader in = new BufferedReader(
    new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null) {
    response.append(inputLine);
}
in.close();
System.out.println(response.toString());
package main
import (
       "bytes"
       "net/http"
)
func main() {
    headers := map[string][]string{
        "Accept": []string{"application/json"},
        "api-key": []string{"API_KEY"},
        
    }
    data := bytes.NewBuffer([]byte{jsonReq})
    req, err := http.NewRequest("GET", "/formats", data)
    req.Header = headers
    client := &http.Client{}
    resp, err := client.Do(req)
    // ...
}
GET /formats
Get all available format types
Example responses
200 Response
{
  "stats": {
    "start": 0,
    "end": 0,
    "duration": 0
  },
  "records": [
    {
      "id": "string",
      "titles": "string"
    }
  ]
}
Responses
| Status | Meaning | Description | Schema | 
|---|---|---|---|
| 200 | OK | 200 response | ListFormatsResponse | 
| 400 | Bad Request | 400 response | ListFormatsErrorResponse | 
| 404 | Not Found | 404 response | ListFormatsNotFoundResponse | 
Schemas
Address
{
  "street": "string",
  "number": "string",
  "postcode": "string",
  "town": "string",
  "commune": "string",
  "country": "string",
  "longitude": "string",
  "latitude": "string",
  "gid": "string",
  "mapUrl": "string"
}
Properties
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| street | string | true | none | none | 
| number | string | false | none | none | 
| postcode | string | true | none | none | 
| town | string | true | none | none | 
| commune | string | true | none | none | 
| country | string | true | none | none | 
| longitude | string | true | none | none | 
| latitude | string | true | none | none | 
| gid | string | false | none | none | 
| mapUrl | string | false | none | none | 
Audience
{
  "id": "string",
  "titles": "string"
}
Properties
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| id | string | true | none | none | 
| titles | Content | true | none | none | 
CancelPostponeCompleteExperienceErrorResponse
{
  "error": "string"
}
Properties
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| error | string | true | none | Error message | 
CancelPostponeCompleteExperienceNotFoundResponse
{}
REQUEST FAILED - no published experience found
Properties
None
CancelPostponeCompleteExperienceSuccessResponse
{
  "stats": {
    "start": 0,
    "end": 0,
    "duration": 0
  },
  "result": true
}
Properties
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| stats | StatsResponse | true | none | none | 
| result | boolean | true | none | none | 
Category
{
  "id": "string",
  "parent": "string",
  "order": 0,
  "titles": "string",
  "type": "experience"
}
Properties
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| id | string | true | none | none | 
| parent | string | false | none | none | 
| order | number(float) | false | none | none | 
| titles | Content | true | none | none | 
| type | string | true | none | none | 
Enumerated Values
| Property | Value | 
|---|---|
| type | experience | 
| type | venue | 
Commune
{
  "id": "string",
  "titles": "string",
  "parent": "string"
}
Properties
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| id | string | true | none | none | 
| titles | Content | true | none | none | 
| parent | string | false | none | none | 
Contact
{
  "name": "string",
  "email": "string",
  "phone": "string",
  "website": "string",
  "company": "string"
}
Properties
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| name | string | true | none | none | 
| string | true | none | none | |
| phone | string | true | none | none | 
| website | string | false | none | none | 
| company | string | true | none | none | 
Content
"string"
Properties
oneOf
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| anonymous | string | false | none | none | 
xor
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| anonymous | object | false | none | none | 
| » en | string | false | none | none | 
| » fr | string | false | none | none | 
| » de | string | false | none | none | 
CreateExperienceErrorResponse
{
  "field": "string",
  "message": "string"
}
Properties
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| field | string | true | none | Error message | 
| message | string | true | none | none | 
CreateExperienceRequest
{
  "title": "string",
  "subtitle": "string",
  "pictures": [
    {
      "url": "string",
      "copy": "string",
      "alt": "string"
    }
  ],
  "videos": [
    {
      "type": "youtube",
      "url": "string",
      "cover": "string",
      "description": "string"
    }
  ],
  "dates": [
    {
      "from": "2019-08-24T14:15:22Z",
      "to": "2019-08-24T14:15:22Z",
      "duration": 0,
      "purchaseLink": "string"
    }
  ],
  "venues": [
    "string"
  ],
  "location": {
    "address": {
      "street": "string",
      "number": "string",
      "postcode": "string",
      "town": "string",
      "commune": "string",
      "country": "string",
      "longitude": "string",
      "latitude": "string",
      "gid": "string",
      "mapUrl": "string"
    }
  },
  "description": "string",
  "categories": [
    "string"
  ],
  "audiences": [
    "string"
  ],
  "languages": [
    "string"
  ],
  "environments": [
    "string"
  ],
  "formats": [
    "string"
  ],
  "tags": [
    "string"
  ],
  "contact": {
    "name": "string",
    "email": "string",
    "phone": "string",
    "website": "string",
    "company": "string"
  },
  "tickets": [
    {
      "title": "string",
      "price": 0,
      "currency": "EUR",
      "quantity": 0,
      "salesStart": "2019-08-24",
      "salesEnd": "2019-08-24"
    }
  ],
  "purchaseLink": "string",
  "luxembourgTickets": {
    "publishOnEventim": true,
    "includeSalesFee": true,
    "delivery": [
      "self-print"
    ],
    "saleLimit": 0,
    "excludedTickets": 0,
    "kulturpassTickets": 0,
    "requiresSeatingPlan": true,
    "seatingReservation": true
  },
  "salesContact": {
    "name": "string",
    "email": "string",
    "phone": "string",
    "website": "string",
    "company": "string"
  },
  "status": "draft"
}
*Dates: the date-time for dates has to be a date as an ISO string, as defined here: https://tools.ietf.org/html/rfc3339#section-5.6
The API expects the dates in ISO string, and on ECHO it will be displayed in 'Europe/Luxembourg' timezone.
If the date is in UTC form (preferrable):
- like 2022-04-23T18:00:00Z on ECHO it will be 23/04/2022, 20:00,
 - or for winter 2022-01-23T19:00:00Z on ECHO it will be 23/01/2022, 20:00,
 
If the date is in GMT, have to specify the offset according to when the experience is planned:
- like 2022-04-23T18:00:00+02:00 on ECHO it will be 23/04/2022, 20:00,
 - or for winter 2022-01-23T19:00:00+01:00 on ECHO it will be 23/01/2022, 20:00,
 
Prices: The experience is displayed as free until the first ticket is added.*
Properties
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| title | Content | true | none | none | 
| subtitle | Content | false | none | none | 
| pictures | [PictureCreateRequest] | true | none | List of pictures to add to the experience. First picture will be used as a main image. Important: file names should be unique, and file size should be less than 2MB! Allowed file types: jpeg, png | 
| videos | [VideoCreateRequest] | false | none | none | 
| dates | [oneOf] | true | none | none | 
oneOf
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| » anonymous | ExperienceDateSingle | false | none | none | 
xor
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| » anonymous | ExperienceDateRecurring | false | none | none | 
xor
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| » anonymous | ExperienceDatePermanent | false | none | none | 
continued
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| venues | [string] | true | none | none | 
| location | Location | false | none | none | 
| description | Content | true | none | none | 
| categories | [string] | true | none | Categories: id from the /categories endpoint | 
| audiences | [string] | true | none | none | 
| languages | [string] | true | none | List of languages the experience is in: lb, fr, de, en, etc. | 
| environments | [string] | true | none | Experience environments: indoor, outdoor, online, etc. | 
| formats | [string] | true | none | Formats: workshop, concert, lecture, etc. | 
| tags | [string] | true | none | none | 
| contact | Contact | false | none | none | 
| tickets | [Ticket] | false | none | Tickets | 
| purchaseLink | string | false | none | Purchase link: url of the ticketing page if not present in the Tickets | 
| luxembourgTickets | LuxTicketSettings | false | none | Luxembourg Ticket Settings in case if the tickets for the experience should be available via luxembourg-ticket.lu there are additional settings to fine tune the user experience | 
| salesContact | Contact | false | none | none | 
| status | string | false | none | Status: - draft: add a new experience to the organisation's repository as a draft. - pending: save and ask for validation of the experience in one request. (in case of PUT: the validation is triggered only if the previous status was draft)  ![]()  | 
Enumerated Values
| Property | Value | 
|---|---|
| status | draft | 
| status | pending | 
CreateExperienceResponse
{
  "stats": {
    "start": 0,
    "end": 0,
    "duration": 0
  },
  "record": {
    "id": "string",
    "title": "string",
    "subtitle": "string",
    "pictures": [
      {
        "url": "string",
        "copy": "string",
        "alt": "string",
        "originalUrl": "string",
        "fileName": "string",
        "previews": {
          "card": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          },
          "dashboard": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          },
          "detail": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          },
          "featured": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          },
          "share": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          }
        }
      }
    ],
    "videos": [
      {
        "type": "youtube",
        "url": "string",
        "cover": {
          "url": "string",
          "copy": "string",
          "alt": "string",
          "originalUrl": "string",
          "fileName": "string",
          "previews": {
            "card": {
              "size": "string",
              "fileName": "string",
              "url": "string",
              "error": {
                "code": "string",
                "message": "string"
              }
            },
            "dashboard": {
              "size": "string",
              "fileName": "string",
              "url": "string",
              "error": {
                "code": "string",
                "message": "string"
              }
            },
            "detail": {
              "size": "string",
              "fileName": "string",
              "url": "string",
              "error": {
                "code": "string",
                "message": "string"
              }
            },
            "featured": {
              "size": "string",
              "fileName": "string",
              "url": "string",
              "error": {
                "code": "string",
                "message": "string"
              }
            },
            "share": {
              "size": "string",
              "fileName": "string",
              "url": "string",
              "error": {
                "code": "string",
                "message": "string"
              }
            }
          }
        },
        "description": "string"
      }
    ],
    "dates": [
      {
        "from": "2019-08-24T14:15:22Z",
        "to": "2019-08-24T14:15:22Z",
        "duration": 0,
        "purchaseLink": "string"
      }
    ],
    "endDate": "2019-08-24T14:15:22Z",
    "venues": [
      {
        "id": "string",
        "title": "string",
        "pictures": [
          {
            "url": "string",
            "copy": "string",
            "alt": "string",
            "originalUrl": "string",
            "fileName": "string",
            "previews": {
              "card": {
                "size": "string",
                "fileName": "string",
                "url": "string",
                "error": {
                  "code": "string",
                  "message": "string"
                }
              },
              "dashboard": {
                "size": "string",
                "fileName": "string",
                "url": "string",
                "error": {
                  "code": "string",
                  "message": "string"
                }
              },
              "detail": {
                "size": "string",
                "fileName": "string",
                "url": "string",
                "error": {
                  "code": "string",
                  "message": "string"
                }
              },
              "featured": {
                "size": "string",
                "fileName": "string",
                "url": "string",
                "error": {
                  "code": "string",
                  "message": "string"
                }
              },
              "share": {
                "size": "string",
                "fileName": "string",
                "url": "string",
                "error": {
                  "code": "string",
                  "message": "string"
                }
              }
            }
          }
        ],
        "location": {
          "address": {
            "street": "string",
            "number": "string",
            "postcode": "string",
            "town": "string",
            "commune": "string",
            "country": "string",
            "longitude": "string",
            "latitude": "string",
            "gid": "string",
            "mapUrl": "string"
          }
        },
        "description": "string",
        "categories": [
          "string"
        ],
        "website": "string",
        "contact": {
          "name": "string",
          "email": "string",
          "phone": "string",
          "website": "string",
          "company": "string"
        },
        "timestamps": {
          "createdAt": "2019-08-24T14:15:22Z",
          "createdBy": "string",
          "updatedAt": "2019-08-24T14:15:22Z",
          "updatedBy": "string",
          "deletedAt": "2019-08-24T14:15:22Z",
          "deletedBy": "string"
        }
      }
    ],
    "location": {
      "address": {
        "street": "string",
        "number": "string",
        "postcode": "string",
        "town": "string",
        "commune": "string",
        "country": "string",
        "longitude": "string",
        "latitude": "string",
        "gid": "string",
        "mapUrl": "string"
      }
    },
    "description": "string",
    "categories": [
      "string"
    ],
    "tags": [
      "string"
    ],
    "audiences": [
      "string"
    ],
    "languages": [
      "string"
    ],
    "environments": [
      "string"
    ],
    "formats": [
      "string"
    ],
    "contact": {
      "name": "string",
      "email": "string",
      "phone": "string",
      "website": "string",
      "company": "string"
    },
    "tickets": [
      {
        "title": "string",
        "price": 0,
        "currency": "EUR",
        "quantity": 0,
        "salesStart": "2019-08-24",
        "salesEnd": "2019-08-24"
      }
    ],
    "purchaseLink": "string",
    "luxembourgTickets": {
      "publishOnEventim": true,
      "includeSalesFee": true,
      "delivery": [
        "self-print"
      ],
      "saleLimit": 0,
      "excludedTickets": 0,
      "kulturpassTickets": 0,
      "requiresSeatingPlan": true,
      "seatingReservation": true
    },
    "salesContact": {
      "name": "string",
      "email": "string",
      "phone": "string",
      "website": "string",
      "company": "string"
    },
    "status": {
      "current": "string",
      "startDate": "2019-08-24T14:15:22Z"
    },
    "organisationId": "string",
    "timestamps": {
      "createdAt": "2019-08-24T14:15:22Z",
      "createdBy": "string",
      "updatedAt": "2019-08-24T14:15:22Z",
      "updatedBy": "string",
      "deletedAt": "2019-08-24T14:15:22Z",
      "deletedBy": "string"
    }
  }
}
Properties
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| stats | StatsResponse | true | none | none | 
| record | Experience | true | none | Description for Experience Model | 
CreateVenueErrorResponse
{
  "error": "string"
}
Properties
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| error | string | true | none | Error message | 
CreateVenueRequest
{
  "title": "string",
  "pictures": [
    {
      "url": "string",
      "copy": "string",
      "alt": "string"
    }
  ],
  "location": {
    "address": {
      "street": "string",
      "number": "string",
      "postcode": "string",
      "town": "string",
      "commune": "string",
      "country": "string",
      "longitude": "string",
      "latitude": "string",
      "gid": "string",
      "mapUrl": "string"
    }
  },
  "description": "string",
  "categories": [
    "string"
  ],
  "website": "string",
  "contact": {
    "name": "string",
    "email": "string",
    "phone": "string",
    "website": "string",
    "company": "string"
  }
}
Properties
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| title | string | true | none | Title | 
| pictures | [PictureCreateRequest] | false | none | List of pictures to import/add to the venue. First picture will be used as a main image. Important: file names should be unique! | 
| location | Location | true | none | none | 
| description | Content | true | none | none | 
| categories | [string] | true | none | Category IDs | 
| website | string | true | none | Website URL | 
| contact | Contact | true | none | none | 
CreateVenueResponse
{
  "stats": {
    "start": 0,
    "end": 0,
    "duration": 0
  },
  "record": {
    "id": "string",
    "title": "string",
    "pictures": [
      {
        "url": "string",
        "copy": "string",
        "alt": "string",
        "originalUrl": "string",
        "fileName": "string",
        "previews": {
          "card": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          },
          "dashboard": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          },
          "detail": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          },
          "featured": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          },
          "share": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          }
        }
      }
    ],
    "location": {
      "address": {
        "street": "string",
        "number": "string",
        "postcode": "string",
        "town": "string",
        "commune": "string",
        "country": "string",
        "longitude": "string",
        "latitude": "string",
        "gid": "string",
        "mapUrl": "string"
      }
    },
    "description": "string",
    "categories": [
      "string"
    ],
    "website": "string",
    "contact": {
      "name": "string",
      "email": "string",
      "phone": "string",
      "website": "string",
      "company": "string"
    },
    "timestamps": {
      "createdAt": "2019-08-24T14:15:22Z",
      "createdBy": "string",
      "updatedAt": "2019-08-24T14:15:22Z",
      "updatedBy": "string",
      "deletedAt": "2019-08-24T14:15:22Z",
      "deletedBy": "string"
    }
  }
}
Properties
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| stats | StatsResponse | true | none | none | 
| record | Venue | true | none | Venue Model | 
DateRequest
{
  "from": "2019-08-24T14:15:22Z",
  "to": "2019-08-24T14:15:22Z"
}
A date-time as defined by https://tools.ietf.org/html/rfc3339#section-5.6
Properties
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| from | string(date-time) | true | none | none | 
| to | string(date-time) | false | none | none | 
DeleteExperienceConflictResponse
{}
REQUEST FAILED - Published experience found, unpublish it first.
Properties
None
DeleteExperienceErrorResponse
{
  "error": "string"
}
Properties
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| error | string | true | none | Error message | 
DeleteExperienceNotFoundResponse
{}
Properties
None
DeleteExperienceSuccessResponse
{
  "stats": {
    "start": 0,
    "end": 0,
    "duration": 0
  },
  "result": true
}
Properties
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| stats | StatsResponse | true | none | none | 
| result | boolean | true | none | none | 
Experience
{
  "id": "string",
  "title": "string",
  "subtitle": "string",
  "pictures": [
    {
      "url": "string",
      "copy": "string",
      "alt": "string",
      "originalUrl": "string",
      "fileName": "string",
      "previews": {
        "card": {
          "size": "string",
          "fileName": "string",
          "url": "string",
          "error": {
            "code": "string",
            "message": "string"
          }
        },
        "dashboard": {
          "size": "string",
          "fileName": "string",
          "url": "string",
          "error": {
            "code": "string",
            "message": "string"
          }
        },
        "detail": {
          "size": "string",
          "fileName": "string",
          "url": "string",
          "error": {
            "code": "string",
            "message": "string"
          }
        },
        "featured": {
          "size": "string",
          "fileName": "string",
          "url": "string",
          "error": {
            "code": "string",
            "message": "string"
          }
        },
        "share": {
          "size": "string",
          "fileName": "string",
          "url": "string",
          "error": {
            "code": "string",
            "message": "string"
          }
        }
      }
    }
  ],
  "videos": [
    {
      "type": "youtube",
      "url": "string",
      "cover": {
        "url": "string",
        "copy": "string",
        "alt": "string",
        "originalUrl": "string",
        "fileName": "string",
        "previews": {
          "card": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          },
          "dashboard": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          },
          "detail": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          },
          "featured": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          },
          "share": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          }
        }
      },
      "description": "string"
    }
  ],
  "dates": [
    {
      "from": "2019-08-24T14:15:22Z",
      "to": "2019-08-24T14:15:22Z",
      "duration": 0,
      "purchaseLink": "string"
    }
  ],
  "endDate": "2019-08-24T14:15:22Z",
  "venues": [
    {
      "id": "string",
      "title": "string",
      "pictures": [
        {
          "url": "string",
          "copy": "string",
          "alt": "string",
          "originalUrl": "string",
          "fileName": "string",
          "previews": {
            "card": {
              "size": "string",
              "fileName": "string",
              "url": "string",
              "error": {
                "code": "string",
                "message": "string"
              }
            },
            "dashboard": {
              "size": "string",
              "fileName": "string",
              "url": "string",
              "error": {
                "code": "string",
                "message": "string"
              }
            },
            "detail": {
              "size": "string",
              "fileName": "string",
              "url": "string",
              "error": {
                "code": "string",
                "message": "string"
              }
            },
            "featured": {
              "size": "string",
              "fileName": "string",
              "url": "string",
              "error": {
                "code": "string",
                "message": "string"
              }
            },
            "share": {
              "size": "string",
              "fileName": "string",
              "url": "string",
              "error": {
                "code": "string",
                "message": "string"
              }
            }
          }
        }
      ],
      "location": {
        "address": {
          "street": "string",
          "number": "string",
          "postcode": "string",
          "town": "string",
          "commune": "string",
          "country": "string",
          "longitude": "string",
          "latitude": "string",
          "gid": "string",
          "mapUrl": "string"
        }
      },
      "description": "string",
      "categories": [
        "string"
      ],
      "website": "string",
      "contact": {
        "name": "string",
        "email": "string",
        "phone": "string",
        "website": "string",
        "company": "string"
      },
      "timestamps": {
        "createdAt": "2019-08-24T14:15:22Z",
        "createdBy": "string",
        "updatedAt": "2019-08-24T14:15:22Z",
        "updatedBy": "string",
        "deletedAt": "2019-08-24T14:15:22Z",
        "deletedBy": "string"
      }
    }
  ],
  "location": {
    "address": {
      "street": "string",
      "number": "string",
      "postcode": "string",
      "town": "string",
      "commune": "string",
      "country": "string",
      "longitude": "string",
      "latitude": "string",
      "gid": "string",
      "mapUrl": "string"
    }
  },
  "description": "string",
  "categories": [
    "string"
  ],
  "tags": [
    "string"
  ],
  "audiences": [
    "string"
  ],
  "languages": [
    "string"
  ],
  "environments": [
    "string"
  ],
  "formats": [
    "string"
  ],
  "contact": {
    "name": "string",
    "email": "string",
    "phone": "string",
    "website": "string",
    "company": "string"
  },
  "tickets": [
    {
      "title": "string",
      "price": 0,
      "currency": "EUR",
      "quantity": 0,
      "salesStart": "2019-08-24",
      "salesEnd": "2019-08-24"
    }
  ],
  "purchaseLink": "string",
  "luxembourgTickets": {
    "publishOnEventim": true,
    "includeSalesFee": true,
    "delivery": [
      "self-print"
    ],
    "saleLimit": 0,
    "excludedTickets": 0,
    "kulturpassTickets": 0,
    "requiresSeatingPlan": true,
    "seatingReservation": true
  },
  "salesContact": {
    "name": "string",
    "email": "string",
    "phone": "string",
    "website": "string",
    "company": "string"
  },
  "status": {
    "current": "string",
    "startDate": "2019-08-24T14:15:22Z"
  },
  "organisationId": "string",
  "timestamps": {
    "createdAt": "2019-08-24T14:15:22Z",
    "createdBy": "string",
    "updatedAt": "2019-08-24T14:15:22Z",
    "updatedBy": "string",
    "deletedAt": "2019-08-24T14:15:22Z",
    "deletedBy": "string"
  }
}
Description for Experience Model
Properties
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| id | string | true | none | Experience ID | 
| title | Content | true | none | none | 
| subtitle | Content | false | none | none | 
| pictures | [Picture] | true | none | List of pictures: { size, url, isPlaceholder } | 
| videos | [Video] | false | none | Videos: { id, type, url } | 
| dates | [oneOf] | true | none | Dates for Single, Recurring, or Permanent experiences | 
oneOf
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| » anonymous | ExperienceDateSingle | false | none | none | 
xor
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| » anonymous | ExperienceDateRecurring | false | none | none | 
xor
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| » anonymous | ExperienceDatePermanent | false | none | none | 
continued
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| endDate | string(date-time) | true | none | Date of last appearence on the events list (generated from dates array) | 
| venues | [Venue] | true | none | List of venues | 
| location | Location | false | none | none | 
| description | Content | true | none | none | 
| categories | [string] | true | none | List of category IDs | 
| tags | [string] | true | none | List of tags | 
| audiences | [string] | true | none | Audiences: { id, titles } | 
| languages | [string] | true | none | List of languages the experience is in: lb, fr, de, en, etc. | 
| environments | [string] | true | none | Experience environments: indoor, outdoor, online, etc. | 
| formats | [string] | true | none | Formats: workshop, concert, lecture, etc. | 
| contact | Contact | false | none | none | 
| tickets | [Ticket] | false | none | List of tickets: title, currency, value, etc. | 
| purchaseLink | string | false | none | Purchase Link: in case if any of tickets don't have link to the purchase page, this will be used | 
| luxembourgTickets | LuxTicketSettings | false | none | Luxembourg Ticket Settings in case if the tickets for the experience should be available via luxembourg-ticket.lu there are additional settings to fine tune the user experience | 
| salesContact | Contact | false | none | none | 
| status | ExperienceStatus | false | none | none | 
| organisationId | string | true | none | Organisation ID | 
| timestamps | Timestamps | true | none | none | 
ExperienceDatePermanent
{
  "openingHours": {
    "monday": {
      "from": "string",
      "to": "string",
      "breakTime": true,
      "secondFrom": "string",
      "secondTo": "string"
    },
    "tuesday": {
      "from": "string",
      "to": "string",
      "breakTime": true,
      "secondFrom": "string",
      "secondTo": "string"
    },
    "wednesday": {
      "from": "string",
      "to": "string",
      "breakTime": true,
      "secondFrom": "string",
      "secondTo": "string"
    },
    "thursday": {
      "from": "string",
      "to": "string",
      "breakTime": true,
      "secondFrom": "string",
      "secondTo": "string"
    },
    "friday": {
      "from": "string",
      "to": "string",
      "breakTime": true,
      "secondFrom": "string",
      "secondTo": "string"
    },
    "saturday": {
      "from": "string",
      "to": "string",
      "breakTime": true,
      "secondFrom": "string",
      "secondTo": "string"
    },
    "sunday": {
      "from": "string",
      "to": "string",
      "breakTime": true,
      "secondFrom": "string",
      "secondTo": "string"
    }
  },
  "closingTimes": [
    {
      "from": "2019-08-24T14:15:22Z",
      "to": "2019-08-24T14:15:22Z",
      "duration": 0,
      "purchaseLink": "string"
    }
  ],
  "from": "2019-08-24T14:15:22Z",
  "to": "2019-08-24T14:15:22Z",
  "purchaseLink": "string"
}
Properties
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| openingHours | OpeningHours | true | none | none | 
| closingTimes | [ExperienceDateSingle] | false | none | none | 
| from | string(date-time) | true | none | none | 
| to | string(date-time) | true | none | none | 
| purchaseLink | string | false | none | none | 
ExperienceDateRecurring
{
  "from": "2019-08-24T14:15:22Z",
  "to": "2019-08-24T14:15:22Z",
  "duration": 0,
  "rrule": "string",
  "purchaseLink": "string"
}
Properties
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| from | string(date-time) | true | none | Start date and time of the occurences in the rrule (overwrite the date in the rrule if tin the rrule date is earlier) | 
| to | string(date-time) | true | none | End date and time of the occurences in the rrule (overwrite the date in the rrule if the rrule have a later date) | 
| duration | number(float) | false | none | The length of the show in minutes | 
| rrule | string | true | none | Recurrence Rule from the iCal RFC (https://datatracker.ietf.org/doc/html/rfc5545) | 
| purchaseLink | string | false | none | Purchase Link: in case if there is a direct link to the repeating events from the rrule | 
ExperienceDateSingle
{
  "from": "2019-08-24T14:15:22Z",
  "to": "2019-08-24T14:15:22Z",
  "duration": 0,
  "purchaseLink": "string"
}
Properties
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| from | string(date-time) | true | none | Start date and time of the experience | 
| to | string(date-time) | true | none | End date and time of the experience | 
| duration | number(float) | false | none | The length of the show in minutes | 
| purchaseLink | string | false | none | Purchase Link: in case if there is a direct link to the specific date | 
ExperienceStatus
{
  "current": "string",
  "startDate": "2019-08-24T14:15:22Z"
}
Properties
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| current | string | true | none | Current status of the experience: draft, pending, rejected or published. Only the first two can be set by API | 
| startDate | string(date-time) | true | none | Date and time when the status was set | 
Format
{
  "id": "string",
  "titles": "string"
}
Properties
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| id | string | true | none | none | 
| titles | Content | true | none | none | 
GetExperienceErrorResponse
{
  "error": "string"
}
Properties
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| error | string | true | none | Error message | 
GetExperienceNotFoundResponse
{}
Properties
None
GetExperienceResponse
{
  "stats": {
    "start": 0,
    "end": 0,
    "duration": 0
  },
  "record": {
    "id": "string",
    "title": "string",
    "subtitle": "string",
    "pictures": [
      {
        "url": "string",
        "copy": "string",
        "alt": "string",
        "originalUrl": "string",
        "fileName": "string",
        "previews": {
          "card": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          },
          "dashboard": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          },
          "detail": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          },
          "featured": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          },
          "share": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          }
        }
      }
    ],
    "videos": [
      {
        "type": "youtube",
        "url": "string",
        "cover": {
          "url": "string",
          "copy": "string",
          "alt": "string",
          "originalUrl": "string",
          "fileName": "string",
          "previews": {
            "card": {
              "size": "string",
              "fileName": "string",
              "url": "string",
              "error": {
                "code": "string",
                "message": "string"
              }
            },
            "dashboard": {
              "size": "string",
              "fileName": "string",
              "url": "string",
              "error": {
                "code": "string",
                "message": "string"
              }
            },
            "detail": {
              "size": "string",
              "fileName": "string",
              "url": "string",
              "error": {
                "code": "string",
                "message": "string"
              }
            },
            "featured": {
              "size": "string",
              "fileName": "string",
              "url": "string",
              "error": {
                "code": "string",
                "message": "string"
              }
            },
            "share": {
              "size": "string",
              "fileName": "string",
              "url": "string",
              "error": {
                "code": "string",
                "message": "string"
              }
            }
          }
        },
        "description": "string"
      }
    ],
    "dates": [
      {
        "from": "2019-08-24T14:15:22Z",
        "to": "2019-08-24T14:15:22Z",
        "duration": 0,
        "purchaseLink": "string"
      }
    ],
    "endDate": "2019-08-24T14:15:22Z",
    "venues": [
      {
        "id": "string",
        "title": "string",
        "pictures": [
          {
            "url": "string",
            "copy": "string",
            "alt": "string",
            "originalUrl": "string",
            "fileName": "string",
            "previews": {
              "card": {
                "size": "string",
                "fileName": "string",
                "url": "string",
                "error": {
                  "code": "string",
                  "message": "string"
                }
              },
              "dashboard": {
                "size": "string",
                "fileName": "string",
                "url": "string",
                "error": {
                  "code": "string",
                  "message": "string"
                }
              },
              "detail": {
                "size": "string",
                "fileName": "string",
                "url": "string",
                "error": {
                  "code": "string",
                  "message": "string"
                }
              },
              "featured": {
                "size": "string",
                "fileName": "string",
                "url": "string",
                "error": {
                  "code": "string",
                  "message": "string"
                }
              },
              "share": {
                "size": "string",
                "fileName": "string",
                "url": "string",
                "error": {
                  "code": "string",
                  "message": "string"
                }
              }
            }
          }
        ],
        "location": {
          "address": {
            "street": "string",
            "number": "string",
            "postcode": "string",
            "town": "string",
            "commune": "string",
            "country": "string",
            "longitude": "string",
            "latitude": "string",
            "gid": "string",
            "mapUrl": "string"
          }
        },
        "description": "string",
        "categories": [
          "string"
        ],
        "website": "string",
        "contact": {
          "name": "string",
          "email": "string",
          "phone": "string",
          "website": "string",
          "company": "string"
        },
        "timestamps": {
          "createdAt": "2019-08-24T14:15:22Z",
          "createdBy": "string",
          "updatedAt": "2019-08-24T14:15:22Z",
          "updatedBy": "string",
          "deletedAt": "2019-08-24T14:15:22Z",
          "deletedBy": "string"
        }
      }
    ],
    "location": {
      "address": {
        "street": "string",
        "number": "string",
        "postcode": "string",
        "town": "string",
        "commune": "string",
        "country": "string",
        "longitude": "string",
        "latitude": "string",
        "gid": "string",
        "mapUrl": "string"
      }
    },
    "description": "string",
    "categories": [
      "string"
    ],
    "tags": [
      "string"
    ],
    "audiences": [
      "string"
    ],
    "languages": [
      "string"
    ],
    "environments": [
      "string"
    ],
    "formats": [
      "string"
    ],
    "contact": {
      "name": "string",
      "email": "string",
      "phone": "string",
      "website": "string",
      "company": "string"
    },
    "tickets": [
      {
        "title": "string",
        "price": 0,
        "currency": "EUR",
        "quantity": 0,
        "salesStart": "2019-08-24",
        "salesEnd": "2019-08-24"
      }
    ],
    "purchaseLink": "string",
    "luxembourgTickets": {
      "publishOnEventim": true,
      "includeSalesFee": true,
      "delivery": [
        "self-print"
      ],
      "saleLimit": 0,
      "excludedTickets": 0,
      "kulturpassTickets": 0,
      "requiresSeatingPlan": true,
      "seatingReservation": true
    },
    "salesContact": {
      "name": "string",
      "email": "string",
      "phone": "string",
      "website": "string",
      "company": "string"
    },
    "status": {
      "current": "string",
      "startDate": "2019-08-24T14:15:22Z"
    },
    "organisationId": "string",
    "timestamps": {
      "createdAt": "2019-08-24T14:15:22Z",
      "createdBy": "string",
      "updatedAt": "2019-08-24T14:15:22Z",
      "updatedBy": "string",
      "deletedAt": "2019-08-24T14:15:22Z",
      "deletedBy": "string"
    }
  }
}
Properties
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| stats | StatsResponse | true | none | none | 
| record | Experience | true | none | Description for Experience Model | 
GetVenueErrorResponse
{
  "error": "string"
}
Properties
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| error | string | true | none | Error message | 
GetVenueNotFoundResponse
{}
Properties
None
GetVenueResponse
{
  "stats": {
    "start": 0,
    "end": 0,
    "duration": 0
  },
  "record": {
    "id": "string",
    "title": "string",
    "pictures": [
      {
        "url": "string",
        "copy": "string",
        "alt": "string",
        "originalUrl": "string",
        "fileName": "string",
        "previews": {
          "card": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          },
          "dashboard": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          },
          "detail": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          },
          "featured": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          },
          "share": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          }
        }
      }
    ],
    "location": {
      "address": {
        "street": "string",
        "number": "string",
        "postcode": "string",
        "town": "string",
        "commune": "string",
        "country": "string",
        "longitude": "string",
        "latitude": "string",
        "gid": "string",
        "mapUrl": "string"
      }
    },
    "description": "string",
    "categories": [
      "string"
    ],
    "website": "string",
    "contact": {
      "name": "string",
      "email": "string",
      "phone": "string",
      "website": "string",
      "company": "string"
    },
    "timestamps": {
      "createdAt": "2019-08-24T14:15:22Z",
      "createdBy": "string",
      "updatedAt": "2019-08-24T14:15:22Z",
      "updatedBy": "string",
      "deletedAt": "2019-08-24T14:15:22Z",
      "deletedBy": "string"
    }
  }
}
Properties
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| stats | StatsResponse | true | none | none | 
| record | Venue | true | none | Venue Model | 
ListAudiencesErrorResponse
{
  "error": "string"
}
Properties
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| error | string | true | none | Error message | 
ListAudiencesNotFoundResponse
{}
Properties
None
ListAudiencesResponse
{
  "stats": {
    "start": 0,
    "end": 0,
    "duration": 0
  },
  "records": [
    {
      "id": "string",
      "titles": "string"
    }
  ]
}
Properties
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| stats | StatsResponse | true | none | none | 
| records | [Audience] | true | none | none | 
ListCategoriesErrorResponse
{
  "error": "string"
}
Properties
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| error | string | true | none | Error message | 
ListCategoriesNotFoundResponse
{}
Properties
None
ListCategoriesResponse
{
  "stats": {
    "start": 0,
    "end": 0,
    "duration": 0
  },
  "records": [
    {
      "id": "string",
      "parent": "string",
      "order": 0,
      "titles": "string",
      "type": "experience"
    }
  ]
}
Properties
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| stats | StatsResponse | true | none | none | 
| records | [Category] | true | none | none | 
ListCommunesErrorResponse
{
  "error": "string"
}
Properties
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| error | string | true | none | Error message | 
ListCommunesNotFoundResponse
{}
Properties
None
ListCommunesResponse
{
  "stats": {
    "start": 0,
    "end": 0,
    "duration": 0
  },
  "records": [
    {
      "id": "string",
      "titles": "string",
      "parent": "string"
    }
  ]
}
Properties
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| stats | StatsResponse | true | none | none | 
| records | [Commune] | true | none | none | 
ListEnvironmentsErrorResponse
{
  "error": "string"
}
Properties
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| error | string | true | none | Error message | 
ListEnvironmentsNotFoundResponse
{}
Properties
None
ListEnvironmentsResponse
{
  "stats": {
    "start": 0,
    "end": 0,
    "duration": 0
  },
  "records": [
    {
      "id": "string",
      "titles": "string"
    }
  ]
}
Properties
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| stats | StatsResponse | true | none | none | 
| records | [Audience] | true | none | none | 
ListExperienceErrorResponse
{
  "error": "string"
}
Properties
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| error | string | true | none | Error message | 
ListExperienceNotFoundResponse
{}
Properties
None
ListExperienceResponse
{
  "stats": {
    "start": 0,
    "end": 0,
    "duration": 0
  },
  "records": [
    {
      "id": "string",
      "title": "string",
      "subtitle": "string",
      "pictures": [
        {
          "url": "string",
          "copy": "string",
          "alt": "string",
          "originalUrl": "string",
          "fileName": "string",
          "previews": {
            "card": {
              "size": "string",
              "fileName": "string",
              "url": "string",
              "error": {
                "code": "string",
                "message": "string"
              }
            },
            "dashboard": {
              "size": "string",
              "fileName": "string",
              "url": "string",
              "error": {
                "code": "string",
                "message": "string"
              }
            },
            "detail": {
              "size": "string",
              "fileName": "string",
              "url": "string",
              "error": {
                "code": "string",
                "message": "string"
              }
            },
            "featured": {
              "size": "string",
              "fileName": "string",
              "url": "string",
              "error": {
                "code": "string",
                "message": "string"
              }
            },
            "share": {
              "size": "string",
              "fileName": "string",
              "url": "string",
              "error": {
                "code": "string",
                "message": "string"
              }
            }
          }
        }
      ],
      "videos": [
        {
          "type": "youtube",
          "url": "string",
          "cover": {
            "url": "string",
            "copy": "string",
            "alt": "string",
            "originalUrl": "string",
            "fileName": "string",
            "previews": {
              "card": {
                "size": "string",
                "fileName": "string",
                "url": "string",
                "error": {
                  "code": "string",
                  "message": "string"
                }
              },
              "dashboard": {
                "size": "string",
                "fileName": "string",
                "url": "string",
                "error": {
                  "code": "string",
                  "message": "string"
                }
              },
              "detail": {
                "size": "string",
                "fileName": "string",
                "url": "string",
                "error": {
                  "code": "string",
                  "message": "string"
                }
              },
              "featured": {
                "size": "string",
                "fileName": "string",
                "url": "string",
                "error": {
                  "code": "string",
                  "message": "string"
                }
              },
              "share": {
                "size": "string",
                "fileName": "string",
                "url": "string",
                "error": {
                  "code": "string",
                  "message": "string"
                }
              }
            }
          },
          "description": "string"
        }
      ],
      "dates": [
        {
          "from": "2019-08-24T14:15:22Z",
          "to": "2019-08-24T14:15:22Z",
          "duration": 0,
          "purchaseLink": "string"
        }
      ],
      "endDate": "2019-08-24T14:15:22Z",
      "venues": [
        {
          "id": "string",
          "title": "string",
          "pictures": [
            {
              "url": "string",
              "copy": "string",
              "alt": "string",
              "originalUrl": "string",
              "fileName": "string",
              "previews": {
                "card": {
                  "size": "string",
                  "fileName": "string",
                  "url": "string",
                  "error": {
                    "code": "string",
                    "message": "string"
                  }
                },
                "dashboard": {
                  "size": "string",
                  "fileName": "string",
                  "url": "string",
                  "error": {
                    "code": "string",
                    "message": "string"
                  }
                },
                "detail": {
                  "size": "string",
                  "fileName": "string",
                  "url": "string",
                  "error": {
                    "code": "string",
                    "message": "string"
                  }
                },
                "featured": {
                  "size": "string",
                  "fileName": "string",
                  "url": "string",
                  "error": {
                    "code": "string",
                    "message": "string"
                  }
                },
                "share": {
                  "size": "string",
                  "fileName": "string",
                  "url": "string",
                  "error": {
                    "code": "string",
                    "message": "string"
                  }
                }
              }
            }
          ],
          "location": {
            "address": {
              "street": "string",
              "number": "string",
              "postcode": "string",
              "town": "string",
              "commune": "string",
              "country": "string",
              "longitude": "string",
              "latitude": "string",
              "gid": "string",
              "mapUrl": "string"
            }
          },
          "description": "string",
          "categories": [
            "string"
          ],
          "website": "string",
          "contact": {
            "name": "string",
            "email": "string",
            "phone": "string",
            "website": "string",
            "company": "string"
          },
          "timestamps": {
            "createdAt": "2019-08-24T14:15:22Z",
            "createdBy": "string",
            "updatedAt": "2019-08-24T14:15:22Z",
            "updatedBy": "string",
            "deletedAt": "2019-08-24T14:15:22Z",
            "deletedBy": "string"
          }
        }
      ],
      "location": {
        "address": {
          "street": "string",
          "number": "string",
          "postcode": "string",
          "town": "string",
          "commune": "string",
          "country": "string",
          "longitude": "string",
          "latitude": "string",
          "gid": "string",
          "mapUrl": "string"
        }
      },
      "description": "string",
      "categories": [
        "string"
      ],
      "tags": [
        "string"
      ],
      "audiences": [
        "string"
      ],
      "languages": [
        "string"
      ],
      "environments": [
        "string"
      ],
      "formats": [
        "string"
      ],
      "contact": {
        "name": "string",
        "email": "string",
        "phone": "string",
        "website": "string",
        "company": "string"
      },
      "tickets": [
        {
          "title": "string",
          "price": 0,
          "currency": "EUR",
          "quantity": 0,
          "salesStart": "2019-08-24",
          "salesEnd": "2019-08-24"
        }
      ],
      "purchaseLink": "string",
      "luxembourgTickets": {
        "publishOnEventim": true,
        "includeSalesFee": true,
        "delivery": [
          "self-print"
        ],
        "saleLimit": 0,
        "excludedTickets": 0,
        "kulturpassTickets": 0,
        "requiresSeatingPlan": true,
        "seatingReservation": true
      },
      "salesContact": {
        "name": "string",
        "email": "string",
        "phone": "string",
        "website": "string",
        "company": "string"
      },
      "status": {
        "current": "string",
        "startDate": "2019-08-24T14:15:22Z"
      },
      "organisationId": "string",
      "timestamps": {
        "createdAt": "2019-08-24T14:15:22Z",
        "createdBy": "string",
        "updatedAt": "2019-08-24T14:15:22Z",
        "updatedBy": "string",
        "deletedAt": "2019-08-24T14:15:22Z",
        "deletedBy": "string"
      }
    }
  ]
}
Properties
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| stats | StatsResponse | true | none | none | 
| records | [Experience] | true | none | [Description for Experience Model] | 
ListFormatsErrorResponse
{
  "error": "string"
}
Properties
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| error | string | true | none | Error message | 
ListFormatsNotFoundResponse
{}
Properties
None
ListFormatsResponse
{
  "stats": {
    "start": 0,
    "end": 0,
    "duration": 0
  },
  "records": [
    {
      "id": "string",
      "titles": "string"
    }
  ]
}
Properties
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| stats | StatsResponse | true | none | none | 
| records | [Format] | true | none | none | 
ListVenuesErrorResponse
{
  "error": "string"
}
Properties
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| error | string | true | none | Error message | 
ListVenuesNotFoundResponse
{}
Properties
None
ListVenuesResponse
{
  "stats": {
    "start": 0,
    "end": 0,
    "duration": 0
  },
  "records": [
    {
      "id": "string",
      "title": "string",
      "pictures": [
        {
          "url": "string",
          "copy": "string",
          "alt": "string",
          "originalUrl": "string",
          "fileName": "string",
          "previews": {
            "card": {
              "size": "string",
              "fileName": "string",
              "url": "string",
              "error": {
                "code": "string",
                "message": "string"
              }
            },
            "dashboard": {
              "size": "string",
              "fileName": "string",
              "url": "string",
              "error": {
                "code": "string",
                "message": "string"
              }
            },
            "detail": {
              "size": "string",
              "fileName": "string",
              "url": "string",
              "error": {
                "code": "string",
                "message": "string"
              }
            },
            "featured": {
              "size": "string",
              "fileName": "string",
              "url": "string",
              "error": {
                "code": "string",
                "message": "string"
              }
            },
            "share": {
              "size": "string",
              "fileName": "string",
              "url": "string",
              "error": {
                "code": "string",
                "message": "string"
              }
            }
          }
        }
      ],
      "location": {
        "address": {
          "street": "string",
          "number": "string",
          "postcode": "string",
          "town": "string",
          "commune": "string",
          "country": "string",
          "longitude": "string",
          "latitude": "string",
          "gid": "string",
          "mapUrl": "string"
        }
      },
      "description": "string",
      "categories": [
        "string"
      ],
      "website": "string",
      "contact": {
        "name": "string",
        "email": "string",
        "phone": "string",
        "website": "string",
        "company": "string"
      },
      "timestamps": {
        "createdAt": "2019-08-24T14:15:22Z",
        "createdBy": "string",
        "updatedAt": "2019-08-24T14:15:22Z",
        "updatedBy": "string",
        "deletedAt": "2019-08-24T14:15:22Z",
        "deletedBy": "string"
      }
    }
  ]
}
Properties
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| stats | StatsResponse | true | none | none | 
| records | [Venue] | true | none | [Venue Model] | 
Location
{
  "address": {
    "street": "string",
    "number": "string",
    "postcode": "string",
    "town": "string",
    "commune": "string",
    "country": "string",
    "longitude": "string",
    "latitude": "string",
    "gid": "string",
    "mapUrl": "string"
  }
}
Properties
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| address | Address | true | none | none | 
LuxTicketSettings
{
  "publishOnEventim": true,
  "includeSalesFee": true,
  "delivery": [
    "self-print"
  ],
  "saleLimit": 0,
  "excludedTickets": 0,
  "kulturpassTickets": 0,
  "requiresSeatingPlan": true,
  "seatingReservation": true
}
*Luxembourg Ticket Settings
in case if the tickets for the experience should be available via luxembourg-ticket.lu there are additional settings to fine tune the user experience*
Properties
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| publishOnEventim | boolean | true | none | Eventim listing: if true, this tickets will be available on eventim.de | 
| includeSalesFee | boolean | true | none | Include the sales fee in the price or add it to the original price | 
| delivery | [string] | true | none | Delivery type options: self-print and post | 
| saleLimit | integer(int32) | false | none | Sale limit: sell no more than n-tickets via luxembourg-ticket.lu (common number across the all ticket types) | 
| excludedTickets | integer(int32) | false | none | Number of tickets excluded from sale | 
| kulturpassTickets | integer(int32) | false | none | Number of tickets on sale with Kulturpass discount | 
| requiresSeatingPlan | boolean | true | none | Experience requires a seating plan (added manually later) | 
| seatingReservation | boolean | true | none | Seating reservation | 
OpeningHours
{
  "monday": {
    "from": "string",
    "to": "string",
    "breakTime": true,
    "secondFrom": "string",
    "secondTo": "string"
  },
  "tuesday": {
    "from": "string",
    "to": "string",
    "breakTime": true,
    "secondFrom": "string",
    "secondTo": "string"
  },
  "wednesday": {
    "from": "string",
    "to": "string",
    "breakTime": true,
    "secondFrom": "string",
    "secondTo": "string"
  },
  "thursday": {
    "from": "string",
    "to": "string",
    "breakTime": true,
    "secondFrom": "string",
    "secondTo": "string"
  },
  "friday": {
    "from": "string",
    "to": "string",
    "breakTime": true,
    "secondFrom": "string",
    "secondTo": "string"
  },
  "saturday": {
    "from": "string",
    "to": "string",
    "breakTime": true,
    "secondFrom": "string",
    "secondTo": "string"
  },
  "sunday": {
    "from": "string",
    "to": "string",
    "breakTime": true,
    "secondFrom": "string",
    "secondTo": "string"
  }
}
Properties
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| monday | OpeningHoursSetting | false | none | If ommited, the day is considered closed If only from and to are provided, the day is considered open from from - 12:00 and 12:00 - to If breakTime is true, the day is considered open from from - to and secondFrom - secondTo | 
| tuesday | OpeningHoursSetting | false | none | If ommited, the day is considered closed If only from and to are provided, the day is considered open from from - 12:00 and 12:00 - to If breakTime is true, the day is considered open from from - to and secondFrom - secondTo | 
| wednesday | OpeningHoursSetting | false | none | If ommited, the day is considered closed If only from and to are provided, the day is considered open from from - 12:00 and 12:00 - to If breakTime is true, the day is considered open from from - to and secondFrom - secondTo | 
| thursday | OpeningHoursSetting | false | none | If ommited, the day is considered closed If only from and to are provided, the day is considered open from from - 12:00 and 12:00 - to If breakTime is true, the day is considered open from from - to and secondFrom - secondTo | 
| friday | OpeningHoursSetting | false | none | If ommited, the day is considered closed If only from and to are provided, the day is considered open from from - 12:00 and 12:00 - to If breakTime is true, the day is considered open from from - to and secondFrom - secondTo | 
| saturday | OpeningHoursSetting | false | none | If ommited, the day is considered closed If only from and to are provided, the day is considered open from from - 12:00 and 12:00 - to If breakTime is true, the day is considered open from from - to and secondFrom - secondTo | 
| sunday | OpeningHoursSetting | false | none | If ommited, the day is considered closed If only from and to are provided, the day is considered open from from - 12:00 and 12:00 - to If breakTime is true, the day is considered open from from - to and secondFrom - secondTo | 
OpeningHoursSetting
{
  "from": "string",
  "to": "string",
  "breakTime": true,
  "secondFrom": "string",
  "secondTo": "string"
}
*If ommited, the day is considered closed
If only from and to are provided, the day is considered open from from - 12:00 and 12:00 - to
If breakTime is true, the day is considered open from from - to and secondFrom - secondTo*
Properties
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| from | string | true | none | Time in format HH:mm | 
| to | string | true | none | Time in format HH:mm | 
| breakTime | boolean | false | none | Flag to indicate if there is a 2nd time slot | 
| secondFrom | string | false | none | Time in format HH:mm Only take into account if breakTime is true | 
| secondTo | string | false | none | Time in format HH:mm Only take into account if breakTime is true | 
PaginationRequest
{
  "page": 0,
  "perPage": 0
}
*Example:
?pagination[page]=0&pagination[perPage]=10
The request returns nothing if the requested page exceeds records/perPage*
Properties
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| page | number(float) | true | none | none | 
| perPage | number(float) | true | none | none | 
PatchVenueRequest
{
  "title": "string",
  "pictures": [
    {
      "url": "string",
      "copy": "string",
      "alt": "string"
    }
  ],
  "location": {
    "address": {
      "street": "string",
      "number": "string",
      "postcode": "string",
      "town": "string",
      "commune": "string",
      "country": "string",
      "longitude": "string",
      "latitude": "string",
      "gid": "string",
      "mapUrl": "string"
    }
  },
  "description": "string",
  "categories": [
    "string"
  ],
  "website": "string",
  "contact": {
    "name": "string",
    "email": "string",
    "phone": "string",
    "website": "string",
    "company": "string"
  }
}
Properties
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| title | string | false | none | Title | 
| pictures | [PictureUpdateRequest] | false | none | List of pictures to be updated. Important: all pictures will be replaced. File names should be unique! | 
| location | Location | false | none | none | 
| description | Content | false | none | none | 
| categories | [string] | false | none | Category IDs | 
| website | string | false | none | Website URL | 
| contact | Contact | false | none | none | 
Picture
{
  "url": "string",
  "copy": "string",
  "alt": "string",
  "originalUrl": "string",
  "fileName": "string",
  "previews": {
    "card": {
      "size": "string",
      "fileName": "string",
      "url": "string",
      "error": {
        "code": "string",
        "message": "string"
      }
    },
    "dashboard": {
      "size": "string",
      "fileName": "string",
      "url": "string",
      "error": {
        "code": "string",
        "message": "string"
      }
    },
    "detail": {
      "size": "string",
      "fileName": "string",
      "url": "string",
      "error": {
        "code": "string",
        "message": "string"
      }
    },
    "featured": {
      "size": "string",
      "fileName": "string",
      "url": "string",
      "error": {
        "code": "string",
        "message": "string"
      }
    },
    "share": {
      "size": "string",
      "fileName": "string",
      "url": "string",
      "error": {
        "code": "string",
        "message": "string"
      }
    }
  }
}
Description for Picture Model
Properties
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| url | string | true | none | none | 
| copy | string | false | none | none | 
| alt | string | false | none | none | 
| originalUrl | string | true | none | none | 
| fileName | string | true | none | none | 
| previews | object | false | none | none | 
| » card | PicturePreview | false | none | Picture preview That is an image that is created automatically when a new image for an experience or a venue is uploaded. Previews are lower quality than the original, they differ in size and ratio, and are used on the website instead of the original one. Some of the basic preview sizes: card: 355x200 dashboard: 156x88 detail: 1600x900 featured: 896x504 share: 1200x630 | 
| » dashboard | PicturePreview | false | none | Picture preview That is an image that is created automatically when a new image for an experience or a venue is uploaded. Previews are lower quality than the original, they differ in size and ratio, and are used on the website instead of the original one. Some of the basic preview sizes: card: 355x200 dashboard: 156x88 detail: 1600x900 featured: 896x504 share: 1200x630 | 
| » detail | PicturePreview | false | none | Picture preview That is an image that is created automatically when a new image for an experience or a venue is uploaded. Previews are lower quality than the original, they differ in size and ratio, and are used on the website instead of the original one. Some of the basic preview sizes: card: 355x200 dashboard: 156x88 detail: 1600x900 featured: 896x504 share: 1200x630 | 
| » featured | PicturePreview | false | none | Picture preview That is an image that is created automatically when a new image for an experience or a venue is uploaded. Previews are lower quality than the original, they differ in size and ratio, and are used on the website instead of the original one. Some of the basic preview sizes: card: 355x200 dashboard: 156x88 detail: 1600x900 featured: 896x504 share: 1200x630 | 
| » share | PicturePreview | false | none | Picture preview That is an image that is created automatically when a new image for an experience or a venue is uploaded. Previews are lower quality than the original, they differ in size and ratio, and are used on the website instead of the original one. Some of the basic preview sizes: card: 355x200 dashboard: 156x88 detail: 1600x900 featured: 896x504 share: 1200x630 | 
PictureCreateRequest
{
  "url": "string",
  "copy": "string",
  "alt": "string"
}
Properties
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| url | string | true | none | URL pointing to an endpoint serving the image (jpeg, png) to import. Or a base64 string representing the image data in jpeg/png. File size limit: 2mb. | 
| copy | string | false | none | Copyright information of the image | 
| alt | string | false | none | Text for screen readers | 
PicturePreview
{
  "size": "string",
  "fileName": "string",
  "url": "string",
  "error": {
    "code": "string",
    "message": "string"
  }
}
*Picture preview
That is an image that is created automatically when a new image for an experience or a venue is uploaded. Previews are lower quality than the original, they differ in size and ratio, and are used on the website instead of the original one.
Some of the basic preview sizes: card: 355x200 dashboard: 156x88 detail: 1600x900 featured: 896x504 share: 1200x630*
Properties
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| size | string | true | none | none | 
| fileName | string | true | none | none | 
| url | string | true | none | none | 
| error | object | false | none | none | 
| » code | string | true | none | none | 
| » message | string | true | none | none | 
PictureUpdateRequest
{
  "url": "string",
  "copy": "string",
  "alt": "string"
}
Properties
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| url | string | true | none | URL pointing to the image to import, or a base64 string representing the image data | 
| copy | string | false | none | Copyright information of the image | 
| alt | string | false | none | Text for screen readers | 
PutVenueRequest
{
  "title": "string",
  "pictures": [
    {
      "url": "string",
      "copy": "string",
      "alt": "string"
    }
  ],
  "location": {
    "address": {
      "street": "string",
      "number": "string",
      "postcode": "string",
      "town": "string",
      "commune": "string",
      "country": "string",
      "longitude": "string",
      "latitude": "string",
      "gid": "string",
      "mapUrl": "string"
    }
  },
  "description": "string",
  "categories": [
    "string"
  ],
  "website": "string",
  "contact": {
    "name": "string",
    "email": "string",
    "phone": "string",
    "website": "string",
    "company": "string"
  }
}
Properties
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| title | string | true | none | Title | 
| pictures | [PictureUpdateRequest] | true | none | Pictures | 
| location | Location | true | none | none | 
| description | Content | true | none | none | 
| categories | [string] | true | none | Category IDs | 
| website | string | true | none | Website URL | 
| contact | Contact | true | none | none | 
StatsResponse
{
  "start": 0,
  "end": 0,
  "duration": 0
}
Properties
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| start | integer(int32) | true | none | none | 
| end | integer(int32) | true | none | none | 
| duration | integer(int32) | true | none | none | 
Ticket
{
  "title": "string",
  "price": 0,
  "currency": "EUR",
  "quantity": 0,
  "salesStart": "2019-08-24",
  "salesEnd": "2019-08-24"
}
Properties
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| title | Content | true | none | none | 
| price | number(float) | true | none | Price: the price of the ticket. Should be 0 if the entrance is free | 
| currency | string | false | none | none | 
| quantity | integer(int32) | false | none | Number: quantity of tickets available | 
| salesStart | any | false | none | Date (and time, optionally) when the ticket should be available for sell, if omitted ticket is available when the experience is published | 
oneOf
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| » anonymous | string(date) | false | none | none | 
xor
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| » anonymous | string(date-time) | false | none | none | 
continued
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| salesEnd | any | false | none | Date (and time, optionally) when the ticket is not available, if omitted, the experience start date and time is used (you cannot buy a ticket after the start of the event) | 
oneOf
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| » anonymous | string(date) | false | none | none | 
xor
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| » anonymous | string(date-time) | false | none | none | 
Enumerated Values
| Property | Value | 
|---|---|
| currency | EUR | 
Timestamps
{
  "createdAt": "2019-08-24T14:15:22Z",
  "createdBy": "string",
  "updatedAt": "2019-08-24T14:15:22Z",
  "updatedBy": "string",
  "deletedAt": "2019-08-24T14:15:22Z",
  "deletedBy": "string"
}
Properties
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| createdAt | string(date-time) | false | none | none | 
| createdBy | string | false | none | none | 
| updatedAt | string(date-time) | false | none | none | 
| updatedBy | string | false | none | none | 
| deletedAt | string(date-time) | false | none | none | 
| deletedBy | string | false | none | none | 
UpdateExperienceErrorResponse
{
  "error": "string"
}
Properties
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| error | string | true | none | Error message | 
UpdateExperienceNotFoundResponse
{}
Properties
None
UpdateExperienceRequest
{
  "title": "string",
  "subtitle": "string",
  "pictures": [
    {
      "url": "string",
      "copy": "string",
      "alt": "string"
    }
  ],
  "videos": [
    {
      "type": "youtube",
      "url": "string",
      "cover": "string",
      "description": "string"
    }
  ],
  "dates": [
    {
      "from": "2019-08-24T14:15:22Z",
      "to": "2019-08-24T14:15:22Z",
      "duration": 0,
      "purchaseLink": "string"
    }
  ],
  "venues": [
    "string"
  ],
  "location": {
    "address": {
      "street": "string",
      "number": "string",
      "postcode": "string",
      "town": "string",
      "commune": "string",
      "country": "string",
      "longitude": "string",
      "latitude": "string",
      "gid": "string",
      "mapUrl": "string"
    }
  },
  "description": "string",
  "categories": [
    "string"
  ],
  "audiences": [
    "string"
  ],
  "languages": [
    "string"
  ],
  "environments": [
    "string"
  ],
  "formats": [
    "string"
  ],
  "tags": [
    "string"
  ],
  "contact": {
    "name": "string",
    "email": "string",
    "phone": "string",
    "website": "string",
    "company": "string"
  },
  "tickets": [
    {
      "title": "string",
      "price": 0,
      "currency": "EUR",
      "quantity": 0,
      "salesStart": "2019-08-24",
      "salesEnd": "2019-08-24"
    }
  ],
  "purchaseLink": "string",
  "luxembourgTickets": {
    "publishOnEventim": true,
    "includeSalesFee": true,
    "delivery": [
      "self-print"
    ],
    "saleLimit": 0,
    "excludedTickets": 0,
    "kulturpassTickets": 0,
    "requiresSeatingPlan": true,
    "seatingReservation": true
  },
  "salesContact": {
    "name": "string",
    "email": "string",
    "phone": "string",
    "website": "string",
    "company": "string"
  },
  "status": "draft"
}
*Update Experience Request
The date-time for dates should set as defined by https://tools.ietf.org/html/rfc3339#section-5.6*
Properties
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| title | Content | false | none | none | 
| subtitle | Content | false | none | none | 
| pictures | [PictureUpdateRequest] | false | none | List of pictures to be updated. Important: all pictures will be replaced. File names should be unique, and file size should be less than 2MB! | 
| videos | [VideoUpdateRequest] | false | none | List of videos to add to the experience | 
| dates | [oneOf] | false | none | none | 
oneOf
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| » anonymous | ExperienceDateSingle | false | none | none | 
xor
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| » anonymous | ExperienceDateRecurring | false | none | none | 
xor
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| » anonymous | ExperienceDatePermanent | false | none | none | 
continued
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| venues | [string] | false | none | none | 
| location | Location | false | none | none | 
| description | Content | false | none | none | 
| categories | [string] | false | none | none | 
| audiences | [string] | false | none | none | 
| languages | [string] | false | none | List of languages the experience is in: lb, fr, de, en, etc. | 
| environments | [string] | false | none | Experience environments: indoor, outdoor, online, etc. | 
| formats | [string] | false | none | Formats: workshop, concert, lecture, etc. | 
| tags | [string] | false | none | none | 
| contact | Contact | false | none | none | 
| tickets | [Ticket] | false | none | Tickets | 
| purchaseLink | string | false | none | Purchase link | 
| luxembourgTickets | LuxTicketSettings | false | none | Luxembourg Ticket Settings in case if the tickets for the experience should be available via luxembourg-ticket.lu there are additional settings to fine tune the user experience | 
| salesContact | Contact | false | none | none | 
| status | string | false | none | Status: - draft: mark that the experience was updated via API. - pending: send the experience to validation, works only if the previeus status was draft.  ![]()  | 
Enumerated Values
| Property | Value | 
|---|---|
| status | draft | 
| status | pending | 
UpdateExperienceResponse
{
  "stats": {
    "start": 0,
    "end": 0,
    "duration": 0
  },
  "record": {
    "id": "string",
    "title": "string",
    "subtitle": "string",
    "pictures": [
      {
        "url": "string",
        "copy": "string",
        "alt": "string",
        "originalUrl": "string",
        "fileName": "string",
        "previews": {
          "card": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          },
          "dashboard": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          },
          "detail": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          },
          "featured": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          },
          "share": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          }
        }
      }
    ],
    "videos": [
      {
        "type": "youtube",
        "url": "string",
        "cover": {
          "url": "string",
          "copy": "string",
          "alt": "string",
          "originalUrl": "string",
          "fileName": "string",
          "previews": {
            "card": {
              "size": "string",
              "fileName": "string",
              "url": "string",
              "error": {
                "code": "string",
                "message": "string"
              }
            },
            "dashboard": {
              "size": "string",
              "fileName": "string",
              "url": "string",
              "error": {
                "code": "string",
                "message": "string"
              }
            },
            "detail": {
              "size": "string",
              "fileName": "string",
              "url": "string",
              "error": {
                "code": "string",
                "message": "string"
              }
            },
            "featured": {
              "size": "string",
              "fileName": "string",
              "url": "string",
              "error": {
                "code": "string",
                "message": "string"
              }
            },
            "share": {
              "size": "string",
              "fileName": "string",
              "url": "string",
              "error": {
                "code": "string",
                "message": "string"
              }
            }
          }
        },
        "description": "string"
      }
    ],
    "dates": [
      {
        "from": "2019-08-24T14:15:22Z",
        "to": "2019-08-24T14:15:22Z",
        "duration": 0,
        "purchaseLink": "string"
      }
    ],
    "endDate": "2019-08-24T14:15:22Z",
    "venues": [
      {
        "id": "string",
        "title": "string",
        "pictures": [
          {
            "url": "string",
            "copy": "string",
            "alt": "string",
            "originalUrl": "string",
            "fileName": "string",
            "previews": {
              "card": {
                "size": "string",
                "fileName": "string",
                "url": "string",
                "error": {
                  "code": "string",
                  "message": "string"
                }
              },
              "dashboard": {
                "size": "string",
                "fileName": "string",
                "url": "string",
                "error": {
                  "code": "string",
                  "message": "string"
                }
              },
              "detail": {
                "size": "string",
                "fileName": "string",
                "url": "string",
                "error": {
                  "code": "string",
                  "message": "string"
                }
              },
              "featured": {
                "size": "string",
                "fileName": "string",
                "url": "string",
                "error": {
                  "code": "string",
                  "message": "string"
                }
              },
              "share": {
                "size": "string",
                "fileName": "string",
                "url": "string",
                "error": {
                  "code": "string",
                  "message": "string"
                }
              }
            }
          }
        ],
        "location": {
          "address": {
            "street": "string",
            "number": "string",
            "postcode": "string",
            "town": "string",
            "commune": "string",
            "country": "string",
            "longitude": "string",
            "latitude": "string",
            "gid": "string",
            "mapUrl": "string"
          }
        },
        "description": "string",
        "categories": [
          "string"
        ],
        "website": "string",
        "contact": {
          "name": "string",
          "email": "string",
          "phone": "string",
          "website": "string",
          "company": "string"
        },
        "timestamps": {
          "createdAt": "2019-08-24T14:15:22Z",
          "createdBy": "string",
          "updatedAt": "2019-08-24T14:15:22Z",
          "updatedBy": "string",
          "deletedAt": "2019-08-24T14:15:22Z",
          "deletedBy": "string"
        }
      }
    ],
    "location": {
      "address": {
        "street": "string",
        "number": "string",
        "postcode": "string",
        "town": "string",
        "commune": "string",
        "country": "string",
        "longitude": "string",
        "latitude": "string",
        "gid": "string",
        "mapUrl": "string"
      }
    },
    "description": "string",
    "categories": [
      "string"
    ],
    "tags": [
      "string"
    ],
    "audiences": [
      "string"
    ],
    "languages": [
      "string"
    ],
    "environments": [
      "string"
    ],
    "formats": [
      "string"
    ],
    "contact": {
      "name": "string",
      "email": "string",
      "phone": "string",
      "website": "string",
      "company": "string"
    },
    "tickets": [
      {
        "title": "string",
        "price": 0,
        "currency": "EUR",
        "quantity": 0,
        "salesStart": "2019-08-24",
        "salesEnd": "2019-08-24"
      }
    ],
    "purchaseLink": "string",
    "luxembourgTickets": {
      "publishOnEventim": true,
      "includeSalesFee": true,
      "delivery": [
        "self-print"
      ],
      "saleLimit": 0,
      "excludedTickets": 0,
      "kulturpassTickets": 0,
      "requiresSeatingPlan": true,
      "seatingReservation": true
    },
    "salesContact": {
      "name": "string",
      "email": "string",
      "phone": "string",
      "website": "string",
      "company": "string"
    },
    "status": {
      "current": "string",
      "startDate": "2019-08-24T14:15:22Z"
    },
    "organisationId": "string",
    "timestamps": {
      "createdAt": "2019-08-24T14:15:22Z",
      "createdBy": "string",
      "updatedAt": "2019-08-24T14:15:22Z",
      "updatedBy": "string",
      "deletedAt": "2019-08-24T14:15:22Z",
      "deletedBy": "string"
    }
  }
}
Properties
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| stats | StatsResponse | true | none | none | 
| record | Experience | true | none | Description for Experience Model | 
UpdateVenueErrorResponse
{
  "error": "string"
}
Properties
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| error | string | true | none | Error message | 
UpdateVenueNotFoundResponse
{}
Properties
None
UpdateVenueResponse
{
  "stats": {
    "start": 0,
    "end": 0,
    "duration": 0
  },
  "record": {
    "id": "string",
    "title": "string",
    "pictures": [
      {
        "url": "string",
        "copy": "string",
        "alt": "string",
        "originalUrl": "string",
        "fileName": "string",
        "previews": {
          "card": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          },
          "dashboard": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          },
          "detail": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          },
          "featured": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          },
          "share": {
            "size": "string",
            "fileName": "string",
            "url": "string",
            "error": {
              "code": "string",
              "message": "string"
            }
          }
        }
      }
    ],
    "location": {
      "address": {
        "street": "string",
        "number": "string",
        "postcode": "string",
        "town": "string",
        "commune": "string",
        "country": "string",
        "longitude": "string",
        "latitude": "string",
        "gid": "string",
        "mapUrl": "string"
      }
    },
    "description": "string",
    "categories": [
      "string"
    ],
    "website": "string",
    "contact": {
      "name": "string",
      "email": "string",
      "phone": "string",
      "website": "string",
      "company": "string"
    },
    "timestamps": {
      "createdAt": "2019-08-24T14:15:22Z",
      "createdBy": "string",
      "updatedAt": "2019-08-24T14:15:22Z",
      "updatedBy": "string",
      "deletedAt": "2019-08-24T14:15:22Z",
      "deletedBy": "string"
    }
  }
}
Properties
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| stats | StatsResponse | true | none | none | 
| record | Venue | true | none | Venue Model | 
Venue
{
  "id": "string",
  "title": "string",
  "pictures": [
    {
      "url": "string",
      "copy": "string",
      "alt": "string",
      "originalUrl": "string",
      "fileName": "string",
      "previews": {
        "card": {
          "size": "string",
          "fileName": "string",
          "url": "string",
          "error": {
            "code": "string",
            "message": "string"
          }
        },
        "dashboard": {
          "size": "string",
          "fileName": "string",
          "url": "string",
          "error": {
            "code": "string",
            "message": "string"
          }
        },
        "detail": {
          "size": "string",
          "fileName": "string",
          "url": "string",
          "error": {
            "code": "string",
            "message": "string"
          }
        },
        "featured": {
          "size": "string",
          "fileName": "string",
          "url": "string",
          "error": {
            "code": "string",
            "message": "string"
          }
        },
        "share": {
          "size": "string",
          "fileName": "string",
          "url": "string",
          "error": {
            "code": "string",
            "message": "string"
          }
        }
      }
    }
  ],
  "location": {
    "address": {
      "street": "string",
      "number": "string",
      "postcode": "string",
      "town": "string",
      "commune": "string",
      "country": "string",
      "longitude": "string",
      "latitude": "string",
      "gid": "string",
      "mapUrl": "string"
    }
  },
  "description": "string",
  "categories": [
    "string"
  ],
  "website": "string",
  "contact": {
    "name": "string",
    "email": "string",
    "phone": "string",
    "website": "string",
    "company": "string"
  },
  "timestamps": {
    "createdAt": "2019-08-24T14:15:22Z",
    "createdBy": "string",
    "updatedAt": "2019-08-24T14:15:22Z",
    "updatedBy": "string",
    "deletedAt": "2019-08-24T14:15:22Z",
    "deletedBy": "string"
  }
}
Venue Model
Properties
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| id | string | true | none | Venue ID | 
| title | string | true | none | Title | 
| pictures | [Picture] | true | none | Pictures | 
| location | Location | true | none | none | 
| description | Content | true | none | none | 
| categories | [string] | true | none | Categories | 
| website | any | true | none | Venue website | 
oneOf
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| » anonymous | string | false | none | none | 
xor
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| » anonymous | [string] | false | none | none | 
continued
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| contact | Contact | true | none | none | 
| timestamps | Timestamps | true | none | none | 
Video
{
  "type": "youtube",
  "url": "string",
  "cover": {
    "url": "string",
    "copy": "string",
    "alt": "string",
    "originalUrl": "string",
    "fileName": "string",
    "previews": {
      "card": {
        "size": "string",
        "fileName": "string",
        "url": "string",
        "error": {
          "code": "string",
          "message": "string"
        }
      },
      "dashboard": {
        "size": "string",
        "fileName": "string",
        "url": "string",
        "error": {
          "code": "string",
          "message": "string"
        }
      },
      "detail": {
        "size": "string",
        "fileName": "string",
        "url": "string",
        "error": {
          "code": "string",
          "message": "string"
        }
      },
      "featured": {
        "size": "string",
        "fileName": "string",
        "url": "string",
        "error": {
          "code": "string",
          "message": "string"
        }
      },
      "share": {
        "size": "string",
        "fileName": "string",
        "url": "string",
        "error": {
          "code": "string",
          "message": "string"
        }
      }
    }
  },
  "description": "string"
}
Description for Video Model
Properties
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| type | VideoTypes | true | none | none | 
| url | string | true | none | Address of the embedded video | 
| cover | Picture | false | none | Description for Picture Model | 
| description | Content | false | none | none | 
VideoCreateRequest
{
  "type": "youtube",
  "url": "string",
  "cover": "string",
  "description": "string"
}
Properties
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| type | VideoTypes | true | none | none | 
| url | string | true | none | Address of the embedded video | 
| cover | string | false | none | URL pointing to the image to import, or a base64 string representing the image data | 
| description | Content | false | none | none | 
VideoTypes
"youtube"
Properties
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| anonymous | string | false | none | none | 
Enumerated Values
| Property | Value | 
|---|---|
| anonymous | youtube | 
| anonymous | vimeo | 
| anonymous | other | 
VideoUpdateRequest
{
  "type": "youtube",
  "url": "string",
  "cover": "string",
  "description": "string"
}
Properties
| Name | Type | Required | Restrictions | Description | 
|---|---|---|---|---|
| type | VideoTypes | true | none | none | 
| url | string | true | none | Address of the embedded video | 
| cover | string | false | none | URL pointing to the image to import, or a base64 string representing the image data | 
| description | Content | false | none | none | 

