# Prismic

Prismic is a headless CMS that enables developers and content teams to manage and deliver content seamlessly across various platforms.

- **Category:** website builders
- **Auth:** API_KEY
- **Composio Managed App Available?** N/A
- **Tools:** 7
- **Triggers:** 0
- **Slug:** `PRISMIC`
- **Version:** 20260312_00

## Tools

### Get Prismic Documents with Fulltext Search

**Slug:** `PRISMIC_CONTENT_API_GET_DOCUMENTS_WITH_FULLTEXT_SEARCH`

Search Prismic documents using full-text search. Searches across all text fields in documents for the specified terms. The search is case-insensitive and matches based on root words. Automatically retrieves the current master ref. Returns paginated results ordered by relevance.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `q` | string | Yes | Full-text search query in Prismic predicate format. Must be wrapped in double square brackets. Format: [[fulltext(document, "your search terms")]]. Searches across all text fields in documents. Multiple words will match documents containing all terms. |
| `lang` | string | No | Language code (e.g., 'en-us'). |
| `page` | integer | No | Page number, must be >= 1 |
| `fetch` | string | No | Comma-separated list of field API IDs to fetch. |
| `pageSize` | integer | No | Number of documents per page (1-100). |
| `orderings` | string | No | Sorting order, e.g., '[my.article.date desc]' |
| `fetchLinks` | string | No | Comma-separated list of linked document fields to fetch. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Prismic: Query Documents

**Slug:** `PRISMIC_CONTENT_API_QUERY_DOCUMENTS`

Tool to query Prismic documents using predicates and pagination. Use when you need to fetch multiple documents from a repository after obtaining a ref.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `q` | string | No | Query predicate(s) to filter documents using Prismic predicate syntax. Use double brackets for predicates: '[[at(document.type, "page")]]'. For multiple predicates, combine them in one string: '[[at(document.type, "blog")][at(document.tags, ["featured"])]]'. |
| `ref` | string | Yes | Content release reference ID from the repository (typically the master ref). Use PRISMIC_REPOSITORY_API_GET_REFS action to obtain valid ref values. |
| `lang` | string | No | Language code to query (e.g., 'en-us'), default '*' for all languages |
| `page` | integer | No | Page number for pagination, starting from 1 |
| `after` | string | No | Document ID to paginate after for deep pagination. |
| `fetch` | string | No | Comma-separated list of specific fields to fetch for each document (e.g., 'document.title,document.description'). Reduces response size by only including specified fields. |
| `pageSize` | integer | No | Number of documents per page (1-100) |
| `orderings` | string | No | Sort order, e.g., '[my.article.date desc]' |
| `fetchLinks` | string | No | Comma-separated list of fields from linked documents to include in the response (e.g., 'author.name,category.title'). Allows fetching related content in a single query. |
| `graphQuery` | string | No | GraphQuery to specify which fields to return. |
| `access_token` | string | No | Private API content token for authentication, if required. |
| `integrationFieldsRef` | string | No | Reference of integration fields content. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Prismic Repository Info

**Slug:** `PRISMIC_REPOSITORY_API_GET_INFO`

Retrieves comprehensive metadata about a Prismic repository including available refs (content versions), custom types, languages, tags, bookmarks, and API forms. This is typically the first API call made after authentication to discover repository configuration and available content endpoints. The 'refs' field is particularly important as refs are required for querying documents via the Content API.

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Get Prismic Tags

**Slug:** `PRISMIC_TAGS_API_GET_ALL_TAGS`

Tool to retrieve all tags from Prismic repository. Use when you need the full list of tags for filtering or categorization.

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Prismic: Get Custom Types

**Slug:** `PRISMIC_TYPES_API_GET_TYPES`

Retrieves all custom types (content models) defined in the Prismic repository. Custom types define the structure of content in Prismic. This action returns metadata about each custom type including its ID, label, structure definition (JSON schema), and whether it's repeatable. Use this to discover available content types before querying documents, or to understand the content model of a repository. Returns an empty list if no custom types are defined in the repository.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `page` | integer | No | Page number for pagination (1-indexed). Use with limit parameter to navigate through results. |
| `sort` | string | No | Sort order for results. Common values include 'name' to sort alphabetically by custom type name. |
| `limit` | integer | No | Maximum number of custom types to return per page. If not specified, returns all custom types. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |
