Ensighten Data Definitions API

CRUD operations with Data Definitions. Data Definitions specific fields Field Required Description Valid Values name Y The name of the definition A name up to 255 characters collection Y The name for a collection of definitions A name up to 255 characters source Y The source of the definition Accepted values are: Manage Mobile Pulse One Attribution Inform Privacy extractor Y Javascript code for extraction Must be a valid Javascript function. e.g. function(){try{return Bootstrapper.data.extract('ec','cookie')}catch(e){return 'error'}} description N A description enabled N Is the definition enabled A boolean value persistence N Indicates the persistence type Defaults to "page" if none provided Accepted values are: instance page session visitor metaDesc N Indicates the comparator to use for mapping the type to value transformation N Javascr

Operations 6

POST /manage/datadefinitions/search Search Data Definitions #
GET /manage/datadefinitions/{id} Get a data definition by id #
DELETE /manage/datadefinitions/{id} Delete a data definition #
PUT /manage/datadefinitions/{id} Update a data definition #
POST /manage/datadefinitions Create a data definition #
PUT /manage/datadefinitions/{id}/{action} Enable / Disable a Data Definition #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/ensighten-data-definitions-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

ensighten-data-definitions-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Ensighten Manage Data Definitions API
  version: 1.0.0
  description: "This is the REST Manage API that can be used by Ensighten Manage customers.\n\n\nThere are currently two ways to authenticate through the Manage API: API Key and Username / Password.\n\n\nAll API requests must be made over HTTPS. Calls made over plain HTTP will fail. You must authenticate for all requests.\n\n\nSupported Entities\n\n- \nSpaces\n\n\n\n\n- \nPublish Paths\n\n\n\n\n- \nDeployments\n\n\n\n\n- \nConditions\n\n\n\n\n- \nData Definitions\n\n\n\n\n- \nEvent Definitions\n\n\n\n\n- \nUsers\n\n\n\n\n- \nRoles\n\n\n\n\n- \nSCIM 2.0\n\n\n\n\n- \nGit\n\n\n\n\n- \nTDN"
  contact:
    name: Ensighten Support
    url: https://help.ensighten.com/hc/en-us
  x-derived-from: API Blueprint published by Ensighten at https://manageexternalapi.docs.apiary.io/
  x-blueprint-last-updated: '2026-07-14T18:41:23.848Z'
servers:
- url: https://manage-api.ensighten.com
  description: Production (from the Apiary blueprint urls.production)
- url: https://private-anon-6a32b48ac3-manageexternalapi.apiary-mock.com
  description: Apiary anonymous mock server (example payloads only)
security:
- ApiKeyAuth: []
- BearerAuth: []
tags:
- name: Data Definitions
  description: "CRUD operations with Data Definitions.\n\n\nData Definitions specific fields\n\n\n\nField\nRequired\nDescription\nValid Values\n\n\n\n\nname\nY\nThe name of the definition\nA name up to 255 characters\n\n\ncollection\nY\nThe name for a collection of definitions\nA name up to 255 characters\n\n\nsource\nY\nThe source of the definition\nAccepted values are: \n Manage \n Mobile \n Pulse \n One \n Attribution \n Inform \n Privacy\n\n\nextractor\nY\nJavascript code for extraction\nMust be a valid Javascript function. e.g. function(){try{return Bootstrapper.data.extract('ec','cookie')}catch(e){return 'error'}}\n\n\ndescription\nN\nA description\n\n\n\nenabled\nN\nIs the definition enabled\nA boolean value\n\n\npersistence\nN\nIndicates the persistence type\nDefaults to \"page\" if none provided \n Accepted values are: \n instance \n page \n session \n visitor\n\n\nmetaDesc\nN\nIndicates the comparator to use for mapping the type to value\n\n\n\ntransformation\nN\nJavascr"
