Extra Block Types (EBT) - New Layout Builder experience❗

Extra Block Types (EBT) - styled, customizable block types: Slideshows, Tabs, Cards, Accordions and many others. Built-in settings for background, DOM Box, javascript plugins. Experience the future of layout building today.

Demo EBT modules Download EBT modules

❗Extra Paragraph Types (EPT) - New Paragraphs experience

Extra Paragraph Types (EPT) - analogical paragraph based set of modules.

Demo EPT modules Download EPT modules

Scroll

JSON:API Server Endpoints Documentation

03/04/2025, by Ivan

JSON:API Server Endpoints Documentation

Filters

Filter Articles by Tag ID

GET

{{host}}/jsonapi/node/article?include=field_image,field_tags&sort=-created&filter[field_tags.meta.drupal_internal__tid]=2

Query Parameters:

Parameter Value
include field_image,field_tags
sort -created
filter[field_tags.meta.drupal_internal__tid] 2

Filter Articles by Tag UUID

GET

{{host}}/jsonapi/node/article?include=field_image,field_tags&sort=-created&filter[field_tags.id]=f203b178-3672-4312-b974-4fb5ea8b35cb

Query Parameters:

Parameter Value
include field_image,field_tags
sort -created
filter[field_tags.id] f203b178-3672-4312-b974-4fb5ea8b35cb

Filter Articles by Title

GET

{{host}}/jsonapi/node/article?filter[title]=Drupal CMS

Query Parameters:

Parameter Value
filter[title] Drupal CMS

Filter Articles by Title (partial match)

GET

{{host}}/jsonapi/node/article?filter[title][value]=Drupal&filter[title][operator]=CONTAINS

Query Parameters:

Parameter Value
filter[title][value] Drupal
filter[title][operator] CONTAINS

Filter Articles by Published status

GET

{{host}}/jsonapi/node/article?filter[status]=1

Query Parameters:

Parameter Value
filter[status] 1

Articles created after Jan 1, 2024

GET

{{host}}/jsonapi/node/article?filter[created][value]=2024-01-01T00:00:00&filter[created][operator]=>=

Query Parameters:

Parameter Value
filter[created][value] 2024-01-01T00:00:00
filter[created][operator] >=

Pagination

GET

{{host}}/jsonapi/node/article?page[limit]=5&page[offset]=0

Query Parameters:

Parameter Value
page[limit] 5
page[offset] 0

Combine Filters (AND Logic)

GET

{{host}}/jsonapi/node/article?filter[status]=1&filter[field_tags.meta.drupal_internal__tid]=5

Query Parameters:

Parameter Value
filter[status] 1
filter[field_tags.meta.drupal_internal__tid] 5

Tags

Get Tags

GET

{{host}}/jsonapi/taxonomy_term/tags?sort=name&fields[taxonomy_term--tags]=name,drupal_internal__tid

Query Parameters:

Parameter Value
sort name
fields[taxonomy_term--tags] name,drupal_internal__tid

Articles

Articles Listing

GET

{{host}}/jsonapi/node/article?include=field_image,field_tags&sort=-created

Query Parameters:

Parameter Value
include field_image,field_tags
sort -created

Articles Image

GET

{{host}}/jsonapi/node/article/b26c80d2-155c-4c7e-9135-5a4011e2ae17/field_image?resourceVersion=id%3A5

Query Parameters:

Parameter Value
resourceVersion id:5

Menu

Menu Main

GET

{{host}}/jsonapi/menu_items/main

Pages

Node page by ID

GET

{{host}}/jsonapi/node/page?filter[nid][value]=4

Query Parameters:

Parameter Value
filter[nid][value] 4

Node page by UUID

GET

{{host}}/jsonapi/node/page/8b53db13-613e-45c4-80d7-dc81eba75f11

Webform

Webform

GET

{{host}}/webform/contact

Headers:

Key Value
content-type application/json

Webform REST

POST

{{host}}/webform_rest/submit

Headers:

Key Value
Content-Type application/json

Request Body:

{
    "webform_id": "contact",
    "name": "Ivan Abramenko",
    "subject": "Webform testing submission",
    "email": "levmyshkin89@gmail.com",
    "message": "Webform testing submission"
}

Authentication

API Key Authentication

All endpoints require API key authentication using the following header:

Header Value
X-API-Key {{token}}