# Data Ingestion Connector

The Data Ingestion Connector is an API that facilitates connecting Shopify, Contentful, and Sanity to Nacelle's indexing graphql. By making requests to the Connector you can trigger Data Ingestion to index a store's entire catalogue or all the content from the CMS of your choice. The Connector API also provides endpoints used by Nacelle's webhook service for making individual index record updates.

https://connector-v1.dilithiumindex.com/

Space ID and Token

For API requests you will need the Nacelle Space ID and token found in the Nacelle Dashboard.

The x-nacelle-space-token is the Private Token for Data Ingestion.

# Endpoints

# Shopify

Required Headers

  • x-nacelle-space-id
  • x-nacelle-space-token
  • shopify-token
  • shopify-endpoint

# Contentful

Required Headers

  • x-nacelle-space-id
  • x-nacelle-space-token
  • contentful-rest-endpoint

# Sanity

Required Headers

  • x-nacelle-space-id
  • x-nacelle-space-token
  • sanity-project-id
  • sanity-token
  • sanity-dataset

# Reference

# /shopify/index-articles

Indexes all the articles in a Shopify store's blog.

Body JSON Parameters

  • shopifyToken: Shopify Storefront API Token
  • shopifyEndpoint: Shopify graphql endpoint. (Leave out API version)
  • cmsSyncSourceDomain: <your_store>.myshopify.com
  • defaultLocale: Default "en-us"
  • defaultCurrencyCode: Default "USD"
  • limit: Default 10. Number of items to batch request from Shopify>
  • verbose: Boolean to log additional output

# /shopify/index-blogs

Indexes all of a store's blogs.

Body JSON Parameters

  • shopifyToken: Shopify Storefront API Token
  • shopifyEndpoint: Shopify graphql endpoint. (Leave out API version)
  • cmsSyncSourceDomain: <your_store>.myshopify.com
  • defaultLocale: Default "en-us"
  • defaultCurrencyCode: Default "USD"
  • limit: Default 10. Number of items to batch request from Shopify>
  • verbose: Boolean to log additional output

# /shopify/index-pages

Indexes all of a store's pages.

Body JSON Parameters

  • shopifyToken: Shopify Storefront API Token
  • shopifyEndpoint: Shopify graphql endpoint. (Leave out API version)
  • cmsSyncSourceDomain: <your_store>.myshopify.com
  • defaultLocale: Default "en-us"
  • defaultCurrencyCode: Default "USD"
  • limit: Default 10. Number of items to batch request from Shopify>
  • verbose: Boolean to log additional output

# /shopify/index-products

Indexes all the products in a store

Body JSON Parameters

  • shopifyToken: Shopify Storefront API Token
  • shopifyEndpoint: Shopify graphql endpoint. (Leave out API version)
  • pimSyncSourceDomain: <your_store>.myshopify.com
  • defaultLocale: Default "en-us"
  • defaultCurrencyCode: Default "USD"
  • limit: Default 10. Number of items to batch request from Shopify>
  • verbose: Boolean to log additional output

# /shopify/index-product

Indexes a single product in a store

Body JSON Parameters

  • handle: Handle of the product in Shopify
  • shopifyToken: Shopify Storefront API Token
  • shopifyEndpoint: Shopify graphql endpoint. (Leave out API version)
  • pimSyncSourceDomain: <your_store>.myshopify.com
  • defaultLocale: Default "en-us"
  • defaultCurrencyCode: Default "USD"
  • verbose: Boolean to log additional output

# /shopify/delete-product

Removes a single product from index.

Body JSON Parameters

  • handle: Handle of the product in Shopify
  • shopifyToken: Shopify Storefront API Token
  • shopifyEndpoint: Shopify graphql endpoint. (Leave out API version)
  • pimSyncSourceDomain: <your_store>.myshopify.com
  • defaultLocale: Default "en-us"
  • defaultCurrencyCode: Default "USD"
  • verbose: Boolean to log additional output

# /shopify/index-collections

Indexes all the collections in a store

Body JSON Parameters

  • shopifyToken: Shopify Storefront API Token
  • shopifyEndpoint: Shopify graphql endpoint. (Leave out API version)
  • pimSyncSourceDomain: <your_store>.myshopify.com
  • defaultLocale: Default "en-us"
  • defaultCurrencyCode: Default "USD"
  • limit: Default 10. Number of items to batch request from Shopify>
  • verbose: Boolean to log additional output

# /shopify/index-collection

Indexes a single collection in a store

Body JSON Parameters

  • handle: Handle of the collection in Shopify
  • shopifyToken: Shopify Storefront API Token
  • shopifyEndpoint: Shopify graphql endpoint. (Leave out API version)
  • pimSyncSourceDomain: <your_store>.myshopify.com
  • defaultLocale: Default "en-us"
  • defaultCurrencyCode: Default "USD"
  • verbose: Boolean to log additional output

# /shopify/delete-collection

Removes a single collection from index

Body JSON Parameters

  • handle: Handle of the collection in Shopify
  • shopifyToken: Shopify Storefront API Token
  • shopifyEndpoint: Shopify graphql endpoint. (Leave out API version)
  • pimSyncSourceDomain: <your_store>.myshopify.com
  • defaultLocale: Default "en-us"
  • defaultCurrencyCode: Default "USD"
  • verbose: Boolean to log additional output

# /contentful

Indexes all published content from a Contentful space

Body JSON Parameters

  • cmsSyncSourceDomain: <contentful_space_id>.<contentful_environment>.contentful
  • defaultLocale: Default "en-US"
  • defaultCurrencyCode: Default "USD"
  • verbose: Boolean to log additional output

# /contentful/index-entry

Indexes a single entry from Contentful

Body JSON Parameters

  • id: Contentful Entry Id
  • cmsSyncSourceDomain: <contentful_space_id>.<contentful_environment>.contentful
  • defaultLocale: Default "en-US"
  • defaultCurrencyCode: Default "USD"
  • verbose: Boolean to log additional output

# /contentful/remove-entry

Deletes a single entry from Contentful

Body JSON Parameters

  • id: Contentful Entry Id
  • cmsSyncSourceDomain: <contentful_space_id>.<contentful_environment>.contentful
  • defaultLocale: Default "en-US"
  • defaultCurrencyCode: Default "USD"
  • verbose: Boolean to log additional output

# /sanity

Indexes all published content from a Sanity project

Body JSON Parameters

  • cmsSyncSourceDomain: <sanity_project_id>.<sanity_dataset>.sanity
  • defaultLocale: Default "en-US"
  • verbose: Boolean to log additional output

# /sanity/index-entry

Indexes a single entry from Sanity

Body JSON Parameters

  • id: Sanity Entry Id
  • cmsSyncSourceDomain: <sanity_project_id>.<sanity_dataset>.sanity
  • defaultLocale: Default "en-US"
  • verbose: Boolean to log additional output

# /sanity/remove-entry

Deletes a single entry from Sanity

Body JSON Parameters

  • id: Sanity Entry Id
  • cmsSyncSourceDomain: <sanity_project_id>.<sanity_dataset>.sanity
  • defaultLocale: Default "en-US"
  • verbose: Boolean to log additional output