paths:
  /manage/datadefinitions/search:
    post:
      operationId: postManageDatadefinitionsSearch
      summary: Search Data Definitions
      tags:
      - Data Definitions
      security:
      - ApiKeyAuth: []
      - BearerAuth: []
      description: A search with no matching records returns 404 Not Found instead of an empty array (even when the account has no data definitions yet). Treat this 404 as an empty result set.
      requestBody:
        required: true
        content:
          application/json:
            example:
              fields: id, name, source, collection, enabled, criteriaIds, conditionIds, spaceIds, creationDate, labels
              sort: +name
              filters:
                collection:
                - PixelCollection
                criteriaId:
                - 444
                labels:
                  Lifecycle:
                  - prod
                  - stage
      responses:
        '200':
          description: OK
          content:
            application/json:
              example:
              - id: 273
                name: vl
                collection: PixelCollection
                source: Pulse
                enabled: false
                extractor: function(){try{return Bootstrapper.data.extract('vl','cookie')}catch(e){return 'error'}}
                criteriaIds:
                - 100
                - 101
                conditionIds:
                - 444
                spaceIds: []
                creationDate: '2014-02-12T03:53:57.000Z'
                fromType: 1
                fromName: cookieName
                fromSource: 1
                labels:
                - key: Lifecycle
                  value: prod
        '404':
          description: Not Found
          content:
            application/json:
              example:
                code: 404
                message: Not Found
                description: No data definitions could be found given the passed criteria.
  /manage/datadefinitions/{id}:
    get:
      operationId: getManageDatadefinitionsId
      summary: Get a data definition by id
      tags:
      - Data Definitions
      security:
      - ApiKeyAuth: []
      - BearerAuth: []
      parameters:
      - name: id
        in: path
        required: true
        description: Numeric id of the data definition id to perform action with.
        schema:
          type: number
        example: '1'
      responses:
        '200':
          description: OK
          content:
            application/json:
              example:
                id: 273
                name: vl
                collection: PixelCollection
                source: Pulse
                description: ''
                enabled: false
                persistence: page
                metaDesc: {}
                extractor: function(){try{return Bootstrapper.data.extract('vl','cookie')}catch(e){return 'error'}}
                transformation: ''
                trigger: Bootstrapper.data.bottomOfBodyTrigger
                criteriaIds:
                - 100
                - 101
                conditionIds: []
                spaceIds: []
                creationDate: '2014-02-12T03:53:57.000Z'
                fromType: 1
                fromName: cookieName
                fromSource: 1
                labels:
                - key: Lifecycle
                  value: prod
        '400':
          description: Bad Request
          content:
            application/json:
              example:
                code: 400
                message: Bad Request
                description: The data definition id is invalid
        '404':
          description: Not Found
          content:
            application/json:
              example:
                code: 404
                message: Not Found
                description: The data definitions could not be found.
    delete:
      operationId: deleteManageDatadefinitionsId
      summary: Delete a data definition
      tags:
      - Data Definitions
      security:
      - ApiKeyAuth: []
      - BearerAuth: []
      parameters:
      - name: id
        in: path
        required: true
        description: Numeric id of the data definition id to perform action with.
        schema:
          type: number
        example: '1'
      responses:
        '204':
          description: No Content
        '400':
          description: Bad Request
          content:
            application/json:
              example:
                code: 400
                message: Bad Request
                description: The data definition id is invalid
        '403':
          description: Forbidden
          content:
            application/json:
              example:
                code: 403
                message: Forbidden
                description: The requester does not have permission to make this request.
    put:
      operationId: putManageDatadefinitionsId
      summary: Update a data definition
      tags:
      - Data Definitions
      security:
      - ApiKeyAuth: []
      - BearerAuth: []
      description: 'See the documentation above on Data Definitions specific fields for more information on what to provide.

        Updating a Data Definition will not affect its state.'
      parameters:
      - name: id
        in: path
        required: true
        description: Numeric id of the data definition id to perform action with.
        schema:
          type: number
        example: '1'
      requestBody:
        required: true
        content:
          application/json:
            example:
              id: 123
              name: vl2
              collection: PixelCollection
              source: Pulse
              persistence: session
              extractor: function(){try{return Bootstrapper.data.extract('vl2','cookie')}catch(e){return 'error'}}
              criteriaIds:
              - 100
              - 101
              fromType: 1
              fromName: cookieName
              fromSource: 1
      responses:
        '204':
          description: No Content
        '400':
          description: Bad Request
          content:
            application/json:
              example:
                code: 400
                message: Bad Request
                description: The data definition id is invalid
        '403':
          description: Forbidden
          content:
            application/json:
              example:
                code: 403
                message: Forbidden
                description: The requester does not have permission to make this request.
  /manage/datadefinitions:
    post:
      operationId: postManageDatadefinitions
      summary: Create a data definition
      tags:
      - Data Definitions
      security:
      - ApiKeyAuth: []
      - BearerAuth: []
      requestBody:
        required: true
        content:
          application/json:
            example:
              name: vl2
              collection: PixelCollection
              source: Pulse
              persistence: session
              extractor: function(){try{return Bootstrapper.data.extract('vl2','cookie')}catch(e){return 'error'}}
              criteriaIds:
              - 100
              - 101
              fromType: 1
              fromName: cookieName
              fromSource: 1
              labels:
              - key: Lifecycle
                value: prod
      responses:
        '200':
          description: OK
          content:
            application/json:
              example:
                id: 273
                name: vl2
                collection: PixelCollection
                source: Pulse
                description: ''
                enabled: false
                persistence: session
                metaDesc: {}
                extractor: function(){try{return Bootstrapper.data.extract('vl2','cookie')}catch(e){return 'error'}}
                transformation: ''
                trigger: Bootstrapper.data.bottomOfBodyTrigger
                criteriaIds:
                - 100
                - 101
                conditionIds: []
                spaceIds: []
                labels:
                - key: Lifecycle
                  value: prod
                creationDate: '2014-02-12T03:53:57.000Z'
        '403':
          description: Forbidden
          content:
            application/json:
              example:
                code: 403
                message: Forbidden
                description: The requester does not have permission to make this request.
  /manage/datadefinitions/{id}/{action}:
    put:
      operationId: putManageDatadefinitionsIdAction
      summary: Enable / Disable a Data Definition
      tags:
      - Data Definitions
      security:
      - ApiKeyAuth: []
      - BearerAuth: []
      parameters:
      - name: id
        in: path
        required: true
        description: Numeric id of the data definition to perform action with.
        schema:
          type: number
        example: '273'
      - name: action
        in: path
        required: true
        description: String value to indicate if its an enable or a disable
        schema:
          type: string
        example: enable
      responses:
        '204':
          description: No Content
        '400':
          description: Bad Request
          content:
            application/json:
              example:
                code: 400
                message: Bad Request
                description: The data definition id or action is invalid
        '403':
          description: Forbidden
          content:
            application/json:
              example:
                code: 403
                message: Forbidden
                description: The requester does not have permission to make this request.
components:
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: X-API-Key
      description: API Key created in the Admin > API Keys page of Manage. Keys are prefixed 'ens_'. Not accepted on /auth/token.
    BearerAuth:
      type: http
      scheme: bearer
      description: Access token obtained from POST /auth/token (OAuth 2.0 Resource Owner Password Credentials flow).
    OAuth2Password:
      type: oauth2
      flows:
        password:
          tokenUrl: https://manage-api.ensighten.com/auth/token
          scopes: {}
      description: Resource Owner Password Credentials flow. No OAuth scopes are documented; authorization is governed by Manage Roles assigned to the user or API Key.