Dotdigital Custom identifiers API

The Custom identifiers API from Dotdigital — 2 operation(s) for custom identifiers.

Operations 3

GET /configuration/v3/customIdentifiers Get all custom identifiers #
POST /configuration/v3/customIdentifiers Creates a custom identifier. #
DELETE /configuration/v3/customIdentifiers/{name} Delete a custom identifier by name

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/dotdigital-custom-identifiers-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

dotdigital-custom-identifiers-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Dotdigital Configuration Service Custom identifiers API
  description: 'Retrieve and update configuration settings for your account. Use this API to

    list, create, and delete custom contact identifiers that can be used to

    uniquely identify contacts across your account.'
  version: 3.0.2
servers:
- url: https://r1-api.dotdigital.com
- url: https://r2-api.dotdigital.com
- url: https://r3-api.dotdigital.com
security:
- basicAuth: []
tags:
- name: Custom identifiers
paths:
  /configuration/v3/customIdentifiers:
    get:
      tags:
      - Custom identifiers
      summary: Get all custom identifiers
      description: Gets all the custom identifiers defined for the account.
      operationId: getCustomIdentifiers
      responses:
        '200':
          description: Custom identifiers retrieved.
          content:
            application/json:
              schema:
                type: array
                items:
                  $ref: '#/components/schemas/customIdentifier'
        '401':
          description: Unauthorized
    post:
      tags:
      - Custom identifiers
      summary: Creates a custom identifier.
      description: Creates a new custom identifier that will be available to identify contacts.
      operationId: createCustomIdentifier
      requestBody:
        description: The custom identifier and its properties.
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/customIdentifierRequest'
        required: true
      responses:
        '201':
          description: Custom identifier created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/customIdentifier'
        '400':
          description: Bad request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorResponse'
              example:
                errorCode: customIdentifiers:nameTooLong
                description: The custom identifier is too long. It must be less than 50 characters.
        '401':
          description: Unauthorized
        '409':
          description: Conflict
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorResponse'
              example:
                errorCode: customIdentifiers:nameAlreadyExists
                description: The custom identifier already exists.
        '412':
          description: Custom identifier limit reached
  /configuration/v3/customIdentifiers/{name}:
    delete:
      tags:
      - Custom identifiers
      summary: Delete a custom identifier by name
      description: Delete a custom identifier by name if it exists.
      parameters:
      - name: name
        in: path
        required: true
        schema:
          type: string
          example: crm-id
      responses:
        '204':
          description: Custom identifier deleted
        '400':
          description: Bad request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorResponse'
              example:
                errorCode: customIdentifiers:inUse
                description: The custom identiefier is in use by another entity.
                details:
                  items:
                  - item: segment:1002
                    description: Custom Identifier is used by segment 'CRM Contacts'
                  - item: program:2569
                  description: Custom Identifier is used by program 'CRM Contacts Sync'
        '401':
          description: Unauthorized
        '404':
          description: Not found
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/errorResponse'
              example:
              - errorCode: customIdentifiers:notExist
                description: The custom identifier does not exist.
components:
  schemas:
    customIdentifier:
      type: object
      properties:
        name:
          type: string
          description: The unique custom identifier name.
          example: crm-id
        created:
          type: string
          description: ISO 8601 UTC timestamp for when the record was created.
          format: date-time
          example: '2024-05-21T12:34:56Z'
        updated:
          type: string
          description: ISO 8601 UTC timestamp for when the record was last updated.
          format: date-time
          example: '2024-05-21T12:34:56Z'
    errorResponse:
      required:
      - description
      - errorCode
      type: object
      properties:
        errorCode:
          type: string
          description: Unique error code
        description:
          type: string
          description: Description of the issue
        details:
          type: array
          items:
            $ref: '#/components/schemas/errorResponse_details'
    errorResponse_details:
      required:
      - description
      - item
      type: object
      properties:
        item:
          type: string
          description: Item the error is associated with, for example, field name, unique identifier for an entity or item in batch
        description:
          type: string
          description: Description of the error
    customIdentifierRequest:
      required:
      - name
      type: object
      properties:
        name:
          maxLength: 50
          minLength: 1
          pattern: (^[-A-Za-z0-9_]{1,50}$)
          type: string
          description: The unique custom identifier name.
          example: crm-id
  securitySchemes:
    basicAuth:
      type: http
      scheme: basic
externalDocs:
  description: Learn more about Dotdigital APIs
  url: https://developer.dotdigital.com
x-samples-languages:
- curl
- csharp
- java
- javascript
- node
- python
- php
- ruby