Retrieve a Single Link
Retrieve a single link object by its UUID.
https://api.storyblok.com/v2/cdn/links/:idPath parameters
Section titled “Path parameters”:idrequired stringThe link’s ID.
Query parameters
Section titled “Query parameters”cvintegerCached version Unix timestamp. Learn more in the Caching concept.
include_datesstringInclude or exclude the
created_at,updated_atandpublished_atfields. To include these date fields in the response, set to1. To exclude them, set to0or omit the parameter.tokenrequired stringA preview or public access token configured in a space.
Response properties
Section titled “Response properties”linkLinkShow child properties
idintegerStory or folderid.uuidstringStory or folderuuid.slugstringStory or folder full slug.pathstring | nullReal path defined in the story’s entry configuration. Learn more in the Visual Editor concept).real_pathstring | nullEither the full slug of the story or folder with a leading/, or the value of the real path defined in the story’s entry configuration with a leading/.namestringStory or folder name.publishedbooleanReturnstrueif the story is currently published.parent_idintegerParent folder ID.is_folderbooleanReturnstrueif the item is a folder.is_startpagebooleanReturnstrueif the story is the folder’s root.positionintegerNumeric representation of the story’s position in the folder. Users can change this property in the Content tab.published_atstring | nullLatest publication timestamp. Supports ISO 8601.created_atstring | nullCreation timestamp. Supports ISO 8601.updated_atstring | nullLatest update timestamp. Supports ISO 8601.alternatesarray<Alternate>An array that contains objects correlating to the language versions defined using field-level translation.
The
alternatesparameter is different from the story alternates defined in the Dimensions app when using folder-level translation.Show child properties
pathstringTranslated story slug (learn more about the Translatable Slugs app).namestringTranslated story name (learn more about the Translatable Slugs app).langstringThe story’s language code.publishedbooleanReturnstrueif story language version is currently published.translated_slugstringTranslated story slug (learn more about the Translatable Slugs app).
Examples
Section titled “Examples”curl "https://api.storyblok.com/v2/cdn/links/:id\?version=published\&starts_with=articles\&token=YOUR_ACCESS_TOKEN"// storyblok-js-client@>=7, node@>=18import Storyblok from "storyblok-js-client";
const storyblok = new Storyblok({ accessToken: "krcV6QGxWORpYLUWt12xKQtt",});
try { const response = await storyblok.get('cdn/links/:id', { "version": "published", "starts_with": "articles" }) console.log({ response })} catch (error) { console.log(error)}$client = new \Storyblok\Client('YOUR_STORYBLOK_SPACE_ACCESS_TOKEN');
$client->getLinks([ "version" => "published", "starts_with" => "articles"])->getBody();HttpResponse<String> response = Unirest.get("https://api.storyblok.com/v2/cdn/links/:id?version=published&starts_with=articles&token=YOUR_ACCESS_TOKEN") .asString();var client = new RestClient("https://api.storyblok.com/v2/cdn/links/:id?version=published&starts_with=articles&token=YOUR_ACCESS_TOKEN");var request = new RestRequest(Method.GET);
IRestResponse response = client.Execute(request);import requests
url = "https://api.storyblok.com/v2/cdn/links/:id"
querystring = {"version":"published","starts_with":"articles","token":"YOUR_ACCESS_TOKEN"}
payload = ""headers = {}
response = requests.request("GET", url, data=payload, headers=headers, params=querystring)
print(response.text)require 'storyblok'client = Storyblok::Client.new(token: 'YOUR_TOKEN')
client.links({:params => { "version" => "published", "starts_with" => "articles"}})let storyblok = URLSession(storyblok: .cdn(accessToken: "YOUR_ACCESS_TOKEN"))var request = URLRequest(storyblok: storyblok, path: "links/:id")request.url!.append(queryItems: [ URLQueryItem(name: "version", value: "published"), URLQueryItem(name: "starts_with", value: "articles")])let (data, _) = try await storyblok.data(for: request)print(try JSONSerialization.jsonObject(with: data))val client = HttpClient { install(Storyblok(CDN)) { accessToken = "YOUR_ACCESS_TOKEN" }}
val response = client.get("links/:id") { url { parameters.append("version", "published") parameters.append("starts_with", "articles") }}
println(response.body<JsonElement>()){"link": { "id": 371891025, "uuid": "a78b2116-c26d-4d23-9cbe-fec477847b0e", "slug": "home", "path": null, "real_path": "/home", "name": "Home", "published": true, "parent_id": 0, "is_folder": false, "is_startpage": true, "position": 0, "published_at": "2025-01-15T09:32:10.000Z", "created_at": "2025-01-15T09:30:00.000Z", "updated_at": "2025-06-02T14:12:05.000Z", "alternates": []}}Was this page helpful?
This site uses reCAPTCHA and Google's Privacy Policy (opens in a new window).Terms of Service (opens in a new window) apply.
Get in touch with the Storyblok community