Ingest GraphQL API (Deprecated)

🚧

Ingest GraphQL API is deprecated. Please use Ingest REST API instead

Overview

The GraphQL Ingestion API is a powerful tool for adding commerce and content data to Nacelle. This API works with streaming single objects or large bulk operations and re-indexes.

This doc is meant to overview the requests you can make with the Ingestion API. For full details of each query and mutation, load the API into your desktop GraphQL Client and inspect the schema.

Usage and authentication

The Ingestion API GraphQL endpoint is https://ingest.api.nacelle.com/graphql.
To make use of it, you must provide the following headers in your requests:

  • x-nacelle-space-id
  • x-nacelle-source-id
  • x-nacelle-ingest-token

You can find the values of these headers on the API Details page. To get there, select a space, navigate to Space Settings, then go to the API Details tab.

The x-nacelle-ingest-token can be generated by clicking on the Create New Key button.

Mutations

Start and Finish Index

startIndex
: IndexResponse!
Start index, which initializes the index and allows entry ingestion via the Create/Update/Delete mutations

startIndexByEntryTypes
input: EntryTypesIndexInput!
: IndexResponse!
Starts an index process for a list of Entry Types, which initializes the index and ingestion of multiple entry types via the Create/Update/Delete mutations

startIndexSingleEntry
input: SingleEntryIndexInput!
: IndexResponse!
Start a single-entry index, which initializes the index and ingestion of a single entry via the Create/Update/Delete mutations

finishIndex
input: FinishIndexInput!
: IndexResponse!
Marks index as complete, indicating no more entries for this index

Product and Content CRUD

collectionContentCreate
input: [CollectionContentInput!]!
indexId: ID
: EntryIndexResponse!
Adds collection content entries to the Nacelle index. This entry will be correlated to the index if an indexId is provided

collectionContentDelete
input: [CollectionContentDeleteInput!]!
indexId: ID
: EntryIndexResponse!
Removes collection content entries from the Nacelle index. This entry will be correlated to the index if an indexId is provided

collectionContentUpdate
input: [CollectionContentInput!]!
indexId: ID
: EntryIndexResponse!
Updates collection content entries in the Nacelle index. This entry will be correlated to the index if an indexId is provided

collectionCreate
input: [CollectionInput!]!
indexId: ID
: EntryIndexResponse!
Adds a collection of entries to the Nacelle index. This entry will be correlated to the index if an indexId is provided

collectionDelete
input: [CollectionDeleteInput!]!
indexId: ID
: EntryIndexResponse!
Removes collections from the Nacelle index. This entry will be correlated to the index if an indexId is provided

collectionUpdate
input: [CollectionInput!]!
indexId: ID
: EntryIndexResponse!
Updates collections in the Nacelle index. This entry will be correlated to the index if an indexId is provided

contentCreate
input: [ContentInput!]!
indexId: ID
: EntryIndexResponse!
Adds content entries to the Nacelle index. This entry will be correlated to the index if an indexId is provided

contentDelete
input: [ContentDeleteInput!]!
indexId: ID
: EntryIndexResponse!
Removes content entries from the Nacelle index. This entry will be correlated to the index if an indexId is provided

contentUpdate
input: [ContentInput!]!
indexId: ID
: EntryIndexResponse!
Updates content entries in the Nacelle index. This entry will be correlated to the index if an indexId is provided

productContentCreate
input: [ProductContentInput!]!
indexId: ID
: EntryIndexResponse!
Adds product content entries to the Nacelle index. This entry will be correlated to the index if an indexId is provided

productContentDelete
input: [ProductContentDeleteInput!]!
indexId: ID
: EntryIndexResponse!
Removes product content entries from the Nacelle index. This entry will be correlated to the index if an indexId is provided

productContentUpdate
input: [ProductContentInput!]!
indexId: ID
: EntryIndexResponse!
Updates product content entries in the Nacelle index. This entry will be correlated to the index if an indexId is provided

productCreate
input: [ProductInput!]!
indexId: ID
: EntryIndexResponse!
Adds product entries to the Nacelle index. This entry will be correlated to the index if an indexId is provided

productDelete
input: [ProductDeleteInput!]!
indexId: ID
: EntryIndexResponse!
Removes product entries from the Nacelle index. This entry will be correlated to the index if an indexId is provided

productUpdate
input: [ProductInput!]!
indexId: ID
: EntryIndexResponse!
Updates product entries in the Nacelle index. This entry will be correlated to the index if an indexId is provided

productVariantContentCreate
input: [ProductVariantContentInput!]!
indexId: ID
: EntryIndexResponse!
Adds product variant content entries to the Nacelle index. This entry will be correlated to the index if an indexId is provided

productVariantContentDelete
input: [ProductVariantContentDeleteInput!]!
indexId: ID
: EntryIndexResponse!
Removes product variant content entries from the Nacelle index. This entry will be correlated to the index if an indexId is provided

productVariantContentUpdate
input: [ProductVariantContentInput!]!
indexId: ID
: EntryIndexResponse!
Updates product variant content entries in the Nacelle index. This entry will be correlated to the index if an indexId is provided

productVariantCreate
input: [ProductVariantInput!]!
indexId: ID
: EntryIndexResponse!
Adds product variant entries to the Nacelle index. This entry will be correlated to the index if an indexId is provided

productVariantDelete
input: [ProductVariantDeleteInput!]!
indexId: ID
: EntryIndexResponse!
Removes product variant entries from the Nacelle index. This entry will be correlated to the index if an indexId is provided

productVariantUpdate
input: [ProductVariantInput!]!
indexId: ID
: EntryIndexResponse!
Updates product variant entries in the Nacelle index. This entry will be correlated to the index if an indexId is provided

Inspect the Ingest API schema using the GraphQL endpoint for more details.