{
  "service": "contentstack_content_management",
  "displayName": "Contentstack Content Management",
  "categories": [
    "Data",
    "Productivity"
  ],
  "authTypes": [
    "api_key"
  ],
  "auth": [
    {
      "type": "api_key",
      "label": "Management Token",
      "placeholder": "CONTENTSTACK_MANAGEMENT_TOKEN",
      "description": "Contentstack Management Token sent with the authorization header. Create or view it under Settings > Tokens > Management Tokens: https://www.contentstack.com/docs/developers/create-tokens/create-a-management-token",
      "extraFields": [
        {
          "key": "stackApiKey",
          "label": "Stack API Key",
          "inputType": "password",
          "required": true,
          "secret": true,
          "placeholder": "CONTENTSTACK_STACK_API_KEY",
          "description": "Contentstack stack API key sent with the api_key header. Find it with the Management Token in your stack under Settings > Tokens > Management Tokens: https://www.contentstack.com/docs/developers/create-tokens/create-a-management-token"
        },
        {
          "key": "branch",
          "label": "Branch UID",
          "inputType": "text",
          "required": false,
          "secret": false,
          "placeholder": "main",
          "description": "Optional Contentstack branch UID sent with the branch header when your stack uses branches."
        }
      ]
    }
  ],
  "homepageUrl": "https://www.contentstack.com/",
  "actions": [
    {
      "id": "contentstack_content_management.create_entry",
      "service": "contentstack_content_management",
      "name": "create_entry",
      "description": "Create one Contentstack entry for a content type.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "contentTypeUid": {
            "type": "string",
            "minLength": 1,
            "description": "The Contentstack content type UID identifying the entry collection."
          },
          "entry": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "The Contentstack entry object."
          },
          "branch": {
            "type": "string",
            "minLength": 1,
            "description": "The optional Contentstack branch UID passed with the branch request header."
          },
          "locale": {
            "type": "string",
            "minLength": 1,
            "description": "The optional Contentstack locale code."
          }
        },
        "additionalProperties": false,
        "required": [
          "contentTypeUid",
          "entry"
        ],
        "description": "Input parameters for creating one Contentstack entry."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "entry": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "The Contentstack entry object."
          },
          "raw": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "The raw Contentstack JSON object."
          }
        },
        "additionalProperties": false,
        "description": "Contentstack entry response."
      }
    },
    {
      "id": "contentstack_content_management.get_content_type",
      "service": "contentstack_content_management",
      "name": "get_content_type",
      "description": "Retrieve one Contentstack content type schema by UID.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "contentTypeUid": {
            "type": "string",
            "minLength": 1,
            "description": "The Contentstack content type UID identifying the entry collection."
          },
          "branch": {
            "type": "string",
            "minLength": 1,
            "description": "The optional Contentstack branch UID passed with the branch request header."
          },
          "includeBranch": {
            "type": "boolean",
            "description": "Whether Contentstack should include the _branch field."
          },
          "includeGlobalFieldSchema": {
            "type": "boolean",
            "description": "Whether Contentstack should include global field schemas in content type responses."
          }
        },
        "additionalProperties": false,
        "required": [
          "contentTypeUid"
        ],
        "description": "Input parameters for retrieving one Contentstack content type through the Content Management API."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "contentType": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "The Contentstack content type object."
          },
          "raw": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "The raw Contentstack JSON object."
          }
        },
        "additionalProperties": false,
        "description": "Contentstack content type response."
      }
    },
    {
      "id": "contentstack_content_management.get_entry",
      "service": "contentstack_content_management",
      "name": "get_entry",
      "description": "Retrieve one Contentstack entry for a content type.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "contentTypeUid": {
            "type": "string",
            "minLength": 1,
            "description": "The Contentstack content type UID identifying the entry collection."
          },
          "entryUid": {
            "type": "string",
            "minLength": 1,
            "description": "The Contentstack entry UID identifying one entry."
          },
          "branch": {
            "type": "string",
            "minLength": 1,
            "description": "The optional Contentstack branch UID passed with the branch request header."
          },
          "locale": {
            "type": "string",
            "minLength": 1,
            "description": "The optional Contentstack locale code."
          },
          "includeBranch": {
            "type": "boolean",
            "description": "Whether Contentstack should include the _branch field."
          }
        },
        "additionalProperties": false,
        "required": [
          "contentTypeUid",
          "entryUid"
        ],
        "description": "Input parameters for retrieving one Contentstack entry."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "entry": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "The Contentstack entry object."
          },
          "raw": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "The raw Contentstack JSON object."
          }
        },
        "additionalProperties": false,
        "description": "Contentstack entry response."
      }
    },
    {
      "id": "contentstack_content_management.list_content_types",
      "service": "contentstack_content_management",
      "name": "list_content_types",
      "description": "List content types available in a Contentstack stack.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "branch": {
            "type": "string",
            "minLength": 1,
            "description": "The optional Contentstack branch UID passed with the branch request header."
          },
          "query": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "A Contentstack query object serialized into the query URL parameter."
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "maximum": 100,
            "description": "The maximum number of items to return. Contentstack returns at most 100 items."
          },
          "skip": {
            "type": "integer",
            "minimum": 0,
            "description": "The number of items to skip for pagination."
          },
          "includeCount": {
            "type": "boolean",
            "description": "Whether Contentstack should include the total item count."
          },
          "includeBranch": {
            "type": "boolean",
            "description": "Whether Contentstack should include the _branch field."
          },
          "includeGlobalFieldSchema": {
            "type": "boolean",
            "description": "Whether Contentstack should include global field schemas in content type responses."
          }
        },
        "additionalProperties": false,
        "description": "Input parameters for listing Contentstack content types through the Content Management API."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "contentTypes": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {},
              "additionalProperties": true,
              "description": "The Contentstack content type object."
            },
            "description": "Contentstack content type objects."
          },
          "count": {
            "anyOf": [
              {
                "type": "integer",
                "description": "The total content type count when included by Contentstack."
              },
              {
                "type": "null"
              }
            ]
          },
          "raw": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "The raw Contentstack JSON object."
          }
        },
        "additionalProperties": false,
        "description": "Contentstack content types response."
      }
    },
    {
      "id": "contentstack_content_management.list_entries",
      "service": "contentstack_content_management",
      "name": "list_entries",
      "description": "List Contentstack entries for a content type.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "contentTypeUid": {
            "type": "string",
            "minLength": 1,
            "description": "The Contentstack content type UID identifying the entry collection."
          },
          "branch": {
            "type": "string",
            "minLength": 1,
            "description": "The optional Contentstack branch UID passed with the branch request header."
          },
          "locale": {
            "type": "string",
            "minLength": 1,
            "description": "The optional Contentstack locale code."
          },
          "query": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "A Contentstack query object serialized into the query URL parameter."
          },
          "limit": {
            "type": "integer",
            "minimum": 1,
            "maximum": 100,
            "description": "The maximum number of items to return. Contentstack returns at most 100 items."
          },
          "skip": {
            "type": "integer",
            "minimum": 0,
            "description": "The number of items to skip for pagination."
          },
          "includeCount": {
            "type": "boolean",
            "description": "Whether Contentstack should include the total item count."
          },
          "includeBranch": {
            "type": "boolean",
            "description": "Whether Contentstack should include the _branch field."
          }
        },
        "additionalProperties": false,
        "required": [
          "contentTypeUid"
        ],
        "description": "Input parameters for listing Contentstack entries of one content type."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "entries": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {},
              "additionalProperties": true,
              "description": "The Contentstack entry object."
            },
            "description": "Contentstack entry objects."
          },
          "count": {
            "anyOf": [
              {
                "type": "integer",
                "description": "The total entry count when included by Contentstack."
              },
              {
                "type": "null"
              }
            ]
          },
          "raw": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "The raw Contentstack JSON object."
          }
        },
        "additionalProperties": false,
        "description": "Contentstack entries response."
      }
    },
    {
      "id": "contentstack_content_management.update_entry",
      "service": "contentstack_content_management",
      "name": "update_entry",
      "description": "Update one Contentstack entry for a content type.",
      "requiredScopes": [],
      "providerPermissions": [],
      "inputSchema": {
        "type": "object",
        "properties": {
          "contentTypeUid": {
            "type": "string",
            "minLength": 1,
            "description": "The Contentstack content type UID identifying the entry collection."
          },
          "entryUid": {
            "type": "string",
            "minLength": 1,
            "description": "The Contentstack entry UID identifying one entry."
          },
          "entry": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "The Contentstack entry object."
          },
          "branch": {
            "type": "string",
            "minLength": 1,
            "description": "The optional Contentstack branch UID passed with the branch request header."
          },
          "locale": {
            "type": "string",
            "minLength": 1,
            "description": "The optional Contentstack locale code."
          }
        },
        "additionalProperties": false,
        "required": [
          "contentTypeUid",
          "entryUid",
          "entry"
        ],
        "description": "Input parameters for updating one Contentstack entry."
      },
      "outputSchema": {
        "type": "object",
        "properties": {
          "entry": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "The Contentstack entry object."
          },
          "raw": {
            "type": "object",
            "properties": {},
            "additionalProperties": true,
            "description": "The raw Contentstack JSON object."
          }
        },
        "additionalProperties": false,
        "description": "Contentstack entry response."
      }
    }
  ]
}
