Retrieve Component Versions
Returns an array of component versions. This endpoint's response is paginated.
https://mapi.storyblok.com/v1/spaces/:space_id/versions/
This endpoint is paginated by default, including a maximum of 100 component versions in the response. Learn more under Pagination.
Path Parameters
-
:space_id
required numberNumeric ID of a space
Query Parameters
-
page
numberDefault:
1
. Learn more under Pagination. -
per_page
numberDefault:
25
. Max:100
. Learn more under Pagination. -
model
stringModel name: components
-
model_id
stringComponent ID
Response Properties
-
versions
object[]Array of component versions
-
id
numberThe numeric ID
-
event
stringThe type of version change in component
-
created_at
stringCreation date (Format:
yyyy-MM-dd'T'HH:mm:ssZ
) -
author_id
numberID of the author
-
item_id
numberComponent ID
-
author
stringName of the author who made the version.
-
is_draft
booleanBoolean value, Defaults to
true
-
curl "https://mapi.storyblok.com/v1/spaces/606/versions?model=components&model_id=6826721" \
-X GET \
-H "Authorization: YOUR_OAUTH_TOKEN" \
-H "Content-Type: application/json"
// Using the Universal JavaScript Client:
// https://github.com/storyblok/storyblok-js-client
Storyblok.get('/spaces/606/versions', {
"model": "components",
"model_id": "6826721"
})
.then(response => {
console.log(response)
}).catch(error => {
console.log(error)
})
$client = new \Storyblok\ManagementClient('YOUR_OAUTH_TOKEN');
$client->get('/spaces/606/versions', [
"model" => "components",
"model_id" => "6826721"
])->getBody();
require 'storyblok'
client = Storyblok::Client.new(oauth_token: 'YOUR_OAUTH_TOKEN')
client.false('/spaces/606/versions', {:params => {
"model" => "components",
"model_id" => "6826721"
}})
HttpResponse<String> response = Unirest.get("https://mapi.storyblok.com/v1/spaces/606/versions?model=components&model_id=6826721")
.header("Authorization", "YOUR_OAUTH_TOKEN")
.asString();
var client = new RestClient("https://mapi.storyblok.com/v1/spaces/606/versions?model=components&model_id=6826721");
var request = new RestRequest(Method.GET);
request.AddHeader("Authorization", "YOUR_OAUTH_TOKEN");
IRestResponse response = client.Execute(request);
import Foundation
let headers = [
"Content-Type": "application/json",
"Authorization": "YOUR_OAUTH_TOKEN"
]
let request = NSMutableURLRequest(url: NSURL(string: "https://mapi.storyblok.com/v1/spaces/606/versions?model=components&model_id=6826721")! as URL, cachePolicy: .useProtocolCachePolicy, timeoutInterval: 10.0)
request.method = "GET"
request.allHTTPHeaderFields = headers
let session = URLSession.shared
let dataTask = session.dataTask(with: request as URLRequest, completionHandler: { (data, response, error) -> Void in
if (error != nil) {
print(error)
} else {
let httpResponse = response as? HTTPURLResponse
print(httpResponse)
}
})
dataTask.resume()
import requests
url = "https://mapi.storyblok.com/v1/spaces/606/versions"
querystring = {"model":"components","model_id":"6826721"}
payload = ""
headers = {
'Content-Type': "application/json",
'Authorization': "YOUR_OAUTH_TOKEN"
}
response = requests.request("GET", url, data=payload, headers=headers, params=querystring)
print(response.text)
You will receive an array of component versions as a response.
{
"versions": [
{
"id": 279820276,
"event": "update",
"created_at": "2025-03-17T09:24:10.926Z",
"author_id": "133876",
"author": "Dipankar Maikap",
"item_id": 6826721,
"is_draft": true
}
]
}