{"openapi":"3.0.3","info":{"title":"Dotdigital Configuration Service","description":"Retrieve and update configuration settings for your account. Use this API to\nlist, create, and delete custom contact identifiers that can be used to\nuniquely identify contacts across your account.","version":"3.0.2"},"externalDocs":{"description":"Learn more about Dotdigital APIs","url":"https://developer.dotdigital.com"},"servers":[{"url":"https://r1-api.dotdigital.com"},{"url":"https://r2-api.dotdigital.com"},{"url":"https://r3-api.dotdigital.com"}],"security":[{"basicAuth":[]}],"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":{"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"}}},"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"}}}},"securitySchemes":{"basicAuth":{"type":"http","scheme":"basic"}}},"x-samples-languages":["curl","csharp","java","javascript","node","python","php","ruby"]}