Custom type builder
Model your content in the blink of an eye
Scheduling & previews
Manage, schedule and preview your content releases
Full revision history
Never lose a change thanks to revision history
Multi-language
Localize your content and succeed globally
Dynamic layouts
Create dynamic layouts with reusable custom components
Integration fields
Feature products in your website & campaign pages by connecting prismic to your existing catalog
Flexible Query API
A flexible API enabling any design on any device
Discover
Quick start guide
Set up a website with Prismic and Node.js
API reference
How to fetch content from Prismic
User guides
How to create and manage content in the Writing Room
Examples
Sample projects built with Prismic
Best practices
Hands-on step-by-step implementation guides
What is a headless CMS
500-word intro without nonsense
Content modeling tips
Guides & best practices for a good CMS UX
prismic.io offers a rich API allowing you to display the content the way you want, on any device
See Documentation var Prismic = require('prismic-javascript'); Prismic.getApi("https://your-repository-name.prismic.io/api/v2", { req: req }).then(function(api) { return api.query( Prismic.Predicates.at('document.type', 'blog-post'), { orderings : '[my.blog-post.date desc]' } ); }).then(function(response) { // response is the response object, response.results holds the documents });
var Prismic = require('prismic-javascript'); Prismic.getApi("https://your-repository-name.prismic.io/api/v2", { req: req }).then(function(api) { return api.query( Prismic.Predicates.at('document.type', 'blog-post'), { orderings : '[my.blog-post.date desc]' } ); }).then(function(response) { // response is the response object, response.results holds the documents });
See Documentation <?php $api = Api::get("https://your-repo-name.prismic.io/api"); $response = $api->query( Predicates::at('document.type', 'blog_post'), [ 'orderings' => '[my.blog_post.date desc]' ] ); // $response contains the response object, $response->getResults() holds the documents
<?php $api = Api::get("https://your-repo-name.prismic.io/api"); $response = $api->query( Predicates::at('document.type', 'blog_post'), [ 'orderings' => '[my.blog_post.date desc]' ] ); // $response contains the response object, $response->getResults() holds the documents
See Documentation var Prismic = require('prismic-javascript'); initApi(req).then(function(api){ api.query( Prismic.Predicates.at('document.type', 'blog_post'), { orderings : '[my.blog_post.date desc]' } ).then(function(response) { // response is the response object, response.results holds the documents }); });
var Prismic = require('prismic-javascript'); initApi(req).then(function(api){ api.query( Prismic.Predicates.at('document.type', 'blog_post'), { orderings : '[my.blog_post.date desc]' } ).then(function(response) { // response is the response object, response.results holds the documents }); });
See Documentation api = Prismic.api('https://your-repo-name.prismic.io/api') response = api.query( Prismic::Predicates.at("document.type", "blog_post"), { "orderings" => "[my.blog_post.date desc]" } ) # response is the response object, response.results holds the documents
api = Prismic.api('https://your-repo-name.prismic.io/api') response = api.query( Prismic::Predicates.at("document.type", "blog_post"), { "orderings" => "[my.blog_post.date desc]" } ) # response is the response object, response.results holds the documents
See Documentation Response response = api.query(Predicates.at("document.type", "blog_post")) .orderings("my.blog_post.date desc") .submit(); List<Document> documents = response.getResults();
Response response = api.query(Predicates.at("document.type", "blog_post")) .orderings("my.blog_post.date desc") .submit(); List<Document> documents = response.getResults();
See Documentation Response response = api.query(Predicates.at("document.type", "blog_post")) .Orderings("my.blog_post.date desc") .Submit(); IList<Document> documents = response.Results;
Response response = api.query(Predicates.at("document.type", "blog_post")) .Orderings("my.blog_post.date desc") .Submit(); IList<Document> documents = response.Results;
When working in the writing room editor, authors can have different preview sessions to see their changes in their website or app without having to publish it.
The query API introduces an efficient caching mechanism that refreshes automatically and simultaneously when changes are pushed.
prismic.io Experiments permits you to ditch guesswork for empirical measurement via A/B test. The SKD helps you manage cookies and the variants' distribution.
Our API takes care of scalability and availability. No hidden costs, we take care of the heavy lifting.