This third-party integration guide might not be up-to-date with Strapi v4. Contributions(opens new window) are most welcome.
This integration guide is following the Quick Start Guide. We assume that you have fully completed its "Hands-on" path, and therefore can consume the API by browsing this url(opens new window).
If you haven't gone through the Quick Start Guide, the way you request a Strapi API with Svelte(opens new window) remains the same except that you will not fetch the same content.
First, install Degit by running npm install -g degit in your command-line interface (CLI).
“Degit makes copies of Git repositories and fetches the latest commit in the repository. This is a more efficient approach than using git clone, because we’re not downloading the entire Git history.”
[{"id":1,"name":"Biscotte Restaurant","description":"Welcome to Biscotte restaurant! Restaurant Biscotte offers a cuisine based on fresh, quality products, often local, organic when possible, and always produced by passionate producers.","created_by":{"id":1,"firstname":"Paul","lastname":"Bocuse","username":null},"updated_by":{"id":1,"firstname":"Paul","lastname":"Bocuse","username":null},"created_at":"2020-07-31T11:37:16.964Z","updated_at":"2020-07-31T11:37:16.975Z","categories":[{"id":1,"name":"French Food","created_by":1,"updated_by":1,"created_at":"2020-07-31T11:36:23.164Z","updated_at":"2020-07-31T11:36:23.172Z"}]}]
Execute a POST request on the restaurant collection type in order to create a restaurant.
Be sure that you activated the create permission for the restaurant collection type and the find permission for the category Collection type.
In this example a japanese category has been created which has the id: 3.
Example POST request with axios
import axios from'axios';
axios
.post('http://localhost:1337/api/restaurants',{
name:'Dolemon Sushi',
description:'Unmissable Japanese Sushi restaurant. The cheese and salmon makis are delicious',
categories:[3],}).then(response=>{
console.log(response);});
1 2 3 4 5 6 7 8 9 10 11
Example POST request with fetch
fetch('http://localhost:1337/api/restaurants',{
method:'POST',
headers:{'Content-Type':'application/json',},
body:JSON.stringify({
name:'Dolemon Sushi',
description:'Unmissable Japanese Sushi restaurant. The cheese and salmon makis are delicious',
categories:[3],}),}).then(response=> response.json()).then(data=> console.log(data));
1 2 3 4 5 6 7 8 9 10 11 12 13
Example response
{"id":2,"name":"Dolemon Sushi","description":"Unmissable Japanese Sushi restaurant. The cheese and salmon makis are delicious","created_by":null,"updated_by":null,"created_at":"2020-08-04T09:57:11.669Z","updated_at":"2020-08-04T09:57:11.669Z","categories":[{"id":3,"name":"Japanese","created_by":1,"updated_by":1,"created_at":"2020-07-31T11:36:23.164Z","updated_at":"2020-07-31T11:36:23.172Z"}]}
{"id":2,"name":"Dolemon Sushi","description":"Unmissable Japanese Sushi restaurant. The cheese and salmon makis are delicious","created_by":null,"updated_by":null,"created_at":"2020-08-04T10:21:30.219Z","updated_at":"2020-08-04T10:21:30.219Z","categories":[{"id":2,"name":"Brunch","created_by":1,"updated_by":1,"created_at":"2020-08-04T10:24:26.901Z","updated_at":"2020-08-04T10:24:26.911Z"}]}